VimConf 2019 を振り返る
girls.vim vol.3
ゴリラ.vim #10
daisuzu
tagstackの話をしてきました
タイトル: Usage and manipulation of the tag stack
内容:
Vimのタグ機能
続くセッションでも取り上げられていてちょっとビックリしました。
きっかけ
vim-lspを使う → Not enough → Write Vim script → Pull Request
こんな感じの流れは Your Vim is Only for You にありましたね。
ちなみに最初のKeynoteはvim-lsp作者のPrabir ShresthaさんによるVim Renaissanceでした。
調査でやったこと
-
ソースを読む
- コマンド系は
ex_cmds.h
やex_docmd.c
あたり:tag
/:pop
- 関数系は
evalfunc.c
gettagstack()
/settagstack()
- コマンド系は
-
デバッグする
- Modes(VimConf 2018)
-
あたりをつけるのにカバレッジを使うことも
-
tagstackの変化をひたすら見る
command! TSD :call TSdump()
function! TSdump()
echom 'gettagstack() = ' . string(gettagstack())
echom ':tags'|for l in split(execute('tags'), "\n")|echom l|endfo
endfunction
gettagstack() / settagstack()
もちろんNeovimでも使えます。
2つ目のKeynoteはNeovimメンテナのJustin M. KeyesさんによるWe can have nice thingsでした。
そしてsettagstack()
はさっそく活用してくれた人がいました。
- https://twitter.com/nametake1009/status/1190865275723239429
- https://twitter.com/uochan/status/1190987903767203846
deniteのtagstack対応
My dark plugins development history ~ over 10 years ~ で紹介されていたdenite。
作者のShougoさんはtagstack対応をしようと思ったけど複雑なので諦めたとのこと...
なのでコントリビュートしてくれる人を募集中だそうです。
コントリビュートといえば Grown up from Vim User to Vim plugin developer side ですね。
The next OSS contributer is ...
You !!!
このスライドについて
showtimeというプラグインを使っています。
実は 13 Vim plugins I use every day のプラグイン一覧の中にありました。
ところで今日はゴリラ.vim
ゴリラ.vimといえばゴリラさん。
My Vim life の中でも紹介されていました。
また、「Vimが好きになる本」ではレビュアーとして協力させていただきました。
何が言いたいのかというと
Vimmerの輪を大事にしたい!!!