여러 파일에 대해 한 번에 문자열 치환하는 방법들

문자열에 대한 찾기/바꾸기를 여러 파일에 대해 한 번에 적용하는 방법 Sublime Text 3 에서 Find > Find in Files… 메뉴를 사용하여 찾을 패턴, 찾을 폴더들 (,로 구분가능하며, 와일드카드 패턴으로 특정 확장자를 한정할 수 있다.) 지정하고 변경할 값을 만들어서 한 번에 적용 가능하다.

vim : 단어 및 선택 영역을 둘러싸기

Surround.vim이라는 멋진 플러그인이 있기는 하지만, 개인적으로는 vimrc에 오랫동안 넣고 쓰던 코드 기본원리 기본원리는 매우 간단한데, 괄호 등으로 감싸고자 하는 단어를 선택영역으로 만든 다음, 선택 영역을 해제하고, 이 영역의 마지막과 끝 영역으로 이동해서 괄호짝을 삽입해주면 된다. viw: 현재 단어 선택 <esc>: 단어 선택 취소 \>`: 마지막 선택영역의 끝으로 이동 a)<esc>: 선택영역 뒤에 닫는 괄호 추가 \<`:

:g (vim)

:g[lobal] 사용법 : :[range]g[lobal]/{pattern}/[cmd] 주어진 범위에 대해 패턴에 매칭하는 줄에 대해서만 주어진 명령을 실행한다. 사용예 빈줄을 모두 삭제하는 명령 :%g/^$/normal dd 이때 명령은 명령모드 명령이다. 따라서 키 시퀀스 명령을 쓰려면 normal을 사용하 면된다. 참고 반대로 패턴에 매칭되지 않는 경우에만 실행하려면 :g!를 사용한다. 이와 동치의 명령으로는 :v가 있다.

vim의 정규식 기호와 very magic 모드

vim의 문자열 검색, 치환 기능은 패턴 매칭에 의한 것이며, 이 패턴 매칭은 정규식에 기반을 두고 있다. 그런데 정규식 문법을 조금 알고 있는 상태에서 vim의 정규식을 사용하면 깊은 빡침을 느끼거나 심한 멀미를 겪을 수 있다. 예를 하나 들어보자. (this)isnot{this}nor[this] 이런 문자열이 있다고 할 때, 괄호들을 포함한 this를 검색, 즉 (this), {this}, [this]를 검색하려면 다음의 패턴을 사용한다.