95

Sublime 2/3 の言語の構文強調表示を変更/追加したい。

たとえばthis、JavaScript で色付けされたキーワードが必要です。

どうやってやるの?

に環境設定 JavaScript ファイルがあることは知っていますがC:\Program Files\Sublime Text 3\Packages、何を変更すればよいか、またはこのフォルダーのどこかに新しい JavaScript 環境設定ファイルを作成する必要があるかどうかがわかりません%APPDATA%\Sublime Text 3

4

5 に答える 5

95

構文の強調表示は、使用するテーマによって制御され、 からアクセスできますPreferences -> Color Scheme.tmLanguageテーマは、言語のディレクトリ/パッケージ内のファイルに含まれる一連の正規表現によって定義されるスコープを使用して、さまざまなキーワード、関数、変数などを強調表示します。たとえば、ファイルはスコープとをキーワードにJavaScript.tmLanguage割り当てます。Sublime Text 3 はzip ファイル形式を使用してすべてのデフォルト設定を保存しているため、個々のファイルを編集するのは簡単ではありません。source.jsvariable.language.jsthis.sublime-package

残念ながら、すべてのテーマにすべてのスコープが含まれているわけではないため、見栄えが良く、探しているハイライトが得られるテーマを見つけるには、さまざまなテーマを試してみる必要があります。Sublime Text には多数のテーマが含まれており、 Package Controlからさらに多くのテーマを利用できます。まだインストールしていない場合は、インストールすることを強くお勧めします。ST3 の指示に従ってください。

たまたま、Neon Color SchemePackage Control から入手できる を開発しました。ぜひご覧ください。私の主な目標は、幅広い言語を可能な限り見栄えよくすること以外に、標準テーマに含まれているよりもはるかに多くの、できるだけ多くの異なるスコープを特定することでした。JavaScript 言語の定義は Python ほど完全ではありませんが、たとえば、や などNeonのデフォルトよりもはるかに多様性があります。MonokaiSolarized

ネオン テーマで強調表示された jQuery

Better JavaScriptSublime に同梱されているものではなく、このイメージに@int3h の言語定義を使用したことに注意してください。パッケージコントロールからインストールできます。

アップデート

最近、別の JavaScript 代替言語定義を発見しました - JavaScriptNext - ES6 Syntax. ベース JavaScript や Better JavaScript よりも多くのスコープがあります。同じコードで次のようになります。

JavaScript次へ

また、私が最初にこの回答を書いたので、@skuroda はPackageResourceViewerPackage Control 経由でリリースしました。パッケージの一部または全体をシームレスに表示、編集、および/または抽出でき.sublime-packageます。そのため、必要に応じて、Sublime に含まれている配色を直接編集できます。

別の更新

Githubのほぼすべてのデフォルト パッケージのリリースに伴い、変更が急速かつ猛烈に行われています。古い JS 構文は、JavaScript Next ES6 Syntax の最良の部分を含むように完全に書き直されており、可能な限り完全に ES6 と互換性があります。コーナーケースとエッジケースをカバーし、一貫性を改善し、全体的に改善するために、他にも多くの変更が加えられました。新しい構文は、(現時点では) 最新の開発ビルド3111 に含まれています。

現在のベータ ビルド3103 で新しい構文を使用する場合は、Github リポジトリをどこかに複製し、JavaScript(または必要な言語を)PackagesディレクトリにリンクしますPreferences -> Browse Packages...。次に、git pull元のレポ ディレクトリで時々変更を更新するだけで、最新かつ最高のものを楽しむことができます。.sublime-syntaxリポジトリは古い形式ではなく新しい形式を使用する.tmLanguageため、3084 より前の ST3 ビルドまたは ST2 では機能しないことに注意してください (いずれの場合も、最新のベータ版または開発版ビルドにアップグレードする必要があります)。

現在、新しい JS 構文のすべての新しいスコープを処理するために Neon Color Scheme を微調整していますが、ほとんどは既にカバーされているはずです。

于 2013-08-06T03:30:13.240 に答える
17

Package Control を介してインストールされたPackageResourceViewerプラグインを使用します ( MattDMoで言及されているように)。これにより、圧縮されたリソースを Sublime Text で開いてファイルを保存するだけで上書きできます。編集したリソースのみを %APPDATA%/Roaming/Sublime Text 3/Packages/ または ~/.config/sublime-text-3/Packages/ に自動的に保存します。

op に固有で、プラグインがインストールされたら、PackageResourceViewer: Open Resourceコマンドを実行します。次に、 を選択JavaScriptしますJavaScript.tmLanguage。これにより、エディターで xml ファイルが開きます。任意の言語定義を編集して、ファイルを保存できます。これにより、JavaScript.tmLanguage ファイルのオーバーライド コピーがユーザー ディレクトリに書き込まれます。

同じ方法を使用して、システム内の任意の言語の言語定義を編集できます。

于 2014-02-04T03:46:44.683 に答える