Categories
Vim

Vim 편집기에서 본문에 행번호 (line numbers) 를 삽입하는 방법

vim 편집기에서 행의 첫머리에 행번호를 삽입하는 방법을 알아보자.

1. 치환 명령 실행

명령 모드에서 : (콜론) 키를 눌러 이스케이프 (escape) 모드로 바꾼다.

아래 명령을 입력하고 엔터키를 누른다.

:%s/^/\=printf(“%04d”, line(“.”))

이 명령은 문서 전체에서 행의 처음을 찾아 행번호로 치환한다.

2. 명령어 설명

명령어의 구성 요소들을 하나씩 살펴보자.

% 는 치환의 범위를 문서 전체로 지정하는 기호이다.

s 는 치환 (substitution) 명령이다.

검색 패턴 ^ (캐럿) 은 행의 처음을 의미하는 기호이다.

\= 는 대체 문자열이다. \= 의 값은 다음에 나오는 함수나 수식을 평가한 결과값이다.

printf() 는 주어진 데이터를 문자열로 포맷하여 출력하는 함수이다.

“%04d” 는 포맷 문자열이다. 주어진 데이터를 4 자리의 십진수로 포맷한다. 숫자가 4 자리 미만일 때는 빈 자리를 0 으로 채운다.

“%4d” 를 쓰면 빈 자리를 공백으로 채운다. “%-4d” 를 쓰면 숫자가 왼쪽으로 정렬된다.

line(“.”) 은 현재 행의 행번호를 리턴하는 함수이다.

printf(“%04d”, line(“.”)) 는 현재 행의 행번호를 “%04d” 포맷에 맞게 바꾸어 리턴한다.

Leave a Reply

Your email address will not be published. Required fields are marked *