Vim script 用のオムニ補完関数を書きました
今のところ pure Vim script ですけど思ったよりも戦えている、という感触です。Fuzzy matching はちょっと重いような気もします。正直に言えば、 Vim script は <C-x><C-v>
と 単語補完 <C-n>/<C-p>
があればだいたい大丈夫なので、まあ便利かどうかは微妙なんですけど書くのはかなり楽しかったです。メンバ補完は無理。
おまけというかむしろメインなんですけど Vim plugin の help 書くときに英単語補完とタグ補完ができます。これはなかなか便利な感じ。
(2017/9/1: 英単語補完はなんか違うな、と思ってやめました)
もともと julialang 用のオムニ補完関数を書いてたんですけど、いろいろ使いまわせそう、と思ったらいつの間にかできてました。肝心の julia 用のはせっかくだから julia に処理を投げようか、と書き直すことにしました。 Vim に if_julia
欲しい。これからちょっと忙しくなるから完成しないかも。
「けものフレンズ」っぽい Vim カラースキーマをかいたよ!
やったー!
machakann/vim-colorscheme-kemonofriends
きのうあのやまからふきだしたんだよ!まだまわりがきらきらしてるでしょ!!
あなたサンドスターあんまりすきじゃないけものなんだね
let g:colorscheme_kemonofriends_sandstar_active = 0
vimhelplint のエラー7番を廃止しました
どうやら約一年前くらいになるのですが、 Vim プラグインのヘルプ用の lint を書きました。Vim プラグインを書き、ちゃんとヘルプまで書く人に向けて作られたかなりニッチなツールです。
これを久々に更新、といいますか一つエラーを廃止しました。廃止したのは次のように書かれたオプション名を検出するエラー7です。
('option' ...
クオーテーションの前に (
などの記号がある場合、以前の Vim だと 'iskeyword'
オプションの関係で 'option'
ではなく ('option'
としてタグジャンプしようとして失敗していました。このため、クオーテーションの前に空白を入れるように促していたのですが、どうやら Vim 本体の方に手をいれて問題を解決したらしいです。
「('isident' 参照)」でK →「残念ですが ('isident' にはヘルプがありません」 · Issue #10 · vim-jp/vimdoc-ja-working
これから書かれるヘルプについてはもう考慮しない方がいいと思いますので廃止します。
sandwich.vim に Emmet 的なふるまいを追加しました
先日、 sandwich.vim に HTML 式のタグで囲むレシピを追加しました。これに関して Emmet の省略記法を使えないか、という要望が来たのでちょっとやってみました。 Emmet 的なふるまい、とは言っても実際にサポートしているのは Emmet の機能のごくごく一部で、要するに三つの Attribute operators だけです。
operator | 省略記法 | 展開後 |
---|---|---|
id | div#id1 |
<div id="id1"></div> |
class | div.class1 |
<div class="class1"></div> |
custom attributes | div[attr=value] |
<div attr="value"></div> |
これだけなのでレキサーとパーサーもあんまり複雑にならず書いてて楽しかった。
Neovim には TextYankPost なるオートコマンドイベントがあるらしい
先日、 vim-highlightedyank に pull request をもらいまして、 neovim に便利になったっぽいです。どうやら TextYankPost なるヤンク後に発火するオートコマンドイベントがあるらしく、これを使うことで Neovim ではキーマップする必要がなくなりました。実際これがあると、いろいろとつらい仕組みで実現しているアレコレが必要なくなるのでいいですね。本家 Vim にも入らないかな。
いったいどんな情報網があるのか知らないですけどこのプルリクの後、 Github star が増えてどうやら viml 部門の weekly の Github trends 入りしたみたいで普通にうれしい。あと、単純にプルリクもらうと嬉しいですね。
また Vim のカラースキームかいた
前の 畳 に飽きてきたのでまたカラースキームを書いてしまった。もうちょっと褪せた感じというか、彩度の低い感じを考えてたはずが結構カラフルにも見える気がする。User1
... User9
ってカラースキームファイルで定義した方がいいのかな、とか考えたけど使ったことないから使うまでやめとくことにした。