어떻게 수직 분할 및 그 수평 분할에서 현재 창 빔에 반대 전환 할 수 있습니다?
나는 그 순간 우연히 그 일을했지만 열쇠를 다시 찾을 수는 없습니다.
어떻게 수직 분할 및 그 수평 분할에서 현재 창 빔에 반대 전환 할 수 있습니다?
나는 그 순간 우연히 그 일을했지만 열쇠를 다시 찾을 수는 없습니다.
답변:
Vim 메일 링리스트 는 다음과 같이 말합니다 (가독성 향상을 위해 다시 포맷).
두 개의 세로 분할 창을 가로 분할로 변경하려면
Ctrl- w t Ctrl-w K
가로에서 세로로 :
Ctrl- w t Ctrl-w H
설명 :
Ctrl- w t 첫 번째 (왼쪽 위) 창을 현재로 만듭니다.
Ctrl- w K 맨 위의 현재 창을 전체 너비로 이동
Ctrl- w H 왼쪽에서 현재 창을 전체 높이로 이동
t는 소문자이고 K와 H는 대문자입니다.
드롭 수있는 것처럼 또한, 두 개의 창으로 보인다 Ctrl- w t당신이 현재 만드는 점은 무엇입니까, 두 개의 창 중 하나에 이미 있다면 때문에 부분을?
:nmap <leader>th <C-w>t<C-w>H
와:nmap <leader>tk <C-w>t<C-w>K
Ctrl- w다음 H, J, K또는 L(자본)에 현재 창을 이동 맨 left
, bottom
, top
또는right
각각 같은 일반 커서 탐색.
소문자 등가물은 창을 이동하는 대신 포커스를 이동합니다.
Ctrl
- w
( 귀하의 예에서 ^
의미 Ctrl
가 있는지 모르겠습니다 ).
^
방법을 Ctrl
.
다음 ex 명령은 여러 창을 (재) 분할합니다 :
:vertical ball
:ball
숨겨진 버퍼가있는 경우이 명령을 실행하면 숨겨진 버퍼도 표시됩니다.
:vert[ical] ball
문서에서 확인 :vert ball
도 짧고 짧습니다.
:ball
3 개의 수직 창을 2 개의 수평 창으로 줄이면서 :vert ball
3 개의 수평 창을 3 개의 수직 창에 올바르게 매핑합니다.
가로에서 세로로 분할
Ctrl+ W창 명령의 경우 Shift+ H또는 Shift+L
수직에서 수평 분할
Ctrl+ W창 명령의 경우 Shift+ K또는 Shift+J
두 개의 창이 존재하는 경우 두 솔루션이 모두 적용됩니다.
이 두 줄을 다음에 추가하십시오 .vimrc
.
cabbrev help vert help
cabbrev h vert h
:vert[ical] {cmd}
항상 cmd
수직 분할 창에서 실행합니다 .
Steve의 답변에서 영감을 얻어 현재 탭의 모든 창에 대해 세로 및 가로 분할을 전환하는 간단한 기능을 작성했습니다. 아래 마지막 줄에서와 같이 매핑에 바인딩 할 수 있습니다.
function! ToggleWindowHorizontalVerticalSplit()
if !exists('t:splitType')
let t:splitType = 'vertical'
endif
if t:splitType == 'vertical' " is vertical switch to horizontal
windo wincmd K
let t:splitType = 'horizontal'
else " is horizontal switch to vertical
windo wincmd H
let t:splitType = 'vertical'
endif
endfunction
nnoremap <silent> <leader>wt :call ToggleWindowHorizontalVerticalSplit()<cr>
if winnr() == 1 windo wincmd J windo wincmd k else windo wincmd J endif
및 if winnr() == 1 windo wincmd L windo wincmd h else windo wincmd L endif
희망 메이크업 감각이.