vim - 한글 - sublimetext 에서처럼 다중 라인 편집을 할 수 있습니까?




서브라임텍스트 자동완성 (4)

"글로벌"명령을 사용하는 경우 한 줄에 여러 행을 반복 할 수 있습니다.

:g/<search>/.<your ex command>

예:

:g/foo/.s/bar/baz/g

위의 명령은 foo가있는 모든 행을 찾고 해당 행의 bar를 모두 baz로 바꿉니다.

:g/.*/

모든 라인에서 할 것이다.

나는 gvim을 사용하기 시작했고, 어떻게 다중 행 편집이 gvim에서 작동하는지 이해할 수 없다.

예 :

원본 텍스트 :

asd asd asd asd asd;
asd asd asd asd asd;
asd asd asd asd asd;
asd asd asd asd asd;
asd asd asd asd asd;
asd asd asd asd asd;
asd asd asd asd asd;

ctrl + q, jjjjjj, $ everything을 선택한 다음 I를 눌러 여러 줄 삽입을 수행합니다.

제 의도는 첫 줄에 따옴표를 넣고 Esc 키를 누르는 것입니다.

asd "asd asd" asd asd;
asd asd asd asd asd;
asd asd asd asd asd;
asd asd asd asd asd;
asd asd asd asd asd;
asd asd asd asd asd;
asd asd asd asd asd;

어떻게 된 거예요? 나는 sublimetext의 것과 비슷한 행동을 기대했다.

어떻게 작동하는지 모르는 경우 모든 행에 대한 작업을 반복합니다. 그것을 어떻게 성취 할 수 있습니까? 그리고 vim은 여기서 무엇을하고 있습니까?


Vim에서이를 수행 할 수있는 몇 가지 방법이 있습니다. 어떤 것이 숭고한 본문과 가장 유사한 지 모르겠습니다.

첫 번째는 여러 줄 삽입 모드 를 통해 이루어집니다. 첫 번째 줄의 두 번째 "a"에 커서를 놓고 Ctrl-V 를 누른 다음 모든 줄을 선택한 다음 I 를 눌러 이중 따옴표를 넣습니다. <esc> 키를 누르면 모든 행에서 작업이 반복됩니다.

두 번째는 매크로를 통한 것입니다. 커서를 첫 번째 문자에 놓고 qa 로 매크로 기록을 시작하십시오. llll 오른쪽으로 이동하여 a 와 함께 삽입 모드로 들어가서 큰 따옴표를 넣고 삽입 모드를 종료하고 <home> (또는 이와 동등한 것)으로 행의 처음으로 돌아갑니다. j 를 눌러 한 행 아래로 이동하십시오. q 녹음을 중지하십시오. 그런 다음 @a 매크로를 재생하십시오. 여러번.

위의 방법 중 어떤 것이 당신을 위해 일합니까?


그것들은 위에 주어진 좋은 솔루션 중 하나이지만, Sublime과 같은 여러 개의 커서를 제공하는 플러그인을 사용해 볼 수도 있습니다.

나는 이것이 유망 해 보인다라고 생각한다 :

한동안 버려진 것처럼 보였지만 2014 년에는 약간의 공헌을했습니다.

그것은 꽤 강력합니다. 비록 흐름에 익숙해지기까지 조금 시간이 걸렸지 만 (꽤 숭고하고 비슷하지만 여전히 Vim과 같은 모달입니다).

내 경험으로는 다른 플러그인이 많이 설치되어있는 경우 충돌이 발생할 수 있습니다!

이 기능에 대한 다른 시도가 있습니다.

이러한 개선 사항을 알게되면 언제든지 편집하십시오.


vim 는 일을 잘 모르겠지만 흥미로운 결과입니다. 매크로가 작동하는 방식처럼 원하는 것을 설명하는 방식 ( :help macro ). 이런 식으로 매크로를 사용하여 원하는대로 할 수 있습니다 (일반 모드에서 시작).

  1. qa : 매크로를 레지스터에 기록하십시오.
  2. 0w : 0 라인의 시작, 한 단어 w 뛰십시오.
  3. i"<Esc> : 삽입 모드로 들어가서 " 삽입하고 정상 모드로 돌아갑니다.
  4. 2e : 두 번째 단어의 끝으로 이동하십시오.
  5. a"<Esc> : 추가 a " .
  6. jq 다음 행으로 이동하여 매크로 기록을 종료하십시오.

함께 취한 : qa0wi"<Esc>2ea"<Esc>

이제 @a 매크로를 실행하고, 마지막 매크로를 @@ 반복 할 수 있습니다. 나머지 파일에 적용하려면 99 행 이상이 아니라고 가정 [email protected] 와 같은 작업을 수행하십시오. 매크로 실행은 파일 끝에 도달하면 종료됩니다.

visual-block-mode (노멀 모드에서 시작)로 원하는 것을 얻는 방법은 다음과 같습니다.

  1. 첫 번째 인용구를 원하는 위치로 이동하십시오.
  2. visual-block-mode 입력하고, 영향을주고 싶은 라인을 선택하고, G 를 클릭하여 파일의 맨 아래로 가십시오.
  3. I"<Esc> .
  4. 삽입하고자하는 다음 지점으로 이동하십시오. "
  5. 방금 한 일을 반복하기를 원합니다 . 충분할 것이다.




text-editor