source: http://vim.wikia.com/wiki/Converting_tabs_to_spaces
--vim으로 서브 디렉토리 파일들 한꺼번에 버퍼로 불러 읽어들이기 테크닉.
$ vim $(find . -name README | sort)
--vim으로 서브 디렉토리 파일들들 한번에 하나씩 불러 읽어들임(하나 끄면 다음 파일이 새로운 vi로 열림)
$ find -name somefile.txt -exec vim {} \;
--한꺼번에 열린 파일목록
--QUESTION: 파이프라인으로 하는 방법은 없나?
(예를 들어)
$ echo "cscope.*" | xargs -i{} vim {}
빔: 경고: 터미널로 부터 입력받을 수 없습니다.
-- 현재 창에서 커서의 파일 열기
명령모드 gf (go to the file)
-- 이전 창으로 돌아가기
명령모드 C-o(점프시 이전 커서 위치로 돌아가기)를 이용해 같은 효과를 낼 수 있음
-- 이후 창으로 돌아가기
명령모드 C-i 또는 Tab키(점프 히스토리가 있을 경우 이후 커서 위치로 가기)를 이용 가능.
-- 새 창에서 커서의 파일 열기
명령모드 C-w C-f
-- 파일 목록 창 1개와 파일 내용창 1개가 고정되어 있는 효과를 구현하는 커스텀 매핑
:map <F8> <C-w>o<C-w><C-f> (파일 목록 창을 제외한 모든 걸 없앤 후, 파일 내용 창 열기)
위 명령어는 $vim $(find . -name "README")로 열어 서브 디렉토리에 존재하는 파일도 열 수 있는 내장 기능인 <C-w><C-f>를 이용하기 때문에 장점을 띤다.
아래와 같은 방법도 가능하나, 파일 목록과 열려는 파일이 같은 디렉토리에 없으면 불가능하다는 단점이 있다.
--커맨드상에서 파일의 탭을 4개의 공백으로 바꾸고 저장하는 명령어
$ vim -c "set expandtab | set tabstop=4 | retab | wq" filename.txt
--vim으로 서브 디렉토리 파일들 한꺼번에 버퍼로 불러 읽어들이기 테크닉.
$ vim $(find . -name README | sort)
--vim으로 서브 디렉토리 파일들들 한번에 하나씩 불러 읽어들임(하나 끄면 다음 파일이 새로운 vi로 열림)
$ find -name somefile.txt -exec vim {} \;
--한꺼번에 열린 파일목록
1 %a "./checkin.pl" line 1
2 # "./grabakamailogs.pl" line 1
3 "./grabwmlogs.pl" line 0
etc.
3번 버퍼의 파일을 현재창에 열기, e.g. :3b
2번 버터의 파일을 새창에 열기, e.g. : 2sb
왼쪽에 있는 %는 현재의 파일을 의미하며 #는 alternate file을 의미함 (<cntl>-shift-6 를 통해 두 파일을 왔다갔다 할 수 있음)
--QUESTION: 파이프라인으로 하는 방법은 없나?
$ echo "cscope.*" | xargs -i{} vim {}
빔: 경고: 터미널로 부터 입력받을 수 없습니다.
-- 현재 창에서 커서의 파일 열기
명령모드 gf (go to the file)
-- 이전 창으로 돌아가기
명령모드 C-o(점프시 이전 커서 위치로 돌아가기)를 이용해 같은 효과를 낼 수 있음
-- 이후 창으로 돌아가기
명령모드 C-i 또는 Tab키(점프 히스토리가 있을 경우 이후 커서 위치로 가기)를 이용 가능.
-- 새 창에서 커서의 파일 열기
명령모드 C-w C-f
-- 파일 목록 창 1개와 파일 내용창 1개가 고정되어 있는 효과를 구현하는 커스텀 매핑
:map <F8> <C-w>o<C-w><C-f> (파일 목록 창을 제외한 모든 걸 없앤 후, 파일 내용 창 열기)
위 명령어는 $vim $(find . -name "README")로 열어 서브 디렉토리에 존재하는 파일도 열 수 있는 내장 기능인 <C-w><C-f>를 이용하기 때문에 장점을 띤다.
아래와 같은 방법도 가능하나, 파일 목록과 열려는 파일이 같은 디렉토리에 없으면 불가능하다는 단점이 있다.
map <F8> :let mycurf=expand("<cfile>")<cr><c-w> w :execute("e ".mycurf)<cr><c-w>p
댓글
댓글 쓰기