vi의 시각적 모드는 여러 줄의 끝에서 문자를 제거합니다.

vi의 시각적 모드는 여러 줄의 끝에서 문자를 제거합니다.
builder.append("sss");
builder.append("aaaaaaaaa");

마지막에 제거하고 싶습니다. sed의 다양한 스크립트를 사용하거나 vim의 모든 스크립트를 대체하여 이 작업을 수행할 수 있습니다.

그런데 비주얼 모드를 어떻게 사용하는지 알고 싶습니다.

시각적 모드로 들어가기 전이나 뒤에 추가하는 방법, j, Shift+i, 처음에 추가한 다음 끝에 Shift+$와 같은 것을 추가하는 방법을 알고 있습니다.

그러나 j, Shift + $, Shift + a, 백스페이스 및 esc를 사용하여 삭제하려고 하면 작동하지 않고 다음과 같은 결과가 나타납니다.

   builder.append("sss")
   builder.append("aaaaaaaaa");)

내가 뭘 잘못했나요?

답변1

여러 줄에 대해 이 작업을 수행하는 가장 쉬운 방법은 시각적 모드에서 블록을 표시한 다음 다음을 수행하는 것 같습니다.

:'<,'>s/;$//

이는 '<,'>"시각적 블록의 처음부터 끝까지"를 의미하며 :시각적 모드에서 누르면 자동으로 추가됩니다.

답변2

세미콜론 위에 커서를 놓고 x를 사용하여 삭제합니다.

VISUAL(Vim의 모드 가 아니라 vi의 시각적 모드(ex 모드와 구별됨)를 의미한다고 가정합니다 .)

한 번에 여러 줄에 대해 이 작업을 수행하려면 콜론 명령을 사용해야 합니다. Vim을 사용한다면 @Greg Hewgill의 답변이 답입니다. vi를 사용하는 경우 첫 번째 줄을 로 표시하고 ma마지막 줄을 로 표시 mb한 다음 모든 줄을 로 처리해야 합니다 :'a,'bs/;$//.

관련 정보