読者です 読者をやめる 読者になる 読者になる

はわわーっ

はわわわわっ

[vim] Listを使う

Vim script の勉強をすることにした。何やっていいかよくわからなかったので、なんとなくリストの使い方などをみてみる。

:help List

しましょう。

とりあえず使ってみる。

let mylist = [1, 2, 3, 4]
let emptylist = []
let nestlist = [[11, 12], [21, 22], [31, 32]]

リストの要素にアクセスするには[]を使う。インデックスは0から始まる。マイナスの数を使うと後ろから数える。不正なインデックスを指定するとエラーになる。

echo mylist[0]  " 1
echo mylist[2]  " 3
echo nestlist[0][1]  " 12
echo mylist[-1]  " 4
echo mylist[-2]  " 3
echo mylist[5]  " error
echo mylist[-5]  " error

get() を使うと不正な値のときに0を返す。あるいは、デフォルトの値を設定することもできる。

echo get(mylist, 5)  " 0
echo get(mylist, 5, 'default')  " default

リストに値を追加する。

let mylist = mylist + [5,6]
echo mylist  " [1, 2, 3, 4, 5, 6]
let mylist += [7,8]
echo mylist  " [1, 2, 3, 4, 5, 6, 7, 8]
call add(mylist, 9)
echo mylist  " [1, 2, 3, 4, 5, 6, 7, 8, 9]

リストの一部を取り出す。

echo mylist[2:4]  " [3, 4, 5]
echo mylist[3:]  " [4, 5, 6, 7, 8, 9]
echo mylist[:3]  " [1, 2, 3, 4]
echo mylist[:]  " [1, 2, 3, 4, 5, 6, 7, 8, 9]

そういえば、echo の行に " 書いてもコメント扱いにならないんだっけ?(うろ覚え)
あと quickrun 便利!