vim으로 텍스트 편집하기

vim으로 텍스트 편집하기

Vim에서 세 번째 줄의 9개와 11개 기호를 삭제할 수 있는 명령을 작성하려고 합니다. 이렇게 했지만 3s/9, 11///예상했던 대로 아무 일도 일어나지 않았습니다. 귀하의 제안에 따라 이 작업을 수행해 주시면 감사하겠습니다. 더 정확하게 말하면 세 번째 줄에서 9번째 기호와 11번째 기호를 제거하고 싶습니다. 예를 들어 세 줄이 있습니다

  1. 바다 위 3미터
  2. 바다 아래 3미터
  3. vim에서 도움이 필요해요

그래서 "some" 단어의 "e" 문자인 세 번째 줄의 9번째 기호와 "help" 단어의 "h" 문자인 11번째 기호를 삭제하고 싶습니다.

답변1

여러 번 일치하는 방법은 27.4 Matching multiple times사용자 설명서의 27장 섹션에 설명되어 있습니다( 참조 :help usr_27.txt).

다음 명령은 줄에 9자 이상이 포함된 경우 줄 3의 처음 9, 10 또는 11자를 삭제합니다. 줄에 더 적은 문자가 포함되어 있으면 반환됩니다.E486: Pattern not found:

:3s/.\{9,11}//

그것이 당신이 원하는 것인지 확실하지 않은 경우 질문을 업데이트하십시오.

답변2

편집 모드에서 다음을 입력합니다.

08lxl.
  • 0 커서를 줄의 시작 부분으로 이동
  • 8l커서를 8자 앞으로 이동
  • x 커서 아래 문자 삭제
  • l 커서를 한 문자 앞으로 이동
  • . 마지막 명령 반복(x)

이를 키(예: )에 바인딩하려면 다음을 수행하세요 ,.

:map , 08lxl.

그 후 편집 모드에서 누를 때마다 ,해당 명령이 실행됩니다.

관련 정보