vim의 zz와 수평으로 동일

vim의 zz와 수평으로 동일

vim을 누르면 zz화면/뷰가 커서 위치의 수직 중앙에 배치됩니다.

동일한 작업을 수평으로 어떻게 수행할 수 있습니까? vim 명령이 있습니까?

답변1

단일 Vim 명령은 없지만 결합할 수 있습니다.zs그리고zH:스크롤 화면 왼쪽에 커서를 놓은 다음 화면 너비의 절반을 오른쪽으로 스크롤합니다.

내 안에는 다음과 같은 매핑이 있습니다 ~/.vimrc.

" Horizontally center cursor position.
" Does not move the cursor itself (except for 'sidescrolloff' at the window
" border).
nnoremap <silent> z. :<C-u>normal! zszH<CR>

답변2

이는 질문에 대한 직접적인 대답은 아니지만 근본적인 문제에 대한 다른 해결책일 수 있습니다. 제 경우에는 매우 긴 줄에 문제가 있었습니다. 오른쪽이 화면에서 떨어져 나가고 커서가 오른쪽으로 상당히 멀리 떨어져 있었습니다.

:set sidescrolloff=<number of characters>

흥미롭게도 여기에 큰 숫자만 입력하면 화면 중앙으로 제한되는 것 같습니다. 이렇게 하면 커서가 항상 화면의 수평 중앙에 있기 때문에 "zz"와 같은 동작을 수행할 필요가 없습니다(왼쪽 가장자리를 클릭하지 않는 한).

완전성을 위해 수직으로 동등한 것을 원한다면 다음을 사용할 수 있습니다.

:set scrolloff=<number of lines>

관련 정보