NYAOS.ORG
Nihongo Yet Another {OS/2|OSes|Open} Shell's support site
TEST VERSION
以下、2.96 へ反映済み
20100424
例1
lua_e "
function nyaos.command.comp(argv)
local L=nyaos.default_complete(argv,1)
for i=1,#L do
print( string.format('(%d) %-20s %-20s',i,L[i][2],L[i][1]) )
end
end
"
これで comp というコマンドが定義される。
[C:hayama] $ comp ~/. (1) .bashrc ~/.bashrc (2) .freemind/ ~/.freemind/ (3) .gvimrc ~/.gvimrc (4) .gvimrc.orig ~/.gvimrc.orig (5) .hg/ ~/.hg/ (6) .hgignore ~/.hgignore (7) .hgrc ~/.hgrc (8) .rnd ~/.rnd (9) .skk-jisyo ~/.skk-jisyo (10) .skk-jisyo.BAK ~/.skk-jisyo.BAK (11) .skk_vim_jisyo~ ~/.skk_vim_jisyo~ (12) .ssh/ ~/.ssh/ (13) .vim ~/.vim (14) .vimrc ~/.vimrc (15) .vimrc.orig ~/.vimrc.orig (16) .vimshell_hist ~/.vimshell_hist (17) .w3m/ ~/.w3m/ [C:hayama] $
default_complete の第一引数は補完前のファイル名、 第二引数は補完位置。1以上だと通常のファイル名補完、 0 だとコマンド名補完となる。
例2.
lua_e "
function nyaos.command.list(argv)
local L=nyaos.default_complete(argv,1)
for i=1,#L do
print( L[i][2])
end
end
"
[C:hayama] $ list ~/. .bashrc .freemind/ .gvimrc .gvimrc.orig .hg/ .hgignore .hgrc .rnd .skk-jisyo .skk-jisyo.BAK .skk_vim_jisyo~ .ssh/ .vim .vimrc .vimrc.orig .vimshell_hist .w3m/