作成したもの
DecorateKeyword
予め登録しておいたキーワードを装飾(decorate)するものです。
強調(highlight)と言った方が分かりやすいかもしれませんが、VSCodeのSetDecorations
APIを使っているのでこの名前にしました。
装飾(decorate)というだけあって色々出来ます。
もっとも、APIに指定されたデータをそのまま渡しているだけです。
なぜこんなものを作ったのか
テキストファイルではあるが、独自の文法で書かれているファイルを見る機会は皆さんにもあると思います。
例えば、受託開発で請け負ったシステムの入力ファイルや出力ファイルなどです。
このようなファイルを閲覧する場合、開発期間にもよりますが文法ファイルを定義して色付けするのは大変です。
そんな時に手軽に色を付けられるようにしたのがこの拡張機能です。
VSCodeは、柔軟に色を変更出来ます。
そのため、拡張機能など要らないと思うかもしれませんが、現在のバージョンでは、背景色を変更することが出来ません。
個人的には、背景色を変更する為だけにこの拡張機能を作った感じではあります。
使い方
まず最初に、definitionFilePath
にファイルを指定します。
指定すべきファイルはJSONC形式のファイルで以下のようなものです。
[
{
"name": "function",
"regex": "\\bfunction\\b",
"regexFlag": "g",
"color": "#ff00ff",
"backgroundColor": "#ffff00",
"isWholeLine": true
},
{
"name": "return",
"regex": "\\breturn\\b",
"regexFlag": "g",
"color": "#ff0000",
"backgroundColor": "#00ffff"
},
{
"name": "blockComment",
"regex": "/\\*[\\S\\s]+?\\*/",
"regexFlag": "g",
"color": "#00ff0055",
"backgroundColor": "#ff000055"
},
{
"name": "Japanese",
"regex": "[\\p{scx=Hira}\\p{scx=Kana}\\p{scx=Han}]+",
"regexFlag": "gu",
"color": "black",
"backgroundColor": "black",
"border": "solid 1px red"
}
]
これを設定した後、 DecorateKeyword: decorate
コマンドを使うと装飾されます。
definitionFilePath
を変更した場合(ファイルパスを変更した場合)は、自動検出されますので再度、DecorateKeyword: decorate
を使えば新しい定義で装飾されます。
一方、ファイルの内容を変更した場合は、自動検出されませんのでDecorateKeyword: read
コマンドでファイルを読み込ませる必要があります。
あとの細かい説明は、怪しい英語ですがREADMEを見てもらうかREADMEのリンクを見ていただければと思います。
余談
VS Code の Extensionは、Atom のパッケージと検索・導入方法が違うためにマイナーパッケージは見向きもされないようですね。
そもそも、そんな機能要らんよって話かもしれませんが。
悲しい。