vim で perl -c を通らない変更は保存しないようにする方法 + 小ネタ
Emacs 使ってる人に dis られた挙句、涙目で散々調べまわって苦労したのでメモ。
まずは次のものをインストール
cpanm Vi::QuickFix
perl_synwrite.vim - checks Perl syntax before allowing file write : vim online
.vim/ftplugin/perl_synwrite.vim
この二つを真(1)に書き換える
let s:default_perl_synwrite_qf = 1 let s:default_perl_synwrite_au = 1
.vimrc に追記
これは各自お好きなように。
" quickfix map <silent><C-c> :cn<CR> map <silent><C-l> :cl<CR>
vim 再起動して
use strict; use warnings; use 5.12.1; say $foo;
を :w で書き込もうとすると
Global symbol "$foo" requires explicit package name at - line 7. - had compilation errors. shell returned 255 Press ENTER or type command to continue
と出て保存できない。yatta.
小ネタ - モジュールのバージョンを表示する
ちょっと前に盛り上がったような気もするけれども、そんな凝ったことはしないで bashrc に pmver を書いておくだけでいいかなぁ
function pmver () { perl -M$1 -le "print \$$1::VERSION"; }