Xcode の Fonts & Colors その2
これの続き
Xcode の Fonts & Colors の設定画面にプリインストールされているテーマファイルは plist形式の .xccolortheme
ファイルで、以下の場所に内蔵されている。
/Applications/Xcode.app/Contents/OtherFrameworks/XcodeEdit.framework/Resources/<NAME>.xccolortheme
ここには Default, Presentation Large, Print 以外の以下ものが入っている。
- Bare.xccolortheme
- Basic.xccolortheme
- Dusk.xccolortheme
- Low Key.xccolortheme
- Midnight.xccolortheme
- Presentation.xccolortheme
- Spartan.xccolortheme
- Sunset.xccolortheme
また、プリインストールの設定を編集か複製をすると plist形式の .dvtcolortheme
ファイルが以下に作成される。
~/Library/Developer/Xcode/UserData/FontAndColorThemes/<NAME>.dvtcolortheme
.xccolortheme
ファイルと .dvtcolortheme
はどちらも plist形式だが中身は異なっている。
xccolortheme
例えば Basic.xccolortheme
の中身は以下
Colors と Fonts の中でそれぞれ色とフォントが指定されている。
ここには全ての設定は記述されていない。例えば Basic.xccolortheme の場合、色に関しては Background
と InsertionPoint
のみ。フォントに関しては xcode.syntax.plain
用のフォントのみの指定がされている。
指定の無いものはデフォルト設定から引き継がれるものと思われる。
xcode.syntax.xxxx
というキーで syntax のどの箇所にどの色とフォントを使用するかの指定が行われている。syntax 内にどのような区分けが存在するかは
/Applications/Xcode.app/Contents/OtherFrameworks/XcodeEdit.framework/Resources/<NAME>.xclangspec
というファイルで定義されている。
Xcode 6.3 の時点では以下の xlangspec が内蔵されている。
Ada, ARMAsm, BaseSupport, C, C++, csh, CSS, DTrace, Dylan, Fortran, GLSL, html, IntelAsm, Interfacer, Jam, Java, JavaScript, llvm, Make, man, NQC, ObjectiveC, ObjectiveC++, OpenCL, Pascal, Perl, PHP, plist, PPCAsm, Python, Rez, Ruby, sh, xcconfig, xclangspec, xcsynspec, xctxtmacro, XML
Swift が入っていないけど Swift はまた別の場所に定義ファイルがあるんだろうか。
dvtcolortheme
Basic の設定を編集すると作られる .dvtcolortheme
の中身は以下
以下のキーで設定可能な色とフォントが全て指定されている。
*エディタの背景色は DVTSourceTextBackground というキーで、法則的には BackgroundColor となるのが正しいがこの一箇所のみ例外として Color が付いていない。
Colors | Fonts |
---|---|
DVTConsoleDebuggerXXXXColor | DVTConsoleDebuggerXXXXFont |
DVTConsoleExectuableXXXXColor | DVTConsoleExectuableXXXXFont |
DVTSourceTextXXXXColor | DVTSourceTextXXXXFont |
DVTSourceTextSyntaxColors | DVTSourceTextSyntaxFonts |
DVTSourceTextSyntaxColors
DVTSourceTextSyntaxFonts
キーの中は辞書になっていて、xcode.syntax.xxxx
で該当の箇所への色とフォントの指定を行っている。
xcsynspec
Built-in Syntax Types.xcsynspec
というのが Xcode に内蔵されている。場所は以下
/Applications/Xcode.app/Contents/OtherFrameworks/XcodeEdit.framework/Resources/Built-in Syntax Types.xcsynspec
このファイルには syntax の identifier とそのデフォルト色、項目が Xcode の設定画面に表示されるか、Xcode の設定画面での表示名、Project Builder (旧Xcode) での UserDefaults のキー名、フォント指定可能か、など内部のいろいろな設定についての記述がある。