[ ]
VS Code のマークダウン ファイル内で構文の強調表示を選択したいと考えています。
[ ]
次を使用してターゲットを設定できますregex
: (?<=\s)\]|\[(?=\s)
. ただし[ ]
、見出しの一部である場合は一致しません。
最小限の例として、package.json
次のものがあります。
"contributes": {
"grammars": [
{
"scopeName": "markdown.todo",
"path": "./syntaxes/todo.markdown.json",
"injectTo": ["text.html.markdown"]
}
]
}
次に、todo.markdown.json
私は持っています:
{
"scopeName": "markdown.todo",
"injectionSelector": "L:text.html.markdown",
"patterns": [
{ "include": "#item-todo" }
],
"repository": {
"item-todo": {
"name": "item.todo",
"match": "(?<=\\s)\\]|\\[(?=\\s)"
}
}
}
最後に、VS Codesettings.json
で次を使用して色を適用します。
"editor.tokenColorCustomizations": {
"textMateRules": [
{
"scope": "item.todo",
"settings": {
"foreground": "#FF0000"
}
}
]
}
以下で選択されていることがわかりますが[ ]
、見出し内にある場合はそうではありません。
トークンとスコープを調べると、いくつかのtextmate scopes
. markup.heading
これが関連しているかどうかはわかりませんが、VS Code はスコープに基づいてマークダウンの見出しを強調表示しているようです。ただし、配列markup.heading
には存在しません。textmate scopes
"injectionSelector": "L:heading.1.markdown"
and/orに変更しようとしまし"injectTo": ["heading.1.markdown"]
たが、どのセレクターを指定しても[ ]
、見出し内で一致できないようです。