












:%s/abc/def/g abc가 def로 전역에서 바뀐다
:%s/abc/def/c 검사
:vs ./ 현재 디렉토리 띄워줌
:(숫자)vs ./ 입력한 숫자 만큼 조정된 크기의 창으로 현재 디렉토리를 띄위 줌
ex) :30vs ./
디렉토리 목록이 뜨는데 방향키로 왔다갔다 하면서 폴더 간에 이동도 하고 파일도 열 수 있다.
{} () [] 간에 이동할 때 그 기호 위에서 %기호 사용
괄호 많이 써놓고 어떤 괄호가 어디에 걸리는지 헷갈릴 때 좋다.
html: <!-- vi: set ts=8 sts=2 sw=2: -->
C: /*vi: set ts=8 sts=2 sw=2:*/
파이썬: #vi: set ts=8 sts=2 sw=2:
파일의 최상단이 최하단에 각 소스파일의 주석 형태로 위를 넣어주면 열 때 자동으로 설정된다.
정렬을 원하는 소스의 부분을 비주얼 블럭으로 지정하고 =키를 입력하면 자동으로 정렬이 이뤄진다. 전체는 gg=G 키를 순서대로 입력하면 된다. (멋지다!)
gg는 맨 처음으로 이동하는 명령어, G는 가장 마지막으로 이동하는 명령어, =는 선택된 내용을 인덴트하는 명령어이다 이 셋을 조합한 명령어가 위에 나온 명령어이다.
윈도는 엔터가 \r\n인데 리눅스는 \n이라서 발생하는 문제
간단하게 해결하려면 set fileformat=dos
또는 치환명령으로 :%/^M//g
여기서 ^M 문자는 ctrl+v+ctrl+m으로 입력한다. (^을 입력하는 법이 ctrl+v)
제일 간단한 방법은 pico로 열어서 저장하고 vim으로 열면 ^M문자가 제거되어 있다.
vimdiff 로 비교할 수 있다.
두 파일을 비교하려면 vi -d file1 file2 처럼 한다.
함수나 변수의 일부를 입력한 상태에서
ctrl+p 커서 위치에서부터 위를 향하면서 자동완성이 가능한 단어가 있는지 찾는다.
ctrl+n 아래로 내려가면서 찾는다.
변수 지어놓고 이름 까먹었거나, 정확하게 입력하려 확인차 쓰면 유용할 듯.
vim source01.c source02.c source03.c
그러면 source01.c가 나타난다. 두 번째 파일을 편집하려면 :b2를 입력한다
세 번째 파일 편집화면은 :b3 첫 번째는 :b1
현재의 파일을 닫으려면 :bw
:!명령어
잠시 빠져나가 명령이 실행된 후 다시 vim으로 돌아올 수 있다
다른 방법으로는 Ctrl+z를 이용해 셸로 빠져 나가 작업이 가능하다.
(셸의 작업 제어 기능을 쓰는 방법이다.)
fg 명령어를 이용해 다시 vim 편집 상태로 돌아온다. vim을 안 끄고 컴파일 해 볼 수 있다는 게 장점!
ctags *
현재 디렉토리에 있는 모든 파일에 관한 tags 정보를 만들어 준다.
ctags -R
만일 모든 하위 디렉토리에 대해 tags 정보를 작성하려면 위 명령어 이용.
명령어를 실행 후 tags란 파일이 생성된다.
각 필드는 탭으로 나뉜다.
분석 도중 모르는 함수가 나와 함수 원형으로 이동하고 싶다면 함수에 커서를 위치시키고 Ctrl +]
함수에 대한 분석을 마치고 원래 분석하던 소스 파일로 돌아오려면 Ctrl+t
http://home.postech.ac.kr/~kypark/linux-apps/vimctags.html
이 글은 스프링노트에서 작성되었습니다.