2016-06-12 13 views
1

でのvimで80の文字:私は私の.vimrcのために、以下の設定を抽出しましたハイライトラインが同じファイルの複数のタブこれら二つの質問から

Vim 80 column layout concerns

Vim syntax coloring: How do I highlight long lines only?

augroup vimrc_autocmds 
autocmd BufEnter * highlight OverLength ctermbg=darkred ctermfg=whitee guibg=#FFD9D9 
autocmd BufEnter * match OverLength /\%>80v.\+/ 
augroup END 

これは、長い行のvim、 で80文字ことを強調するために正常に動作しますが、WHE n同じファイルの別のタブを開きます。

:tab split 

強調表示は新しいタブでは機能しません。新しいタブでどのように同じ効果を得ることができますか?ここで

+0

TabEnterのような別のコマンドをBufEnterと同様に使用できます。それは動作します – SibiCoder

+0

私はちょうど私達が[vimの質問に特化したウェブサイトセクション](http://vi.stackexchange.com/)を持っていることを指摘したいと思います。 – grochmal

+0

@grochmalそれを知らなかった。情報をありがとう! –

答えて

3

スニペットのクリーンアップバージョンです:とき/あなたのvimrcをリロードする場合に、グループ内のオートコマンドが適切にクリアされ

highlight OverLength ctermbg=darkred ctermfg=white guibg=#FFD9D9 

augroup vimrc_autocmds 
    autocmd! 
    autocmd BufEnter,WinEnter * call matchadd('OverLength', '\%>80v.\+', -1) 
augroup END 
  • BufEnterイベントは1回だけトリガーされ、別のイベント(ウィンドウがフォーカスを取得したときにトリガーされるWinEnter)を聴く必要があります。
  • matchadd()は、:matchよりも柔軟性があり、ハイライトの優先度を設定することができます(hlsearchに依存する場合に便利です)。
関連する問題