更改.vimrc中的状态行颜色?

从这个问题:我如何更改VIM状态线的颜色? 我学会了如何改变状态线着色,如下所示:

hi StatusLine ctermbg=3 ctermfg=4

这很好,但我怎样才能为每个窗口做到这一点,而不必为每个打开的新窗口应用命令。 我期望在.vimrc中做到这一点,但我无法解决如何。

我在终端上运行vim而不是gui; 我正在使用沙漠作为配色方案。


回答!:在因戈和肯特提供的答案让我确信我做得正确之后,它仍然无法工作。 然后我发现我的vimrc里有一行代码

设置背景=黑暗

我不确定那是为什么,但是当我评论它时,我得到了我想要的状态线颜色。


不是答案! : 嗯。。好。 我刚刚发现,在编辑vimrc时,对.vimrc进行更改确实给了我正确的颜色,但是当我编辑python文件时,状态颜色消失了。 我猜这是关于filetypes = on的事情?

无论哪种方式,当我有更多时间思考这个问题时,我将不得不重新提出这个问题,但似乎'背景=黑暗'是一个问题,但它不是整个解决方案。

值得我的vimrc看起来像这样:

colorscheme desert
autocmd BufRead,BufNewFile *.py syntax on
autocmd BufRead,BufNewFile *.py set ai
autocmd BufRead *.py set smartindent cinwords=if,elif,else,for,while,with,try,except,finally,def,class
set tabstop=4
set expandtab
set shiftwidth=4
filetype indent on
"GLAUCON START
:set ignorecase "make searches case insensitive by default
:set incsearch
:set hlsearch
" Returns true if paste mode is enabled
function! HasPaste()
    if &paste
        return 'PASTE MODE  '
    en
        return ''
endfunction
" Always show the status line
set laststatus=2
" Format the status line
set statusline= %{HasPaste()}%F%m%r%h %w  CWD: %r%{getcwd()}%h   Line: %l
hi StatusLine ctermbg=3 ctermfg=4
"set background=dark
"GLAUCON END

我认为StatusLine可以(大S )。 问题是(我猜):

你在你的colorscheme desert呼叫之前把你喜欢的hi StatusLin...放进去。 这样colorscheme会覆盖您的状态线突出显示。

你应该把它放在你的.vimrccolorscheme desert之后


首先,必须将:hi命令放在~/.vimrc任何:colorscheme命令后面 ,因为colorscheme可能会提供自己的定义。 类似于:set background=...:syntax on

即使在切换/打开新窗口时,如果状态行颜色仍然消失,也许(这从您的问题中不完全清楚),必须有:autocmd来完成此操作。 然后检查你安装的插件。

链接地址: http://www.djcxy.com/p/49521.html

上一篇: change status line colours in .vimrc?

下一篇: How to cut an entire line in vim and paste it?