오퍼레이션 펜딩 모드

MySprtlty·2022년 7월 5일
0

vim

목록 보기
17/21
post-thumbnail

🏷️오퍼레이션 펜딩 모드 (operation pending mode)

📌개념

  • 일반 모드의 명령어 중 특정 명령어가 동작이 지연되는 방식을 의미한다.

  • 🔍ex) 오퍼레이션 펜딩 모드 예시

    • 일반 모드에서 단순히 d를 누르면 범위를 지정하기 전까지는 아무런 동작을 하지 않는다.
    • d 명령이 실행되기는 하지만, 뒤 따라오는 추가 명령어가 입력되기 전까지는 대기 상태(pending)에 머무르는 것이다.

📌동작 방식

  • 뒤 따라오는 추가 명령어는 무엇일까?

  • vim 도움말을 보면, 오퍼레이션 펜딩 모드(예를 들면, d를 입력한 상태)에서 추가로 입력 가능한 키 중 {motion}키가 보인다.

  • {motion}이란, 단어 사이나 행, 특정 위치로 이동하는 키 입력을 의미하며, 이 때 입력된 이동 범위가 명령어가 작동할 범위가 된다.

  • d 명령어가 추가로 입력 받는 명령에 따라 작동하는 방식의 예시는 다음과 같다.

    명령어설명
    d$현재 커서의 위치부터 행 끝까지 삭제한다.
    dd현재 행을 삭제한다.
    dj현재 행과 아래 행(↓)을 삭제한다.
    dk현재 행과 윗 행(↑)을 삭제한다.
    dw 또는de현재 커서 위치부터 단어 끝까지 삭제한다.
    diw현재 커서가 위치한 단어를 앞뒤 공백을 포함하지 않고 삭제한다.
    daw현재 커서가 위치한 단어를 앞뒤 공백을 포함하여 삭제한다.
    d^현재 커서 위치부터 행 시작 부분까지 삭제한다.
    d}현재 커서 위치부터 문단 끝까지 삭제한다.
  • 이렇 듯 현재 커서의 위치를 옮기는 명령어({motion})를 추가로 받는다.

  • 🔍ex) {motion}을 사용하는 명령어의 예시

    명령어설명
    y{motion}{motion}만큼 복사
    d{motion}{motion}만큼 삭제
    c{motion}{motion}만큼 변경

0개의 댓글