Vim : 현재 줄 위에 빈 줄을 삽입합니다 (열지 않음, 즉 삽입 모드로 들어 가지 않음)


21

줄을 열지 않고 전류 위에 새 줄을 삽입하는 방법이 있습니까 (따라서 삽입 모드로 들어 가지 않음)? 즉, "O"와 같지만 열리지 않습니다.


2
"라인 열기"는 무엇을 의미합니까?
Matteo Riva 2016 년

"라인 열기"는 일반 모드에서 삽입 모드로 전환하는 것을 의미합니다. "O"(oh)를 누르면 발생합니다.
tmadsen 2016 년

답변:


9

이 목적을 위해 특별히 명령이있는 Tim Pope의 플러그인을 준비했습니다 .

[<space>

그리고 선 뒤에 공백을 추가하려면 다음을 수행하십시오.

]<space>


29

요청의 정의는 O입니다.

논리적으로 위의 새 줄을 삽입하면 O됩니다.

커서 앞에 삽입하려면 다음을 수행하십시오. i
후 : a
라인 이전 (홈) : I
라인 끝에 추가하십시오.A

내가 올 것이라고 생각하는 가장 가까운 I것은 커서를 줄의 시작 부분에 놓는 것입니다.


어쩌면 나는 명확하지 않았다. 시나리오는 다음과 같습니다. 나는 정상 모드에 있으며 정상 모드를 유지하면서 현재 켜져있는 줄 위에 빈 줄을 삽입하려고합니다. "O"를 누르면 삽입 모드로 들어갑니다. 어쩌면 그것을 할 수있는 방법이없고 괜찮습니다. 그냥 물어
보겠다고

3
그냥 매핑 m`O+Esc`
Josh K

1
좋은 생각, 그것을 고려하지 않았다. : noremap <leader> O O <ESC>를
수행함

2tmadsen :이 <yourkey> O <ESC>를 매핑 할 수 있습니다
Dzung Nguyen

9
:h append()

커서를 움직이지 않고 원하는만큼 많은 행을 삽입 할 수 있으며 (비어 있음) 이전 위치 표시를 수정하지 않습니다.

call append(line('.')-1, '')

아아, 그것은 +1 깔끔합니다! / me는 vimrc를 변경합니다
akira

스크립팅과 관련하여 몇 가지 장점이 있습니다. 그렇지 않으면 타이핑하는 것이 약간 과잉입니다.
Luc Hermitte

설정 방법에 관계없이 작동하는 솔루션의 경우 +1formatoptions
Micah Smith

5

원하는 키 또는 키 시퀀스를 매핑 할 수 있습니다

m`O<ESC>``

커서를 변경하지 않고 일반 모드로 유지하면서 빈 줄을 현재 줄 위에 삽입합니다.


이를 Alt-O에 매핑하는 명령은 다음과 같습니다. map <Mo> m`O <ESC>``
K Robinson

맞습니다.
Matteo Riva 2016 년

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.