vim을 사용하여 텍스트 편집

vim을 사용하여 텍스트 편집

저는 Vim에서 세 번째 줄의 9와 11 기호를 제거하는 명령을 작성하려고 합니다. 이렇게 했는데 3s/9, 11///예상대로 아무 일도 일어나지 않았습니다. 우리는 귀하의 제안에 매우 감사하겠습니다. 더 정확하게 말하면 세 번째 행의 9번째와 11번째 기호를 제거하고 싶습니다. 예를 들어 세 줄이 있습니다

  1. 바다에서 3미터
  2. 해발 3미터 아래
  3. vim에 대한 도움이 필요합니다

그래서 세 번째 행의 9번째 기호("some"의 문자 "e")와 "help"라는 단어의 "h" 문자인 11번째 기호를 제거하고 싶습니다.

답변1

27.4 Matching multiple times다중 매칭은 사용자 매뉴얼 27장에 부분적으로 설명되어 있습니다(참조 :help usr_27.txt).

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

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

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

답변2

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

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

키에 바인딩하려면(예 ,: ):

:map , 08lxl.

,이후에는 편집 모드에서 누를 때마다 이러한 명령이 실행됩니다.

관련 정보