Home > 「いやー、.vimrcがデカくなっちゃって」とかいってるやつは大抵初心者
「いやー、.vimrcがデカくなっちゃって」とかいってるやつは大抵初心者
- 2008-05-03(2008-05-03 14:46:37)
昨日書いたvimでPHPを編集中、1秒で文法チェックする方法 - /halt/Snapshotですが、ゆどうふさんが自分流・vimでPHPを編集中、1秒で文法チェックする方法 - ゆどうふろぐというエントリでシンプルな方法を提示してて、
&ftじゃないのは故意です。PHP以外の時に間違って-l付きで実行ってなんかやだなと思ったので。 な に か も ん だ い で も ?
という話がありますが、これ。.vimrcに設定を書くから起こる問題なんですよね。 .vimrcに設定を記述すると、どのファイルタイプでも関係なく実行される為、ゆどうふさんの書き方だと、Rubyを編集しててもphpのlintが走る事になります。「,l」はlintという意味でmapしてんのにそのファイルタイプにあったlintができないなんてイミナサス。かといってifで&ft見て状況に応じてmapを切り換えるのもダサス。
結論は
:h ftplugins
を見ろ。という話。
.vim/ftplugin/php.vim
というファイルを作ると、そこに書かれた設定はファイルタイプがphpの場合のみロードされるようになります。ここに、ゆどうふさんの設定を書いておけばphpファイルを開いた時だけphpでlintできるようになるわけです。 私のftplugin/ruby.vimには
nmap ,l :call RubyLint()<CR>
""
" RubyLint
"
function RubyLint()
let result = system( &ft . ' -c ' . bufname(""))
echo result
endfunction
と書かれているので、rubyを編集している時に,lするとrubyのsyntaxcheckが走るようになってます。
というか、mapに限らずプラグインのロードなんかもftpluginで分岐させましょう。phpで使うプラグインが他のファイルタイプの時に使えても無意味です。たくさんプラグイン入れると重くなるとかゆってるのは関係ないプラグインをロードしてるんじゃ?
私の場合、各ファイルタイプごとの設定は(一部実行順序を気にする必要のある設定を除いて).vimrcから外して書いているので、.vimrcは451行しかないです。
というわけで.vimrcがデカい自慢をする人は大抵初心者なんじゃね?
このエントリーのはてなブックマーク
- 2009年11月14日
hanageman vim .vim/ftplugin/ - 2009年08月19日
toton vim ftplugins - 2009年02月28日
tacroe vim .vim/ftplugin/FILETYPE.vim はファイルタイプがFILETYPEの場合のみロードされる - 2008年07月14日
webmarksjp development editor tips tool vim ネタ config - 2008年07月03日
motemen [system:unfiled] .vimrc 451行 - 2008年05月20日
kuhukuhun vim autocmd派の人はファイルタイプ毎の設定もvimrcに集約させるんじゃないかな - 2008年05月09日
nyomonyomo vi ? この記事自体が.vimrcがでかい自慢に見えるのは気のせいかしら… - 2008年05月09日
HolyGrail vim tips 「.vimrcは451行しかないです。」いやいや、でかいしwwww - 2008年05月08日
yuiseki しらんかったなり - 2008年05月05日
ayucat_on_tabelog wc -l ~/.vimrcってデカっ!って思ったemacs派が通ります。emacs使いでもvimのftpluginくらい使ってんだろ、と正直思ってたYO!!! - 2008年05月04日
sankaseki #vim .Tips .vimrc|gvimrc 「いやー、.vimrcがデカくなっちゃって」とかいってるやつは大抵初心者 - /halt/Snapshot - 2008年05月04日
ku0522 というファイルを作ると、そこに書かれた設定はファイルタイプがphpの場合のみロードされるようになります。 - 2008年05月04日
gabari vim tips 451行。 - 2008年05月04日
yanma_4 わたしの.vimrcは530000行です - 2008年05月04日
klangfarbe vim,tips - 2008年05月04日
connvoi_tyou vim - 2008年05月04日
makiton php tips vim いや、.vimrcデカイだろコレwwwと思う俺は初心者以下。 - 2008年05月04日
tenkoma vim ftplugin - 2008年05月03日
sugarbabe335 vim tips .vim/ftplugin/php.vim というファイルを作ると、そこに書かれた設定はファイルタイプがphpの場合のみロードされるようになります。 - 2008年05月03日
Constellation tips php tool 勉強になるなあ。 - 2008年05月03日
ore_de_work catつかう ねこだいすき!! - 2008年05月03日
kura-2 vi software 頭使えって話し。 - 2008年05月03日
kenichiice vim 「私の場合、(snip)、.vimrcは451行しかないです。」 - 2008年05月03日
taku-o 「.vimrcは451行しかないです。」ちょっとちょっと、お待ち。 - 2008年05月03日
yukky2001 tips なんか「バッドノウハウ」っぽい。 - 2008年05月03日
Yudoufu vim なるほどすぐる。 - 2008年05月03日
koji_poly vim fpluginで分割させましょうというお話 - 2008年05月03日
kkobayashi viを使いこなしている・・・! - 2008年05月03日
ha1t [self
Comment
- kcrt - 2008-05-04 05:15:33
-
僕は逆にすべて.vimrcにautocmd BufReadとかで書くことにしてます。autocmd BufNewFile,BufRead *.php :map <F5> :!php %:p<CR>
みたいな感じで。
ftpluginに書くよりも、管理するファイルが少なくてすむので、何台もマシンがある場合はとても便利です。 - halt - 2008-05-04 13:07:01
-
なるほどー。ファイル数を少なくしたいというのであればそういうやり方はありですよね。
自分の場合syntaxの事を考えると.vimrcだけじゃどうしようもないので.vimの下はファイルだらけになっちゃってます。
Comment Form
Trackback
TrackBackPingURL:
Referer
- 447hit: http://reader.livedoor.com/reader/
- 430hit: http://b.hatena.ne.jp/hotentry
- 221hit: http://b.hatena.ne.jp/
- 204hit: http://www.google.co.jp/search?q=vimrc&lr=lang_ja&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:ja:official&client=firefox-a
- 136hit: http://b.hatena.ne.jp/entrylist?sort=hot
- 118hit: http://news.atode.cc/
- 97hit: http://www.google.com/reader/view/
- 78hit: http://bookmarks.yahoo.co.jp/all
- 72hit: http://www.google.co.jp/reader/view/
- 70hit: http://www.mixclips.org/
- はてブ
-
- Munin - CakeWiki
- パスタはネットで大量買いが安い - /halt/Snapshot
- - CakeWiki
- vim/plugin/surround - CakeWiki
- 日本のジェスチャー・コンピューティング - /halt/Snapshot
- php/Prhagger - CakeWiki
- mb_detect_orderのautoがぬるい件 - /halt/Snapshot
- :WD_29/SimpleTest/基本的なメソッド一覧と使い方 - CakeWiki
- WEB+DB PRESS Vol.54 - /halt/Snapshot
- Vimperator/plugin/proxy.js - CakeWiki
- proxy - CakeWiki
- Red Control Key当たった - /halt/Snapshot
- irc.fujisawa.wide.ad.jpが本気出してる - /halt/Snapshot
- im.kayac.comにPHPで秘密鍵認証使って送信する - /halt/Snapshot
- FollowSymLinksつけてるのにsymbolic link not allowedと言われる - /halt/Snapshot
