2013-12-21 60 views
6

我正在使用Vim编写“页面”很重要的东西。页面是固定的行数。Vim:突出每第N行?

我使用:set colorcolumn突出显示右边距。是否有类似于突出显示文件的每一行的第N行?

回答

6

以下解决方案:

function HighlightEvery(lineNumber, lineEnd) 
    highlight myhighlightpattern ctermbg=darkred guibg=darkred 
    let pattern="/" 
    let i = 0 
    while i < a:lineEnd 
     let i += a:lineNumber 
     let pattern .= "\\%" . i . "l\\|" 
    endwhile 
    let pattern .= "\\%0l/" 
    let commandToExecute = "match myhighlightpattern ".pattern 
    execute commandToExecute 
endfunction 

command -nargs=* Highlightevery call HighlightEvery(<f-args>) 

添加上面的代码,在.vimrc,

,并呼吁

:Highlightevery 10 1000 

每10线突出以行号1000

+0

这很好,谢谢!小细节,vim抱怨“用户定义的命令必须以大写字母开头” – ggambett

+0

好的,我已经更新了答案。 – albusshin

+0

用哪种语言编写代码? –