自己顕示欲の開放治療所

erg, programming and something.

別名:Laughing and Grief 雑記

Latin and Greekは習ったこともない

真面目な記事の他、特定の方には不快と思われる事柄に関して言及を行うことがあります。ちょっと頑張りますが、Blog内で解決できなかった場合要望があれば別ページに技術記事は書き直します

microの textlint plugin(575)

愛用しているエディタで、コーディングではなく日本語を書く人はかなり多いでしょう。 文章を書くなら文書校正が要りますね。そんなときに便利なtextlint。 で、まあエディタ上から使いたくなりますよね。幸いにも僕の愛用しているmicro-editorは 拡張をlua(5.1)で書ける、ということで書きました。

github.com

使い方

textlintが入っている前提です。.textlintrcは通常のtextlint同様に用意してください。

microで編集中に Ctrl-e textlint で該当行に表示が出ます。便利!!!!!

microのプラグイン作成

既存のlinter-pluginを参考にしました、というかほとんど構成が一緒。 JobSpawnで実行してもらって、出力結果を1行ずつ加工してGutterMessageに突っ込むというだけです。

ハマったところ

GutterMessageに送ったstringが、マルチバイト文字のところが一文字飛ばしになって表示されていてかなり時間をとった。結果から言うと重なって表示されていたために一文字飛ばしに見えていたというオチ。半角スペースをマルチバイト文字の間に入れていくという解決策を取りました。このためにutf8.luaを利用させてもらっていて、オリジナルの1ファイルで完結していないから公式のPlugin-Channelに乗せてもらうようPR出すのを躊躇っているところ。日本語をGutterMessageに使いたいときは毎度同じ手法を取る必要があるかもしれない。