(g) Vim에서 커서를 이전 위치로 이동시킬 수 있습니까 (정상 모드에서)? 이전 커서 위치 목록에서 앞뒤로 순환하는 것이 이상적입니다. 그러나 마지막 위치로 전환하는 것만으로도 충분합니다 ( cd -
디렉토리가있는 bash와 같은 것 ).
다음은 약간의 데모입니다.
line |1| <- cursor position
line 2
line 3
line 4
그리고 내가 2j
했다고 가정 해보 십시오.
line 1
line 2
line |3| <- cursor position
line 4
이제 2k
첫 번째 위치와 이전 위치로 돌아 가기 위해 (명백하지 않은) 무언가를 누르 려고합니다.
답변
가장 빠른 방법은 다음 중 하나를 누르는 것입니다.
''
(두 아포스트로피) 또는 :
``
(두 백틱). 차이점은 백틱이 줄의 동일한 위치로 가고 아포스트로피가 줄의 시작으로가는 것입니다. 영국 키보드에서 아포스트로피는 더 접근하기 쉽기 때문에 그 키보드를 사용하는 경향이 있습니다. 이와 같은 유용한 마크가 많이 있습니다 :help mark-motions
.
다른 모션 ( 2j생각 하지 않을 것)에는 여러 모션간에 앞뒤로 이동할 수있는 점프 목록도 있습니다. CtrlO그리고 CtrlI이 탐색을 수행하지만, 참조 :help jump-motions
자세한 내용은.
답변
이전 편집 위치 목록에서 g;
및 g,
을 사용 하여 앞뒤로 이동할 수도 있습니다 .
미국 이외의 키보드
스위스 및 독일어 키보드 레이아웃에서 입력하기가 ;
불편하면 Shift키를 사용해야합니다 . 따라서 다음 g-
에서 더 편리한 별칭으로 정의 g;
했습니다 $MYVIMRC
.
" Map g- as an alias for g;
nnoremap g- g;
답변
왜 DrAl의 답변에 대한 문제를 아무도 찾지 못했 습니까? ''또는 ``이 게시물의 원래 문제가 해결되지 않습니다! 이 두 명령은 2j적어도 나와 같은 일부 커서 이동에는 작동하지 않습니다 . 초보자가 더 혼란 스러울 수 있습니다.
''또는 의 동작 ``및 CtrlI/ 또는 CtrlO점프 목록을 기반으로합니다. 은 2j그래서 이러한 명령하지 않습니다 작업 점프 목록에 위치 변경 내용을 저장하지 않습니다 2j.
''또는 ``마지막 위치와 현재 위치 사이를 전환하십시오.
CtrlI및 CtrlO점프 목록의 역사를 통해 작동합니다.
g;그리고 g,매우 자주 사용되는 편집 위치를 통해 이동합니다.
답변
도움말에서 바로 (: help jump) :
: ju [mps] 모션리스트가 아닌 점프리스트를 인쇄합니다. {not in Vi} {+ jumplist | 없이는 사용할 수 없습니다 | 특색}
*jumplist*
점프는 점프 목록에 기억됩니다. CTRL-O 및 CTRL-I 명령을 사용하면 이전 점프 전에 커서 위치로 이동했다가 다시 돌아갈 수 있습니다. 따라서 목록을 위아래로 이동할 수 있습니다. 각 창마다 별도의 점프 목록이 있습니다. 최대 항목 수는 100으로 고정되어 있습니다. {+ jumplist | 없이는 사용할 수 없습니다. 특색}