삽입 모드에서 텍스트 탐색


321

에있는 동안 삽입 모드 빔에서, 화살표 키를 사용하는 것보다 앞으로 다른 역 일부 문자를 이동 텍스트를 통과 할 수있는 방법은 무엇입니까?

나는 누르면 h, j, k및 l삽입 모드에있는 동안, 실제 문자 대신 텍스트를 이동 화면에 출력된다.

내가 지금하고있는 방식은 Ctrl+ [( Esc) 에 의존 하고 텍스트를 순회해야합니다. 그러나 분명히 그것은 생산적이지 않습니다.


따로 팁 : 이스케이프를 더 가까운 키 조합 (예 :)에 매핑 imap jk <Esc>하여 운동량을 깨고 키보드를 가로 질러 키를 누를 필요가 없도록하는 것도 도움이됩니다 .
— tsujin April

3
나는 그것을 대신에 <ESC>매핑하는 것을 좋아한다 . 내 친구 Dijkstra 가 책임을 져야합니다! kjjk
— Dr Beco

7
나는이 jk와 kj난 그냥 두 손가락으로 큰 버튼처럼 눌러 내가 정상에 돌아 왔어요 순서를 중요하지 않습니다, 그래서.
— Edu Ruiz

답변:


648

vim을 잘못 사용하는 것 같지만 그 기능에 익숙하지 않기 때문일 수 있습니다.

올바른 방법 은 을 누르고 Esc작은 수정을 원하는 곳으로 이동하여 수정 한 후 되돌아 가서 편집을 계속하는 것입니다. Vim은 일반적인 문자 앞으로 / 뒤로 / 위로 / 아래로보다 훨씬 많은 이동을하기 때문에 효과적입니다. 더 많은 것을 배우면 더 생산적이 될 것입니다.

다음은 몇 가지 사용 사례입니다.

  • 실수로 "우발적으로"입력했습니다. 문제 없습니다. 시퀀스 EscFfrdA는 실수를 바로 잡아서 편집했던 곳으로 돌아갑니다. 이 Ff동작은 커서를 처음 발견 된 "f"문자로 뒤로 이동시킵니다. 일반 편집기에서 거의 동일하지만 더 많은 키 입력을 사용하여 키보드의 영숫자 영역에서 손을 옮길 수 있는 Ctrl+ 와 비교하십시오 ←→→→→DeldEnd.
  • 실수로 "실수로 입력 한"내용을 입력했지만 "의도적으로 입력 한"내용으로 수정하려고합니다. 그런 다음 Esc2bcw수정하려는 단어를 지우고 삽입 모드로 전환하면 즉시 다시 입력 할 수 있습니다. 편집으로 돌아가려면 A대신 대신을 누르기 만하면 키 End에 도달하기 위해 손을 움직일 필요가 없습니다 End.
  • 실수로 "마우스"대신 "마우스"를 입력했습니다. 문제가 없습니다-좋은 Ctrl+ w는 삽입 모드를 벗어나지 않고 이전 단어를 삭제합니다. 그리고 작은 단어를 지우는 것이 오류를 수정하는 것보다 훨씬 빠릅니다. 나는이 메시지를 입력 할 때 브라우저 페이지를 닫을 정도로 익숙해졌습니다 ...!
  • 반복 횟수가 많이 사용되지 않습니다. 이동하기 전에 숫자를 입력 할 수 있습니다. 이 횟수만큼 움직임이 반복됩니다. 예를 들어 15h커서를 15 자로 되돌리고 4j 커서를 4 줄 아래로 이동합니다. 그것들을 사용하기 시작하면 곧 익숙해 질 것입니다. 커서에서 실수로 10자를 잘못 입력 한 경우 ←키를 10 번 누르는 것이 커서를 이동하는 반복적 접근보다 훨씬 느리다는 것을 알 수 있습니다. 따라서 키를 빠르게 입력하고 12h(커서를 이동하는 데 필요한 문자 수를 대략적으로 추측 할 수 있음) ll오류를 빠르게 수정하기 위해 즉시 두 번 앞으로 이동할 수 있습니다 .

그러나 삽입 모드를 벗어나지 않고 작은 텍스트 순회 를 계속 하려면 rson 의 조언을 따르고 Ctrl+를 사용하십시오 O. 위에서 언급 한 첫 번째 예를 살펴보면 Ctrl+ OFf는 이전 "f"문자로 이동하고 삽입 모드를 유지합니다.


33
+1 훌륭한 답변과 여러분이 주신 모든 사례에 감사드립니다!
— Andreas Grech

79
Ctrl+o일반 모드에서 단일 명령을 실행하는 데 사용할 수 있다는 점도 주목할 가치가 있습니다 . 이것은 특히 t / T 및 f / F 이동 명령과 결합 될 때 원하는 위치로 이동할 수 있습니다.
— 랜디 모리스

6
"당신은 vim을 잘못 사용하는 것처럼 보이지만, 당신은 그것에 익숙하지 않을 것입니다." 조금 혼란 스러워요. 아니?
— David Rivers

17
이것은 Vim을 올바르게 사용하는 방법에 대한 훌륭한 통찰력입니다. 그러나 "Esc"를 누르는 것이 고통스럽기 때문에 "imap jj <esc>"와 같이 더 접근하기 쉬운 키를 해당 기능에 매핑 할 수 있다고 지적 할 가치가 있다고 생각합니다.
— Symmetric

25
오타를 수정하려면 삽입 모드를 종료 하지 않아야 합니다. Vim은 원자적이고 반복 가능한 작업을 생성하기 때문에 강력합니다. 오타를 삽입하고 수정하면 두 가지 별도의 작업이 생성됩니다. 삽입 모드를 벗어나지 않고 오타를 수정하는 올바른 방법입니다. 그것이 화살표 키를 사용하여 거기를 탐색한다는 의미라면 괜찮습니다. Vim은 삽입 모드에서 탐색 할 키 바인딩이 있습니다. 확인하십시오 :h ins-special-keys. ctrl-h: 백 스페이스, ctrl-w: 단어 삭제, ctrl-u: 줄의 시작으로 삭제, alt-b: 단어를 뒤로 이동합니다.
— everett1992

152

에있는 동안 삽입 모드 사용 CtrlO에 가서 일반 모드 단 하나의 명령 :

CTRL-O h  move cursor left 
CTRL-O l  move cursor right
CTRL-O j  move cursor down
CTRL-O k  move cursor up

아마도 당신이 원하는 것을 가장 쉽게 기억할 수있는 가장 쉬운 방법 일 것입니다.

삽입 모드의 다른 유용한 컨트롤 키 :

CTRL-W    delete word to the left of cursor
CTRL-O D  delete everything to the right of cursor
CTRL-U    delete everything to the left of cursor
CTRL-H    backspace/delete
CTRL-J    insert newline (easier than reaching for the return key)
CTRL-T    indent current line
CTRL-D    un-indent current line

이렇게하면 많은 낭비 스위치가 다시 일반 모드로 돌아갑니다.


13
감사합니다. 정답으로 간주해야합니다. 실제로 도움이됩니다.
— Atcold

1
Mac에서는 대문자 O가 아닌 소문자 o입니다. "표준 vim"과 다른가요? 나는 그들이 대소 문자를 쓰는 것처럼 보이는 곳을 많이 본다. 확인 할수 있어요?
— Floris

매우 유용합니다. 그러나 흥미로운 조합은 찾기가 어렵고 이것은 라인을 제거하는 것입니다. 선을 우연히 삽입하는 경우해야 할 일이 매우 과소 평가 된 것입니다.
— patrik

5
@Floris Vim은 Ctrl 조합의 대문자와 소문자를 구분하지 않습니다. ctrl + shift + something을 매핑 할 수없는 이유입니다.
— Mahmoud Al-Qudsi

92

삽입 모드

운동

hjkl

Pavel Shved의 말 에도 불구하고 Esc삽입 모드 에 익숙해지는 것이 더 좋습니다 . 삽입 모드 내에서 빠른 탐색을위한 매핑 예제는 다음과 같습니다.

" provide hjkl movements in Insert mode via the <Alt> modifier key
inoremap <A-h> <C-o>h
inoremap <A-j> <C-o>j
inoremap <A-k> <C-o>k
inoremap <A-l> <C-o>l

이렇게하면 삽입 모드에서 Alt+ h가 한 문자 왼쪽, Alt+ j아래로 이동하고 hjkl일반 모드 와 유사하게 됩니다.

vim을 시작할 때마다로드되도록 vimrc 파일에 해당 코드를 복사해야합니다 ( :new $myvimrc일반 모드에서 시작 을 입력하여 열 수 있음 ).


모든 일반 모드 움직임

Alt수정 자 키는 기본적으로 (중요한 것으로) 매핑되지 않기 때문에 같은 방식으로 다른 (또는 모든) 기능을 일반 모드에서 삽입 모드로 가져올 수 있습니다. 예 : +
를 사용하여 현재 단어의 시작으로 이동 :Altb

inoremap <A-b> <C-o>b
inoremap <A-w> <C-o>w


( Alt삽입 모드에서 다른 용도 )

Alt정상 모드 동작을 복제 하는 것보다 키를 더 잘 사용할 수 있다는 점을 언급 할 가치가 있습니다 .

" Insert the rest of the line below the cursor.
" Mnemonic: Elevate characters from below line
inoremap <A-e> 
    \<Esc>
    \jl
        \y$
    \hk
        \p
        \a
" Insert the rest of the line above the cursor.
" Mnemonic:  Y depicts a funnel, through which the above line's characters pour onto the current line.
inoremap <A-y> 
    \<Esc>
    \kl
        \y$
    \hj
        \p
        \a

( 명확성을 높이기 위해 \ 줄 연속 및 들여 쓰기를 사용 했습니다. 명령은 한 줄로 작성된 것처럼 해석됩니다.)


편집을위한 내장 단축키

CTRL-H   delete the character  in front of the cursor (same as <Backspace>)
CTRL-W   delete the word       in front of the cursor
CTRL-U   delete all characters in front of the cursor (influenced by the 'backspace' option)

(삽입 모드에서는 움직임에 대한 눈에 띄는 내장 단축키가 없습니다.)

참고: :help insert-index


명령 줄 모드

이 맵핑 세트 는 명령 행에서 위 Alt+ hjkl 이동을 사용 가능 하게합니다 .

" provide hjkl movements in Command-line mode via the <Alt> modifier key
cnoremap <A-h> <Left>
cnoremap <A-j> <Down>
cnoremap <A-k> <Up>
cnoremap <A-l> <Right>

또는 이러한 매핑은 움직임 을 한 번에 삽입 모드와 명령 줄 모드 로 추가합니다.

" provide hjkl movements in Insert mode and Command-line mode via the <Alt> modifier key
noremap! <A-h> <Left>
noremap! <A-j> <Down>
noremap! <A-k> <Up>
noremap! <A-l> <Right>


대한 매핑 명령 명령 줄 모드로 일반 모드 명령을 당기은 (명령 줄 모드가 삽입 모드의 부족 때문에 삽입 모드 매핑 명령의 비트 다른 모양 Ctrl+를 O)

" Normal mode command(s) go… --v <-- here
cnoremap <expr> <A-h> &cedit. 'h' .'<C-c>'
cnoremap <expr> <A-j> &cedit. 'j' .'<C-c>'
cnoremap <expr> <A-k> &cedit. 'k' .'<C-c>'
cnoremap <expr> <A-l> &cedit. 'l' .'<C-c>'

cnoremap <expr> <A-b> &cedit. 'b' .'<C-c>'
cnoremap <expr> <A-w> &cedit. 'w' .'<C-c>'


이동 및 편집을위한 내장 단축키

CTRL-B       cursor to beginning of command-line
CTRL-E       cursor to end       of command-line

CTRL-F       opens the command-line window (unless a different key is specified in 'cedit')

CTRL-H       delete the character  in front of the cursor (same as <Backspace>)
CTRL-W       delete the word       in front of the cursor
CTRL-U       delete all characters in front of the cursor

CTRL-P       recall previous command-line from history (that matches pattern in front of the cursor)
CTRL-N       recall next     command-line from history (that matches pattern in front of the cursor)
<Up>         recall previous command-line from history (that matches pattern in front of the cursor)
<Down>       recall next     command-line from history (that matches pattern in front of the cursor)
<S-Up>       recall previous command-line from history
<S-Down>     recall next     command-line from history
<PageUp>     recall previous command-line from history
<PageDown>   recall next     command-line from history

<S-Left>     cursor one word left
<C-Left>     cursor one word left
<S-Right>    cursor one word right
<C-Right>    cursor one word right

<LeftMouse>  cursor at mouse click

참고: :help ex-edit-index


@YugalJindle : 감사합니다! :) 이제 커맨드 라인 모드 조정에 대한 정보를 추가했습니다. (이 방법은 삽입 모드와 약간 다릅니다.)
— Aaron Thoma

@ 젠 : "윈키"는 무슨 뜻입니까? 내 대답에서 Windows 키를 참조하지 않았습니다. Alt열쇠 를 의미 합니까?
— Aaron Thoma

Shift-왼쪽 / 오른쪽으로 전체 단어를 이동하십시오 !! 나는 그것을 어떻게 알지 못했다. 감사합니다.
— Floris

실제로 터미널 모드에서 alt는 명령 전에 자동으로 esc를 보냅니다 ........
— Fuseteam

26

독창적 인 순수 주의자라면이 답변을 읽는 것을 건너 뛰십시오. OTOH, vim을 처음 사용하고 수백 가지 vim 튜토리얼과 블로그에서 찾을 수없는 몇 가지 유용한 팁을 찾고 있다면 ... :-)

정통적이지 않은 (vim) 방법

그것은 2014 년이며, 최근에 돌아온 사람은 vim잠재적으로 모순되는 몇 가지 관점과 팁을 제공 할 수 있습니다.

단어를 통과하려면 shift + left 또는 shift + right를 사용하십시오.

반복은 vim에서 강력한 개념이지만, (개인적으로) 그것을 사용하면 나를 세어 (줄, 문자, 단어 등)를 추측하거나 추측하게 만드는 것이 이상하다고 생각합니다. 내 뇌는 일반적으로 "나는 커서를 원하는처럼 작동 이 "나는 커서 _5_words_to_the_left_ 싶다 "가 아니라 같은"를. 커서를 빠르게 움직여서이 방법으로 삽입 지점을 시각적으로 관찰하면 편집 할 위치에 도달하는 데 필요한 홉 수를 세는 대신 편집중인 대상을 기억할 수 있습니다.

마우스 모드를 켜고 마우스 휠을 사용하여 클릭

... 큰 본문을 탐색합니다.

대부분의 현대 컴퓨터에는 키보드 (예 : MacBook)와 밀접하게 통합 된 터치 패드 가 있습니다. 산업 설계자들은 키보드에서 손을 옮겨야하는 오래된 문제가 더 이상 실제 문제가되지 않도록 이러한 설계를 최적화하는 데 많은 시간을 보냈습니다. 좋아, 그것은 마우스에 익숙하고 전환을 좋아하지 않지만 vim을 처음 접하는 사람 (검색을 통해이 게시물을 찾을 수있는 사람들)에게는 큰 문제가되지 않습니다.

보너스로 클릭 + 드래그는 시각적 모드로 전환합니다

마우스가 활성화 된 상태에서 클릭 및 드래그는 비주얼 모드로 전환하고 영역을 표시 할 수 있습니다.

그리고 스크롤 휠을 사용하십시오

마우스 (휠)를 사용하여 스크롤하고 클릭하여 커서 (duh)를 배치하면 작동합니다. 이에 대한 자세한 내용은 http://usevim.com/2012/05/16/mouse/ 를 참조하십시오 .

그리고 ...

이것들은 vim에서 탐색하는 더 현대적인 (마우스, 스크롤 휠 등을 사용하여) 호출하는 방식이며 입력 선호도에 따라 동일하게 효과적입니다.

HTH


6
@MilesRout 네, 면책 조항이 있습니다. 그러나 진지하게, 나는 두뇌가 나와 같은 방식으로 일하는 vim 사용자의 비율이 높다고 생각합니다. 저의 뇌는 보통 "커서를 원합니다"처럼 작동하고 "커서를 원합니다" 원한다 " . 그리고 전통적인 vim 방식은 그 사람들에게는 잘 작동하지 않습니다. 나는 vim을 좋아한다. a) 어디에서나 사용할 수 있고 b) 강력한 기능을 가지고 있기 때문이다. 그러나 기본 메커니즘을 모두 준수해야 할 필요는 없습니다.
— Shyam Habarakada

4
@MilesRout vim에는 이런 종류의 일에 대해 많은 종교가 있기 때문에 이에 대해 토론하지 않겠습니다. 반복 횟수 방법은 나에게 도움이되지 않으며 받아 들인 대답은 그것을 많이 사용하지 않는 것으로 부릅니다. 왜 그런지 추측 할 수 있습니다. 주변 장소를 탐색하기 위해 w, b 등을 사용하는 것은 훌륭하지만, 더 나아 가기 위해서는 마우스 휠이 훨씬 잘 작동합니다. 건배.
— 시암 하 바라카 다

4
+1. 나는 투표를 이해하지 못한다. 면책 조항이 있습니다. 마음에 들면 가져 가서 좋아하지 않으면 건너 뛰십시오.
— fangmobile.com

이것은 매우 유용한 답변입니다
— Slava

1
최근 VIM으로 이사 한 사람 으로서이 답변의 전제는 절대적으로 자리 잡았습니다. 주어진 위치에 커서를 배치하는 데 필요한 반복 횟수를 즉시 알려주는 기능은 함께 제공되거나 제공되지 않을 수도 있습니다. 경험. 현재 @ShyamHabarakada와 마찬가지로 내 두뇌는 그렇게 작동하지 않습니다. 이것이 어떻게 정통적이지 않든간에, 나는 아주 작은 움직임을 위해 화살표 키로 개인적으로 fn + hjkl을 다시 매핑했습니다. 큰 움직임의 경우 일반적으로 여러 번의 반복을 근사한 다음 미세 조정합니다. 나를 위해, 그것은 내가 얻을 수있는 한 빨리입니다.
— Jacoscaz

14

Vim 커뮤니티의 많은 사람들은 삽입 모드에서 탐색해서는 안되며 Vim 방식이 아니라고 주장합니다. 나는 이것이 표준 편집기에서 Vim으로 전환 할 때 배운 잘못된 감정이라고 생각합니다.

Vim은 도구를 사용하여 원자적이고 반복 가능한 동작 또는 찾기를 만들 때 가장 강력합니다.

동일한 삽입 세션에서 실수를 수정 한 경우 삽입 모드에서 탐색해도됩니다 . 수정 한 텍스트 범위를 벗어나 탐색해서는 안됩니다.

텍스트를 입력하는 동안 실수를하고 삽입 모드를 벗어나서 수정하면 의도 한 동작을 반복 할 수 없으며 수정을 반복합니다 ..

Vim은 많은 삽입 모드 탐색 키를 지원합니다. 분명히 화살표 키, Home 및 End가 있지만 다른 바로 가기도 많이 있습니다. 참조하십시오 :h ins-special-keys.


4

GVim에서는 마우스를 사용할 수 있습니다. 그러나 솔직히 화살표 키를 사용하여 무엇이 잘못 되었습니까? 그들이 키보드에있는 이유가 있습니다.


9
그러나 그 이유는 vim 사용자에게 적합하지 않습니다. vim의 핵심 강점 중 하나는 시간을 들여 키보드를 집으로 가져 가지 않고도 모든 종류의 일을 할 수 있다는 것입니다. 특히, hjkl 움직임.
— Aaron Thoma 2016 년

1
@ammoQ에 동의합니다. 화살표 키를 사용하는 데 아무런 문제가 없습니다. 화살표 키를 사용하여 생산성을 높이는 경우 화살표 키를 사용하십시오.
— 송은우

찬사 : vi를 사용할 때 화살표 키보다 hjkl을 더 자주 사용하지만 모드 간 전환은 잠재 의식적인 행동이되었습니다.
— Erich Kitzmueller

4

삽입 모드에서 좀 더 나은 탐색을하려면 일부 키를 매핑하지 않으시겠습니까?

imap <C-b> <Left>
imap <C-f> <Right>
imap <C-e> <End>
imap <C-a> <Home>
" <C-a> is used to repeat last entered text. Override it, if its not needed

터미널에서 메타 키를 사용하여 작업 할 수 있다면 emacs 모드를 더 잘 조롱 할 수 있습니다. 일반 모드 의 탐색은 더 좋지만 이동이 짧을수록 삽입 모드를 유지하는 데 도움이됩니다.

더 길게 점프하려면 다음 기본 변환을 선호합니다.

<Meta-b>    maps to     <Esc><C-left>

이 모드 는 일반 모드로 전환 되고 단어가 다시 나타납니다.


2

나는 생각 Home과 End(와 PageUp/ PageDn)는 삽입 모드에있는 동안 정상적으로 작동하지만 그 옆에서, 나는 텍스트 탐색을 위해 정의 된 다른 표준 키가 믿지 않는다.


그러나 문자 키만 사용하여 텍스트를 순회하는 방법이 없을 수 있습니까?
— Andreas Grech 10

5
확실히, 특정 글자를 입력하고 싶지 않다면 ...;)
— hobbs

ctrl + hjkl은 어떻습니까? 이해가 될 것입니다
— user4052054

1

죄송하지만 vim은 그런 식으로 작동하지 않습니다.

"일반"모드로 전환하고 탐색 한 후 다시 삽입하여 다시 삽입해야합니다.


1

삽입 모드에서 작동하는 매핑을 만들 수 있습니다. 이를 수행하는 방법은 inoremap을 사용하는 것입니다. 명령 시작시 'i'를 참고하십시오 (키맵 충돌을 피하기 위해 noremap이 유용합니다). '정상'모드의 경우 결과는 'n'입니다. vim이 '정상'이라고 생각하는 것을 추측 할 수 있습니다.)

그러나 '정상'모드를 사용하여 텍스트를 탐색하고 싶을 것입니다. Vim은 이런 종류의 슈퍼이며 모든 전원은 일반 모드에서 사용할 수 있습니다. Vim은 이미 일반 모드에서 삽입 모드 (예 : i, I, a, A, o, O)로 전환하는 쉬운 방법을 제공합니다. 비결은 일반 모드로 쉽게 들어가는 것입니다. 그렇게하는 방법은 이스케이프를보다 확실한 키로 다시 매핑하는 것입니다. 그러나 일반 입력과 충돌하지 않는 것이 필요합니다. 나는 사용한다:

inoremap jj <Esc>

jj (즉, 2 j가 차례로 빠르게 입력 됨)가 내 어휘에 나타나지 않는 것 같습니다. 다른 사람들은 편안한 곳으로 다시 매핑합니다.

또 다른 필수 변경 사항은 CAPSLOCK을 거의 사용하지 않으며 원하는 위치에 크고 아름다운 버튼이 있기 때문에 (호스트 컴퓨터의 키보드 구성을 사용하여) 키보드의 CAPSLOCK 및 CONTROL 키를 전환하는 것입니다. (이맥스 사용자에게 일반적입니다. 단점은 '고정되지 않은'키보드에서 자신을 발견 할 때입니다! Aaarggh!)

CAPSLOCK을 다시 매핑하면 다음 삽입 모드 다시 매핑을 편안하게 사용할 수 있습니다.

일부 키는 이미 삽입 모드 (기본적으로 back-kill-word는 Cw (Control-w))로 매핑되어 있으므로 원하는 바인딩이 이미있을 수 있습니다. 즉, .vimrc에서 Ch를 선호합니다. :

inoremap <C-h> <C-w>

그러나 정상 모드에서 동일한 근육 기억 경련을 원할 것이므로 Ch를 다음과 같이 매핑합니다.

nnoremap <C-h> db

(d) elete (b) ackwards는 동일한 키 코드로 동일한 것을 수행합니다. 이런 종류의 빠른 편집은 오타에 실제로 유용하다고 생각되는 것입니다. 그러나 텍스트에서 이전 단어를 죽이는 것 이상으로 이동하려면 일반 모드를 사용하십시오. 리맵을 사용하여 모드를 변경하는 습관이 생기면 삽입 모드를 다시 매핑하는 것보다 훨씬 효율적입니다.


탈출을위한 멋진 재지도-나는 음역 아랍어를 제외하고는 거의 작동 할 것이라고 생각합니다!
— jjt

0

imap삽입 모드의 모든 키를 커서 키 중 하나에 매핑하는 데 사용할 수 있습니다 . 이렇게 :

imap h <Left>

이제 h는 일반 모드 에서처럼 커서를 움직입니다. (이 방법으로 h를 매핑하는 것은 분명히 나쁜 선택입니다)

VIM을 사용하여 텍스트를 이동하는 표준 방법이 "생산적이지 않다"고 생각합니다. 일반 모드에서 텍스트를 순회하는 매우 강력한 방법이 많이 있습니다 (예 : w 및 b 또는 / 및? 또는 f 및 F 등 사용).


1
vim에서 텍스트를 이동하는 표준 방법이 생산적이지 않다고 말하지 않았습니다. 내가 말한 것은 약간의 "성가신"상태였으며, 몇 개의 문자를 다시 입력하기 위해 삽입 모드를 빠져 나간 다음 다시 삽입하기 위해 다시 돌아 가야했습니다. 나는 꽤 :) 아직 정력에 익숙해하지 않았기 때문에하지만 다시, 어쩌면이다
— 안드레아스 GRECH

이것이 내가 찾고있는 해결책입니다. 나는 imap <Ch> <Left> (문자를 삭제하지만 백 스페이스가 있음)를 사용합니다. 감사합니다.
— user4052054

0

자주 사용되는 움직임과 동작에 대해 다음과 같은 매핑을 정의했습니다. 이렇게하면 CTRL + O 조합에 비해 키 입력이 줄어들고 자주 필요하므로 장기적으로 비용을 지불합니다.

inoremap <A-$> <C-o>$
inoremap <A-^> <C-o>^
inoremap <A-h> <Left>
inoremap <A-l> <Right>
inoremap <A-O> <C-O>O
inoremap <A-o> <C-o>o
당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.