Sublime Text 2で特定のファイル拡張子のデフォルトのファイルタイプを設定する方法を教えてください。具体的には、*。cfgファイルにデフォルトでIni構文の強調表示を設定したいのですが、このカスタム設定を作成する方法を理解できないようです。
現在のバージョンのSublime Text 2(Build:2139)では、メニューバーのオプションを使って、特定のファイル拡張子のすべてのファイルに構文を設定できます。デフォルトを設定したい拡張子を持つファイルを開き、次のメニューに移動します:View -> Syntax -> Open all with current extension as... ->[your syntax choice]
。
2012年6月28日更新: / Sublime Text 2の最近のビルド(少なくともBuild 2181以降)では、ウィンドウの右下隅にある現在の構文タイプをクリックして構文を設定できます。これは、メニューの上部にOpen all with current extension as...
へのオプションで構文選択メニューを開きます。
更新2016-04-19: 現在、これはSublime Text 3でも機能します。
ST2では、あなたがインストールできるDefault FileTypeと呼ばれるパッケージがあります。 https://github.com/spadgos/sublime-DefaultFileType の詳細情報。
ファイルの内容に基づいて構文の強調表示をオンにすることができます。
たとえば、私のMakefileの拡張子に関係なく、最初の行は次のようになります。
#-*-Makefile-*- vim:syntax=make
これはvimのような他の編集者にとっての典型的なやり方です。
しかし、これが機能するためにはMakefile.tmLanguage
ファイルを修正する必要があります。
次の場所にあるファイルを見つけます(UbuntuのSublime Text 3用)。
/opt/sublime_text/Packages/Makefile.sublime-package
これは実際にはZipファイルです。それをコピーし、最後に.Zipで名前を変更して、そこからMakefile.tmLanguageファイルを抽出します。
"fileTypes"セクションの後に "firstLineMatch"キーと文字列を追加して、新しいMakefile.tmLanguage
を編集します。以下の例では、最後の2行は新しいものです(あなたが追加する必要があります)。 <string>
セクションは正規表現を保持します。これにより、最初の行に一致するファイルの構文の強調表示が有効になります。この式は2つのパターンを認識します: "-*-Makefile-*-
"と "vim:syntax=make
"です。
...
<key>fileTypes</key>
<array>
<string>GNUmakefile</string>
<string>makefile</string>
<string>Makefile</string>
<string>OCamlMakefile</string>
<string>make</string>
</array>
<key>firstLineMatch</key>
<string>^#\s*-\*-Makefile-\*-|^#.*\s*vim:syntax=make</string>
変更したMakefile.tmLanguage
をユーザー設定ディレクトリに配置します。
~/.config/sublime-text-3/Packages/User/Makefile.tmLanguage
最初の行の規則に一致するすべてのファイルは、開いたときに構文の強調表示をオンにするはずです。