741

Sublime Text 2で特定のファイル拡張子のデフォルトのファイルタイプを設定するにはどうすればよいですか?具体的には、*。cfgファイルをデフォルトでIni構文を強調表示したいのですが、このカスタム設定を作成する方法がわからないようです。

4

4 に答える 4

1620

Sublime Text 2の現在のバージョン(ビルド:2139)では、メニューバーのオプションを使用して、特定のファイル拡張子のすべてのファイルの構文を設定できます。デフォルトを設定する拡張子を持つファイルを開き、次のメニューをナビゲートしますView -> Syntax -> Open all with current extension as... ->[your syntax choice]

更新された2012-06-28: Sublime Text 2の最近のビルド(少なくともビルド2181以降)では、ウィンドウの右下隅にある現在の構文タイプをクリックして構文を設定できます。Open all with current extension as...これにより、メニューの上部にオプションが付いた構文選択メニューが開きます。

2016年4月19日更新:現時点では、これはSublimeText3でも機能します。

于 2011-11-04T18:33:46.967 に答える
150

に移動し、拡張機能を追加する構文にちなんで名付けられPackages/Userたファイルを作成(または編集)してから、次のように記述します。.sublime-settingsIni.sublime-settings

{
    "extensions":["cfg"]
}

そして、SublimeTextを再起動します

于 2011-09-28T19:56:41.777 に答える
21

ST2には、それを実行するDefaultFileTypeと呼ばれるインストール可能なパッケージがあります。

詳細はこちら

于 2012-01-09T01:26:59.273 に答える
5

ファイルの内容に基づいて構文の強調表示をオンにすることができます。

たとえば、私のMakefileは、拡張子に関係なく、最初の行は次のようになります。

#-*-Makefile-*- vim:syntax=make

これは、vimなどの他のエディターの一般的な方法です。

ただし、これを機能させるには、ファイルを変更する必要があり Makefile.tmLanguageます。

  1. 次の場所でファイル(UbuntuのSublime Text 3用)を見つけます。

    /opt/sublime_text/Packages/Makefile.sublime-package
    

これは実際にはzipファイルであることに注意してください。それをコピーし、最後に.zipで名前を変更して、そこからMakefile.tmLanguageファイルを抽出します。

  1. Makefile.tmLanguage「fileTypes」セクションの後に「firstLineMatch」キーと文字列を追加して、新しいものを編集します。以下の例では、最後の2行は新しいものです(自分で追加する必要があります)。この<string>セクションには正規表現が含まれており、最初の行に一致するファイルの構文を強調表示できます。-*-Makefile-*-この式は、「」と「」の2つのパターンを認識し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>
    
  2. 変更Makefile.tmLanguageしたものをユーザー設定ディレクトリに配置します。

    ~/.config/sublime-text-3/Packages/User/Makefile.tmLanguage
    

最初の行のルールに一致するすべてのファイルは、開いたときに構文の強調表示をオンにする必要があります。

于 2015-11-24T02:41:41.187 に答える