command! -nargs=? -complete=customlist,HatenaEnumUsers HatenaUser if strlen('<args>') | let g:hatena_user='<args>' | else | echo g:hatena_user | endif
command!
コマンド定義
-nargs=?
0 もしくは 1 個の引数
-complete=customlist,HatenaEnumUsers
引数が補完されるようになります。 -complete=customlist,{func} {func}によるユーザ定義の補完
HatenaEnumUsers で返したリストで引数を補完する
function! HatenaEnumUsers(...) " ユーザ名を列挙 if !exists('g:hatena_users') let g:hatena_users = [] endif return g:hatena_users endfunction
g:hatena_users がなければ空配列を、あればそのまま返す。g:hatena_users は .vimrc 等に記述した
let g:hatena_user='basyura'
が使用される。
HatenaUser
HatenaUser という名前で関数定義する