tutorial sheet commands comandos cheat vim

sheet - vim linux



Una línea de estado más útil en vim? (8)

Me gustaría 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?


Editar:-

Tenga en cuenta que vim-airline está ganando algo de tracción ya que la nueva opción vimscript como powerline se ha convertido en python.

Parece que powerline está donde está en estos días:

Línea de estado normal

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


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/


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 el color mínimo para no distraerme del código.

Tomado de: https://github.com/krisleech/vimfiles

Nota: la rvm#statusline es específica de Ruby y la fugitive#statusline es específica de git.


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 utilicé:

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



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.

Resaltar? 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


Lo que he encontrado útil es saber qué copy / paste buffer (register) está 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


set statusline=%<%f%m/ /[%{&ff}:%{&fenc}:%Y]/ %{getcwd()}/ / /[%{strftime(''%Y/%b/%d/ %a/ %I:%M/ %p'')}/]/ %=/ Line:%l//%L/ Column:%c%V/ %P

Esto es mío, da como sugerencia