[0] [d] [$]보다 빠른 행 지우기


18

줄의 텍스트를 지우는 것보다 빠른 방법이 있습니까?

  • 를 눌러 0시작으로 이동 한 다음
  • d$줄 끝까지 삭제할 때 누르십시오 ?

들여 쓰기를 제외한 모든 것을 삭제하려면 어떻게해야 합니까? 그렇게 할 방법이 있습니까?

답변:


34

당신이 말했듯이, 여러 가지 방법이 있으며, 현재 행을 지우거나 삭제 한 후 다음 행동이 무엇인지 고려할 수도 있습니다.

  1. dd 현재 줄을 삭제합니다 (지우지 않음)
  2. 0D 공백을 포함하여 현재 줄을 지 웁니다.
  3. ^D공백을 포함 하지 않고 현재 줄을 지 웁니다 ( ^dg_후행 공간 절약)
  4. 0C 공백을 포함하여 현재 줄을 지우고 삽입 모드로 전환합니다
  5. ^C공백을 포함 하지 않는 현재 줄을 지우고 삽입 모드로 전환합니다 ( ^cg_후행 공간 절약)

cc또는 S'자동 들여'는 각각의 오프의 경우, 또는 4 또는 5 중 어느 하나로서 기능한다.

따라서 작업에 맞는 것을 사용하십시오. 나는 그것이 0D선을 지우는 것이 가장 빠르다고 생각 하지만 원하는 경우 더 빨리 만들 수 있습니다.


7
@SuperScript S는 다음의 동의어입니다.cc
FDinoff

1
@akshay의 훌륭한 답변에 감사드립니다. TYLTK 그것은 최고로 올라갑니다
Robbie Wxyz 2016 년

9

네. 내가 Vim에 대해 좋아하는 것이 있다면, "나는 그것을 할 수 있습니까?"라는 대답입니다. 거의 항상 찬성 입니다.

0D 처음으로 이동 한 다음 줄 끝을 통해 삭제합니다.

^D (Ctrl + D 아님)는 공백이 아닌 첫 번째 문자로 이동 한 다음 끝까지 삭제합니다.

(PS 나는 이것을 지금 막 알아 냈고 다른 멍청한 놈들과 공유하고 싶었습니다. 더 좋은 방법이 있는지 알려주십시오.)


6

하나의 (쉬프트 된) 키로 라인을 지우십시오 : S.

이것은 또한 들여 쓰기를 유지합니다.

들여 쓰기 후 첫 번째 위치 또는 줄의 시작 부분에서 삽입 모드로 들어갑니다. 즉, 줄을 바꾸는 데 필요한 것, 즉 이름 S과 같은 것입니다.

:help S

["x]S   Delete [count] lines [into register x] and start
        insert.  Synonym for "cc" |linewise|.

["x]cc  Delete [count] lines [into register x] and start
        insert |linewise|.  If 'autoindent' is on, preserve
        the indent of the first line.

S좋은 열쇠입니다.
domi91c

3

가나의 "로 VIM-textobj 라인 "플러그인, 당신은 여러개의 라인에서 작업을 사용할 수 있습니다 il(예 : dil와, 줄 바꿈없이), 또는 전체 라인 al(예를 들어 yal). 이 방법의 장점은 미묘하다 : 대신 생각 할 필요없이 모두 원하는 동작을위한 동작 (시작, 끝), 당신은 텍스트 개체를 지정 직접 : 내가 N 리터의 오프라인, 리터 오프라인을.

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