changelog.vim : vimでchangelogメモ
これを読んでみて私もchangelogメモを始めてみることにしました。
Vimには標準でchangelog.vimというプラグインがあります。使い方はこちらが参考になります。
で、このプラグインはヘルプによれば.vimrcに
runtime ftplugin/changelog.vim
とするとグローバルにマッピングされます。この状態で
173 function! s:new_changelog_entry()
となっているのに、
296 call s:new_changelog_entry(prefix)
とおもいっきり引数有りで呼び出しています。少し調べてみたところ、このページが見つかりました。
Proposed change to ftplugin/changelog.vim
これを読む限り、b:changelog_entry_prefixという関数が定義されてあればそれによって、そうでなければChangelogファイルから現在のファイルまでの総体パスがprefixとなり、エントリーが追加されます。つまり、
Changelog hoge/ hogehoge.c
みたいなときに、hogehoge.cを開いているバッファから
* hoge/hogehoge.c :
と自動で現在のバッファの情報を付け加えてくれるようです。ところがなぜか、changelog.vimはcall s:new_changelog_entry(prefix)となっているのに肝心の関数本体は変更されていません。個人的には
最後の部分で変更してるところがChangelogメモを開くために付け加えたところです(Changelogメモに現在のファイルへのパスを書いてもしかたないので)。それ以外のところは上記のサイトそのままです。これで、どんなファイルを開いていても、
・もしルートまで再帰的に探索していって「Changelog」ファイルがあれば、それに(prefixつきで)エントリーを追加
・そうでなければ、Changelogメモを開いてエントリーを追加
となります。ここら辺はいずれ変更されるんでしょうか。とりあえず今のところはなかなかいい感じです。
(参考)
:help ft-changelog-plugin