1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

VSCode 登録したキーワードを装飾(強調)する自作 Extension の紹介

Posted at

作成したもの

DecorateKeyword

undecorate

decorate

予め登録しておいたキーワードを装飾(decorate)するものです。
強調(highlight)と言った方が分かりやすいかもしれませんが、VSCodeのSetDecorationsAPIを使っているのでこの名前にしました。
装飾(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 のパッケージと検索・導入方法が違うためにマイナーパッケージは見向きもされないようですね。
そもそも、そんな機能要らんよって話かもしれませんが。
悲しい。

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

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?