毎度リストを使っていて、リストの中のリストの要素を抽出するために、for文を入れ子にするのが、すごく面倒に感じます。
入れ子のないリストにすることはできないでしょうか。
let a=[[1,2],[3,4],[5,6]]
というリストを、
let a=[1,2,3,4,5,6]
こうしてくれる関数などないかなあと、vimのヘルプを探してみましたが、見つかりませんでした。(あるのかもしれませんが)
ってことで作ってみます。リストを指定したときに、そのリストをグローバル変数にaddする関数を作ればよいです。リストの連結をするには、extendを使います。
:function Addmylist(l) : call extend(g:mylist,a:l) :endfunction
使ってみます。
:let a=[[1,2],[3,4],[5,6]] :let mylist=[] :call map(a,'Addmylist(v:val)')
コメント