まずは近況。
訳あって5月いっぱいは暇してる予定。
面白そうなことがあれば出向くので、お誘いください。
本題
閑話休題。
こちらのQiitaの記事に拡張機能を載せてもらった。
そのおかげで順調にユーザー数が増えている。
ありがたいことです。
Text Blurrer
Azure Portal Plus
そんなユーザーが増えている中、Text Blurrerのコードを割と大きく修正した。
きっかけはインライン要素のホワイトスペース処理の不具合。
これを直そうとしたらなかなか厄介で、今までの実装を修正する形では対応しきれなかったので、抜本的にコードを修正した。
ついでに正規表現の先読みアサーション(後読みアサーション)を使ったボカシもできるようにした。
正規表現のアサーションについてはコチラ。 developer.mozilla.org
これまでのバージョンだと、設定のUIからアサーションを使った正規表現自体を入れることができなかった。
もっとも設定できたとしてもボカシの処理ロジックとして、アサーションに対応してなかった*1。
今回バージョンアップでこのアサーションも処理できるようにした。
これを使うと、例えば下のスクショのように、"API_KEY=
"に続く文字列をボカすことができる。
以下、余談。
今更ながら、上のスクショのようにvscode.dev/github.dev/GitHub Codespacesでもこの拡張機能が動くことに気づいた。
これらもWebブラウザーで動いているので、当たり前と言えば当たり前なんだけど。
これでプロジェクトを開くとプロジェクト内の設定ファイルの中に見せたくない文字列があっても、それをボカすことができる。
ただGitHub Codespacesのターミナル内のテキスト、コマンドの出力結果はボカせないので、使う時は要注意*2。
これらのサイトもVSCodeも同じMonacoベースのはずなので、VSCodeの拡張機能として仕立てられないか考えたけど、CSSのfilter
をいじるAPIが見つからないので難しそう。
その他の追加
いくつか機能を追加したけど、正直なところ全部自分が開発/デバッグしている中であると欲しくなった機能。
なので自分以外の需要がないかもしれない。
除外URLパターンリスト
拡張機能を適用しないURLパターンを設定できるようにした。
コンテキストメニュー
Webページ内の選択キーワードを直接追加する。
ショートカットキー
Popupウィンドウにショートカットキーを付けてみた。
とりあえず2つ。
- Ctrl / ⌘ + s: 「apply」ボタンを押すのと同じ。
- Shift + Alt + f: テキストエリアのフォーマッティング(空白行を消すだけ)
以上がText Blurrerの不具合修正/機能追加の詳細。
上に書いた通り、結構なコード変更があったので、今まで動いていたものが動かなくなる不具合が入った可能性もあるので、見つけたら issue あげてほしい。
https://github.com/horihiro/TextBlurrer-ChromeExtension/issues/new
その時に、うまく動かないサイトのURLとぼかしたいキーワードをセットでもらえると調査が捗る。
*1:そもそも根本的な問題は、自分がアサーション自体を全然わかってなかったこと
*2:ターミナル部分はxterm.js(https://github.com/xtermjs/xterm.js/)で作られていて、Canvasにテキストを描いているので、どういうテキストが書かれているのか外部からチェックするのが難しい