LoginSignup
1
2

More than 3 years have passed since last update.

VisualStudioCode(vscode)のDefault Dark+テーマでPythonのユーザ関数呼び出しをハイライト表示する

Last updated at Posted at 2020-09-25

はじめに

VisualStudioCode(1.49.2)のデフォルトテーマ(Default Dark+)でPythonプログラム(*.py)のユーザ関数呼び出し時の関数名、引数名がハイライト表示されなかったため、「settings.json」に設定を追記する事で、表示可能としました。

動作イメージ

設定の追記前

ユーザ関数の呼び出し時の名前(例:print_debug)と引数がハイライト表示されません。
20200925.png

設定の追記後

ハイライト表示されます。
20200925_2.png

設定の追記方法

  1. VisualStudioCodeのメニュー「File」→「Preferences」→「Settings」を開く
  2. ツリーメニュー「Workbench」→「Appearance」を開き、項目「Color Customizations」の「Edit in settings.json」を開く 20200925_3.png
  3. 開かれた「settings.json」に下記コードを追加します
settings.json
    "editor.tokenColorCustomizations": {
        "textMateRules": [
            {
                "scope": [
                    "meta.function-call.python",
                ],
                "settings": {
                    "foreground": "#dcdcaa"
                }
            },{
                "scope": [
                    "meta.function-call.arguments.python",
                ],
                "settings": {
                    "foreground": "#9cdcfe"
                }
            },{
                "scope": [
                    "punctuation.definition.list.begin.python",
                    "punctuation.definition.list.end.python"
                ],
                "settings": {
                    "foreground": "#fff"
                }
            }
        ]
    }

4.「settings.json」上書き保存して、Pythonプログラムの表示を確認します。「settings.json」に既存の設定が書き込まれている場合は、設定がコンフリクト(競合)しないように注意します。

設定更新後もハイライト表示されない場合は、下記ポイントを確認します。
- 「settings.json」の追記誤り。JSON形式になっているか。既存の設定と競合していないか。
- 「Color Customizations」の「settings.json」を編集しているか。
- Pythonプログラムの拡張子が *.py になっているか。
- 拡張(Extensions)機能と競合していないか。

ハイライト対象の変更

ハイライト表示する対象は "scope" で指定しています。
この "scope" に指定する値を変更する事で、ハイライト対象も変更されます。

  1. "scope" に指定する値の調査
    コマンドパレット(Win:Ctrl+Shift+P, Mac:⌘ + Shift + P)を開き、「Developer: Inspect Editor Tokens and Scopes」を実行する。 20200925_4.png
  2. エディタのカーソルがあるテキストにミニウィンドウが表示され、ウィンドウ中「textmate scopes」に表示されている値を、「settings.json」の "scope" に指定します。 20200925_5.png
1
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2