Me gustaría hacer que mi línea de estado en vim sea más informativa e interesante, y para eso necesito algunas ideas. ¿Cómo personalizaste tu línea de estado?
Me gustaría hacer que mi línea de estado en vim sea más informativa e interesante, y para eso necesito algunas ideas. ¿Cómo personalizaste tu línea de estado?
Respuestas:
Editar:-
Tenga en cuenta que vim-airline está ganando algo de fuerza como la nueva opción vimscript, ya que powerline se ha convertido en python.
Parece que la línea eléctrica es donde está en estos días: -
Línea de estado normal

Líneas de estado personalizadas para otros complementos (por ejemplo, ctrlp )

Aquí está el mío:
set statusline=
set statusline +=%1*\ %n\ %* "buffer number
set statusline +=%5*%{&ff}%* "file format
set statusline +=%3*%y%* "file type
set statusline +=%4*\ %<%F%* "full path
set statusline +=%2*%m%* "modified flag
set statusline +=%1*%=%5l%* "current line
set statusline +=%2*/%L%* "total lines
set statusline +=%1*%4v\ %* "virtual column number
set statusline +=%2*0x%04B\ %* "character under cursor

Y aquí están los colores que usé:
hi User1 guifg=#eea040 guibg=#222222
hi User2 guifg=#dd3333 guibg=#222222
hi User3 guifg=#ff66ff guibg=#222222
hi User4 guifg=#a0ee40 guibg=#222222
hi User5 guifg=#eeee40 guibg=#222222
guifgy guibgson para gvim. Si está ejecutando vimen una terminal, intente ctermfgy en su ctermbglugar. También necesitará diferentes colores, los números 1-16 o 1-256 dependiendo de cuántos colores haya habilitado en vim. Colores correspondientes para cada número.
Este es el que uso:
set statusline=
set statusline+=%7*\[%n] "buffernr
set statusline+=%1*\ %<%F\ "File+path
set statusline+=%2*\ %y\ "FileType
set statusline+=%3*\ %{''.(&fenc!=''?&fenc:&enc).''} "Encoding
set statusline+=%3*\ %{(&bomb?\",BOM\":\"\")}\ "Encoding2
set statusline+=%4*\ %{&ff}\ "FileFormat (dos/unix..)
set statusline+=%5*\ %{&spelllang}\%{HighlightSearch()}\ "Spellanguage & Highlight on?
set statusline+=%8*\ %=\ row:%l/%L\ (%03p%%)\ "Rownumber/total (%)
set statusline+=%9*\ col:%03c\ "Colnr
set statusline+=%0*\ \ %m%r%w\ %P\ \ "Modified? Readonly? Top/bot.
¿Destacar? función:
function! HighlightSearch()
if &hls
return 'H'
else
return ''
endif
endfunction
Colores (adaptado de ligh2011.vim):
hi User1 guifg=#ffdad8 guibg=#880c0e
hi User2 guifg=#000000 guibg=#F4905C
hi User3 guifg=#292b00 guibg=#f4f597
hi User4 guifg=#112605 guibg=#aefe7B
hi User5 guifg=#051d00 guibg=#7dcc7d
hi User7 guifg=#ffffff guibg=#880c0e gui=bold
hi User8 guifg=#ffffff guibg=#5b7fbb
hi User9 guifg=#ffffff guibg=#810085
hi User0 guifg=#ffffff guibg=#094afe

colorschemeconfigurar cualquiera , pero solo veo una línea de estado de doble tono.
:colorscheme
echo &hls ? 'H' : '' en mi caso:let &stl.="%6*%01(%{&hls?'H':''}%)%0* "
Lo que he encontrado es útil saber qué copia / pega memoria intermedia (registro) es actualmente activo: %{v:register}. De lo contrario, mi línea de estado completa se ve casi exactamente como la línea estándar.
:set statusline=%<%f\ %h%m%r\ %y%=%{v:register}\ %-14.(%l,%c%V%)\ %P
v:registerve muy útil!
Algunas veces menos es más, ¿realmente necesita saber el porcentaje a través del archivo que está al codificar? ¿Qué pasa con el tipo de archivo?
set statusline=%F%m%r%h%w\
set statusline+=%{fugitive#statusline()}\
set statusline+=[%{strlen(&fenc)?&fenc:&enc}]
set statusline+=\ [line\ %l\/%L]
set statusline+=%{rvm#statusline()}


También prefiero un color mínimo para no distraerme del código.
Tomado de: https://github.com/krisleech/vimfiles
Nota: rvm#statuslinees específico de Ruby y fugitive#statuslinees específico de git.
Actualmente uso esta configuración de la barra de estado:
set laststatus=2
set statusline=\ %f%m%r%h%w\ %=%({%{&ff}\|%{(&fenc==\"\"?&enc:&fenc).((exists(\"+bomb\")\ &&\ &bomb)?\",B\":\"\")}%k\|%Y}%)\ %([%l,%v][%p%%]\ %)
Mi archivo .vimrc completo: http://gabriev82.altervista.org/projects/vim-configuration/