이어서 vim
으로 찾기, 변경하는 법 등을 알아본다.
/검색문자열
n
, N
으로 이동/
는 현재 커서 뒤에서부터 찾는다는 의미이다. 커서의 앞에서 찾으려면 ?
을 대신 사용할 수 있다.
/
뒤에는 당연히 regular expression을 사용한다. /.ly
를 검색하면 ly
로 끝나는 모든 단어를 찾을 수 있을 것이다.
특이한 것은 단어의 시작, 끝을 지정하는 방법이 있다는 것이다.
명령어 | 의미 |
---|---|
/\<s | s 로 시작하는 단어 검색 |
/s\> | s 로 끝나는 단어 검색 |
/^s | s 로 시작하는 라인 검색 |
/s$ | s 로 끝나는 라인 검색 |
the라는 단어를 검색하고 싶다면 어떻게 할 수 있을까?
/\<[Tt]he\>
를 입력하면 된다.
재밌는 점 또 하나는 search 또한 movement로 사용될 수 있다는 것이다.
예를 들어, d/love
를 입력하면?
현재 커서로부터 처음 검색되는 love
까지의 문자열을 삭제한다는 의미이다.
%
를 입력하여 커서에 위치한 bracket의 matching되는 짝을 찾아 이동할 수 있다.
문서에서 어떤 패턴을 한번에 바꾸려면 아래와 같이 입력할 수 있다.
:%s/pattern/replacement/g
&
는 특별한 의미로, 검색한 결과를 의미한다.
예를 들어, :%s/and/also &/
은 and
를 찾아 also end
로 바꿀 것이다.
v
로 복사할 부분을 highlight한다.y
를 눌러 복사, p
를 눌러 붙여넣기 한다.이보다 더 유용한 것은 아마도 아래일 것이다.
명령어 | 의미 |
---|---|
yy | 커서가 위치한 줄 복사 |
가끔 vim
으로 텍스트 여기저기를 왔다갔다 하는 사람들을 볼 수 있다. 바로 마크 기능을 사용하는 것인데 다음과 같다.
명령어 | 의미 |
---|---|
ma | 현재 라인을 a 란 이름으로 마크 |
'a | a 로 마크된 라인으로 이동 |
'' | 가장 최근 수정한 라인으로 이동 |
여기까지라면 일반적인 경우에 필요한 거의 모든 기능을 다루었다고 볼 수 있다.
조금 더 Advanced usage는 다음 포스트에 다루는 것으로...