Vimの置換で改行を入れるTips
しょっちゅう忘れる改行をいじくるメモ
hogeの文字の後に改行:
s/hoge/hoge^M/g
^MはCtrl+v,Ctrl+mで出せる。
改行を消す:
s/\n//g
また、vim置換をさらに便利にするために、範囲指定の置換と問いかけの置換も覚えると便利です。 (勝手に命名)
範囲指定の置換
'<,'>s/hoge/fuga/g
visual modeで範囲指定後実行。範囲内しか置換しない。置換した時によくある他への無駄な副作用をなくす。
問いかけの置換
s/hoge/fuga/gc
cを最後に入れるだけ。置換対象の要素をそれぞれ置換するかどうか聞いてくる。 yやnで答える。困ったらCtr+Cで置換を取り消す。
より慎重に置換したい場合に便利。
参考
MacportsからHomebrewに移行後Vimがつかえなくなった問題
macでMacPortをbrewに移行しようと操作していたら、vimが開けなくなった。
どうやらvimの使用する共有ライブラリが見つからない。
[git][* master]:~/dotfiles/ $ v dyld: Library not loaded: /opt/local/lib/perl5/5.12.4/darwin-thread-multi-2level/CORE/libperl.dylib Referenced from: /usr/local/bin//vim Reason: image not found zsh: trace trap vim
macport上での再インストールによって、perlのライブラリのバージョンが変わっただけらしい。
/opt/local/lib/perl5/5.22/darwin-thread-multi-2level/CORE/libperl.dylib
こちら(ver 5.22)はあった。
とりあえず一番簡単な方法は、シンボリックリンクを作ること。
[git][* master]:~/dotfiles/ $ sudo mkdir -p /opt/local/lib/perl5/5.12.4/darwin-thread-multi-2level/CORE/ [git][* master]:~/dotfiles/ $ sudo ln -s /opt/local/lib/perl5/5.22/darwin-thread-multi-2level/CORE/libperl.dylib /opt/local/lib/perl5/5.12.4/darwin-thread-multi-2level/C
無事解決した。
2016-08-04 追記
今日やってみたらまたライブラリ読めない先ほどのエラーが。結局以下でかいけつ。
$ brew upgrade vim
こうゆうときは上のようなちゃんとした方法を取るべき、と今回学んだ。場当たり的な対応イクナイ