質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%

Q&A

解決済

1回答

981閲覧

Visual Studio Code での構文の設定

gomatan1258

総合スコア67

0グッド

0クリップ

投稿2018/09/16 04:41

編集2018/09/16 05:31

調べても分からないことがあるので教えてください。
Visual Studio Code にてパラメーターの色をどちらも赤色にしたいですが、片方しか赤になりません。
どちらも赤にしたいです。

イメージ説明

イメージ説明

この関数内のaとbも赤にしたいです。よろしくお願い致します。

コチラはユーザー設定です。
イメージ説明

{ "editor.tokenColorCustomizations": { "textMateRules":[ { "scope": [ "variable.parameter" ], "settings": { "foreground": "#FF0000", } } ] } }

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

次のような感じで大丈夫でしょうか?

正直なところ、vscode がどの程度まで構文解析を行っているのか理解していません。より詳細に制御したい場合は、実装部分や[inspect TM scopes] コマンドを参照してもらえればうれしいです。

イメージ説明
(コードの書き方がひどいですが とりあえずなので無視してください

"editor.tokenColorCustomizations": { "textMateRules": [ { "name": "variable custom", "scope": [ "variable.parameter", "variable.other.readwrite", ], "settings": { "foreground": "#FF0000" } }, { "name": "aaa", "scope": [ "variable.other.constant", ], "settings": { "foreground": "#0066ff" } } ] },

投稿2018/09/19 09:55

編集2018/09/19 09:57
EbXpJ6bp

総合スコア259

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

EbXpJ6bp

2018/09/20 06:13 編集

.tmLanguage は https://macromates.com/manual/en/language_grammars の書き方に沿っています。今回の場合は`variable.`のものを参照すればいいかと思います。 (汎用性確保のために(?)xmlで書かれていますが、キーの意味は変わりないようです。生成後は https://github.com/Microsoft/vscode/blob/master/extensions/javascript/syntaxes/JavaScript.tmLanguage.json こちらになります。) コマンドの方は、任意の .js ファイルを開いた状態で、コマンドパレット(F1キー等から開けます)内で入力してください。 https://code.visualstudio.com/assets/docs/extensions/themes-snippets-colorizers/inspect-scopes.png のように表示されるはずです。(その他参考: https://code.visualstudio.com/docs/extensions/themes-snippets-colorizers#_textmate-theme-rules )
gomatan1258

2018/09/20 11:23

返信していただいて、ありがとうございます。 大変恐れ入ります。生成後とは何を生成するんですか?コマンドパレットはjsファイルのコードをクリックした後、F1キーで開けました。それからhttps://github.com/Microsoft/vscode/blob/master/extensions/javascript/syntaxes/JavaScript.tmLanguage.json のコードはどこに貼るのでしょうか? あと当方のvsCodeは日本語になっていますが、英語にしたほうがいいでしょうか? よくわからず設定のところで上記のjsonを貼ったのですが、https://code.visualstudio.com/assets/docs/extensions/themes-snippets-colorizers/inspect-scopes.png このようになりませんでした。頑張りますので教えてください。申し訳ありません。
EbXpJ6bp

2018/09/20 18:11 編集

補足コメントに書いたURL先のドキュメントを読んでいただければ、すべて書いてあります。まずはそちらを読んでください。そして、誤解されている箇所が多いので一部補足します。 --- .tmLanguage: (今回の場合) このファイルはソースコード内で、正規表現に一致したサブセットに名前を割り当てます。つまりvscodeがjavascriptの文法を解析する部分です。 .tmLanguage.json: (今回の場合) ts向けに書かれているものをjsにしなおしているだけです。 editor.tokenColorCustomizations 設定: 割り当てられた名前を基に配色をsetting.jsonから指定するものです。 英語か日本語か : 関係ありません
gomatan1258

2018/09/22 03:20

返信しただいて、ありがとうございます。なかなか理解できず申し訳ありません。 //補足コメントに書いたURL先のドキュメント とはまずどのURLのドキュメントかわかりません。 あとコマンドパレットでinspect TM scopesしたところ、やっとhttps://code.visualstudio.com/assets/docs/extensions/themes-snippets-colorizers/inspect-scopes.png これが出力されました。 そして普通の変数にinspect TM scopesをあてて見たところ、 variable.other.readwrite.js meta.block.js meta.block.js meta.function.js meta.block.js meta.function.expression.js source.js と出ていて、 関数の中のパラメーター変数にあてると、 variable.other.readwrite.js meta.block.js meta.block.js meta.function.js meta.block.js meta.function.expression.js source.js こう出ました。この設定云々が変更できるということなのでしょうか?全く同じで色が分けられませんでした。 あと.tmLanguageというファイルをjsがある同じ階層のフォルダに入れるで間違いないですか?
EbXpJ6bp

2018/09/22 05:04 編集

https://macromates.com/manual/en/language_grammars https://code.visualstudio.com/docs/extensions/themes-snippets-colorizers#_textmate-theme-rules こちらのurlのことです。 --- >全く同じで色が分けられませんでした。 質問文に貼ってある画像内のソースコードでは再現できませんでした。 --- .tmLanguageに沿ってvscodeがjsを解析し、名前を割り当てます。これはビルトイン拡張機能に含まれているので、何かフォルダに入れる必要はありません。今回これを参照する必要があるのは、vscodeがどこまで構文を解析しているかを知る必要があるためです。ここで解析されない構文に関しては、テーマを変更することができません。 --- [Inspect TM scopes] では実際に書かれている内容のみ、名前を知ることができます。今回私はこれを使用して、一般的な変数にvscodeが割り当てる名前を確認し回答しました。なのでより詳細に制御したい場合は https://github.com/Microsoft/TypeScript-TmLanguage/blob/master/TypeScriptReact.tmLanguage を参照してくださいと回答しています。 --- テーマ系をいじるには、最低限の基礎知識が必要です。基礎知識をすべて教えるのは、有志で行いたい範囲を超えます。そして、私もすべて理解しているわけではないので、url先のドキュメントを参照するか、実際にテーマ系の拡張機能を作っている方に、残りはお尋ねください。
gomatan1258

2018/09/22 10:10

ご丁重なご回答と、。長くお付き合いしていただきありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問