Vimスクリプト(:badd)(その2)

前回の続きです。
今回は複数ファイルを:baddします。
globでファイル名を取得できることがわかったので、ファイル名をリストに変換して格納します。

                 
:let arr = split(glob("test_*.txt"),"\n")
:echo arr

リストになってますね。

このリストを使ってforで回してbaddします。

 
:for fname in arr
:  badd fname
:  endfor
:ls


え!? バッファにファイル名が追加されてません。fnameって名前が追加されています。
なぜでしょう。baddの行をもう一度確認。

:  badd fname 

そりゃそうですよね。fnameを追加していますから。
変数の中身の名前を指定しなければなりません。

:for fname in arr
:  execute "badd" fname
:  endfor 
:ls


追加されました(fnameっていうバッファが残ってますが)。

コメント

タイトルとURLをコピーしました