texto - salir de vim ubuntu
Cómo voltear ventanas en vim? (4)
Las respuestas actuales funcionan muy bien si solo tiene dos ventanas abiertas. Si tiene más que eso, la lógica para mover ventanas puede ponerse peluda.
Tengo esto en mi .vimrc para permitirme ''tirar'' y ''borrar'' un buffer y luego pegarlo en una ventana sobre el buffer actual o como una división [v].
fu! PasteWindow(direction) "{{{
if exists("g:yanked_buffer")
if a:direction == ''edit''
let temp_buffer = bufnr(''%'')
endif
exec a:direction . " +buffer" . g:yanked_buffer
if a:direction == ''edit''
let g:yanked_buffer = temp_buffer
endif
endif
endf "}}}
"yank/paste buffers
:nmap <silent> <leader>wy :let g:yanked_buffer=bufnr(''%'')<cr>
:nmap <silent> <leader>wd :let g:yanked_buffer=bufnr(''%'')<cr>:q<cr>
:nmap <silent> <leader>wp :call PasteWindow(''edit'')<cr>
:nmap <silent> <leader>ws :call PasteWindow(''split'')<cr>
:nmap <silent> <leader>wv :call PasteWindow(''vsplit'')<cr>
:nmap <silent> <leader>wt :call PasteWindow(''tabnew'')<cr>
Posible duplicado:
Para pasar de la división vertical a la división horizontal rápida en Vim
Si tengo 2 ventanas divididas horizontalmente, ¿cómo rotarlas para obtener 2 ventanas divididas verticalmente?
¿Y cómo cambiar los buffers?
Si los tiene divididos verticalmente Cw J para mover uno al fondo
Si los tiene divididos horizontalmente Cw L para mover uno a la derecha
Para rotar en una ''columna'' o ''fila'' de ventanas divididas, Cw Cr
Los siguientes comandos se pueden usar para cambiar el diseño de la ventana. Por ejemplo, cuando hay dos ventanas divididas verticalmente, CTRL-W K cambiará eso en ventanas divididas horizontalmente. CTRL-W H lo hace al revés.
CTRL - W SHIFT - H girará la orientación, CTRL - W H se mueve a la ventana izquierda, CTRL - W L se mueve hacia la derecha. Ver
:help split
y
:help ^w
para más información.
Ctrl-w H o escriba :wincmd H
para pasar del diseño horizontal al vertical .
Ctrl-w J o escriba :wincmd J
para pasar del diseño vertical al horizontal .
Ctrl- :wincmd r
o tipo :wincmd r
para intercambiar los dos búferes pero mantener el diseño de la ventana igual.
Ctrl-w w escriba :wincmd w
para mover el cursor entre las dos ventanas / búferes.
Es posible que desee vincular una o más de estas secuencias para que sea más rápido escribir. Puse esto en mi .vimrc para que , l mueva el cursor al siguiente buffer en la pestaña actual:
let mapleader = ","
nmap <Leader>l <C-w>w