万年素人からHackerへの道

万年素人がHackerになれるまで殴り書きするぜ。

  • ・資産運用おすすめ
    10万円は1000円くらい利益
    • ・寄付お願いします
      YENTEN:YYzNPzdsZWqr5THWAdMrKDj7GT8ietDc2W
      BitZenny:ZfpUbVya8MWQkjjGJMjA7P9pPkqaLnwPWH
      c0ban:8KG95GXdEquNpPW8xJAJf7nn5kbimQ5wj1

    .clang-formatの作り方

    github.com このXcodeのコードフォーマッタの使い方だが、 Edit -> Clang Format -> File

    をした時に呼ばれるのは、.clang-formatのファイルだ。

    プロジェクトのトップに.clang-format を配置しておくこと。

    clang-formatのツールが有るといいので、

    brew install clang-format

    にてインストールする。

    その後で、

    clang-format -dump-config -style=Google > .clang-format

    とやれば、.clang-formatという名前のファイルがカレントディレクトリにできる。 今回は-style=GoogleとしたのでGoogleの規約がベース。

    そのファイルをベースに編集する。 できあがったら、プロジェクトのトップに配置する。

    ちなみに、~/.clang-formatに置くこともできるが、 おそらくプロジェクト内ではなく、全体での基本のフォーマットになると思う。

    コメントアウトPythonと同様に#で書く。

    namespaceのインデントがGoogleの規約にないのでそれを修正した。

    # NamespaceIndentation: None
    NamespaceIndentation: All

    ※AllにしないでInnnerだと、一番内側のだけなる模様。

    また、Googleの規約では、インデントは2なので4にした。

    # IndentWidth:     2
    IndentWidth:     4

    多分ここ見るのが一番いい。

    algo13.net

    ※NIは不要とあるので、NI_AllではなくAllにすることに注意。入れるとエラーになる。

    おそらく、ベースは別の規約で差分だけ適用したいときは このように書く。

    BasedOnStyle: LLVM
    IndentWidth: 8
    UseTab: Always
    BreakBeforeBraces: Linux
    AllowShortIfStatementsOnASingleLine: false
    IndentCaseLabels: false