Vim の :substitute の \= で除算を記述する
Vim の :substitute では、
" 行末に列数を追加する :%s/\(.*\)\zs$/\=len(submatch(1))/g
のようにして \= を記述すると以降の文字列を式として評価されます。
[問題]
次のように除算(/) を計算しようとするとうまく動作しません。
:%s/\(.*\)\zs$/\=len(submatch(1))/2/g
これは \= の / が区切り文字として認識されているためです。
[解決]
区切り文字を / 以外で記述します。
" / 以外の文字で区切る :%s#\(.*\)\zs$#\=len(submatch(1))/2#g
区切り文字は一部の文字を除く任意の1バイト文字を使用することができます。
詳細は以下の記事を参照して下さい。