선행 공백을 포함하지 않는 "와 유사한 동작이 있습니까?


10

a"vim에서 모션을 자주 사용하고 있습니다 . 예를 들어 ca"하드 코드 된 인수를 변수 이름으로 대체하기 위해 코드를 리팩토링하는 동안 사용 . 이 접근법의 문제점 a" 은 후행 공백이없는 경우 선행 공백 을 포함 한다는 것입니다 .

후행 공백은 포함되지 않으면 선행 공백이 포함됩니다.

따라서 다음과 같이 함수 호출을 편집하면

aFunction(arg1, "toBeReplaced", arg3) #original
aFunction(arg1, replacedArg, arg3)    #refactored

공백 replacedArg을 ca"삭제 하기 전에 수동으로 공백을 다시 삽입해야 합니다.

이 공백을 포함하지 않는 유사한 동작이 ca"있습니까? 아니면 다른 공백을 입력하지 않아도되는 대신 사용할 수있는 다른 것이 있습니까?

노트:

  • cf"문자열에 이스케이프 된 따옴표가 포함되어 있지 않으면 원하는 것을 수행하지만 문자열의 시작 부분에 커서가 있어야합니다. 문자열의 어느 곳에서나 사용할 수있는 것을 원 ?"<Enter>cf"하고 입력하기가 다소 어렵습니다.
  • 단일 <Space>키 스트로크에 관한 것이 아니라 처음에 공백을 포함하는 것을 잊어 버려서 적어도 4 번의 추가 키 스트로크 ( bi<Space><Esc>)를 소비하고 내 초점을 어기 는 사실에 관한 것입니다. 따라서 교체 명령의 길이는 주어진 문자 사이의 텍스트 만 삭제 한 다음 삽입 모드로 들어가는 한 중요하지 않습니다.

1
?"<Enter>따옴표를 사용하여 줄을 뒤로 검색 하는 대신을 사용할 수 있습니다 F". 왼쪽 F과 동일 f하지만 검색합니다. 아래의 답변은 귀하의 질문에 더 잘 보이지만 F자체적으로 유용한 명령입니다.
— Lithis

답변:



10

Wellle의 targets.vim 플러그인에 있습니다. 관련 부분을 인용하려면 ( " 인용문 " 섹션 내부 ) :

a' a" a

  • 견적을 선택하십시오.

  • 이것은 탐색을 지원하기 위해 Vim의 기본 텍스트 객체를 무시합니다.

  • Vim의 따옴표 텍스트 객체와 달리 여기에는 주변 공백이 포함되지 않습니다 .


그것은이 플러그인 재정의 모양 a"과 용도 A"원래의 행동?
— Martin Tournoij

... 또한 "왼쪽으로"탐색을 허용하는 동안
— VanLaser

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