関数で計算をしてみます。
5行目から10行目を選択して、
:'<,'>call setline(".",pow(getline("."),2))
エラーが出てしまいました。
どうやら、文字列を直接pow関数に渡すのはNGなようです。
str2float関数を使って、getlineで得た文字列を数値に変換します。
:'<,'>call setline(".",pow(str2float(getline(".")),2))
まだエラーになりますね。
setlineへ渡すときの値を、文字列にしていませんでした。
stringを使って、powで得た計算結果を文字列に変換します。
:'<,'>call setline(".",string(pow(str2float(getline(".")),2)))
今度はうまくいきました。
コメント