vim scriptを勉強してみるぞ。もくもくと更新していくよ!
<blockquote> 2 :1:01/12/17 12:22 まずはHelloWorldから。 適当なファイル hello.vim とかに echo "HelloWorld" とだけ書いて :source hello.vim で実行 HelloWorld が表示されれば大成功! </blockquote> やった!ぼくにもできたよ!
<blockquote> ■変数代入 実行例:
echo fooHello World
let bar = "2"foo+bar=7 </blockquote> これならできるできる!
変数を確保した時点でメモリを消費するので使わない場合は解放が必要になる。
:unlet s:count
でs:countを解放できる。存在しない変数にたいして行うとエラーがでるが、エラーを無視するには
:unlet! s:count
とする。
指定された行の内容を返す。
let aaa = getline('.')
とかで、現在カーソルが存在する行の内容を取得できる。
変数が定義されているか調べる。s:countが定義されているかどうか調べるには
:if exists("s:count")
:endif
みたいな。引数には文字列を入れる。exists(s:count)だとs:countの中身と同じ名称の変数が定義されているかどうか調べてしまうので。
文字列の表示
変数に値を代入する。
:let {variable} = {expression}
let foo = "Hello World"
let s:foo = "Hello World"
s:をつけると、そのファイル内だけで利用できるローカル変数になる。っつーことはs:つけまくれってことだな。(ただし関数内なら、s:つけなくても勝手にローカル変数になる。当然メモリも勝手に解放してくれるはず) 他にも
がある。
まんまwhile。
:while {condition}
: {statements}
:endwhile
Vimは0がfalse。それ以外はtrue。-1もtrue
vim7からかな。関数の引数を...とする事で可変長の引数を受けとることができる。受けとるにはa:数字。a:0は引数の数。以下は第一引数をfirstという変数に代入するサンプル。
function Test(...)
if a:0 > 0
let first = a:1
endif
endfunction