U E D R , A S I H C RSS

Linux/Development UsingVIM



1. VI

세월이 지나도 변치않는 콘솔환경에서의 최고의 에디터.
VI, emacs는 기능이 너무 방대해서 책으로 한궈이 나올정도이니. =.= 도대체 그 기능의 한계가 무엇인지 알 수 없다.
알면 알 수록 오묘한 구석이 많은데...
요즘 C++을 다시보면서 리눅스에서 코딩을 하면서 이놈을 쓰면서 얻은 몇가지 명령어들과 테크닉을 기술해본다.

참고사이트) VI사용자그룹

2. vimrc

리눅스에서는 프로그램이 시작되면서 기본적으로 불러들이거나 실행하는 명령어들을 rc라는 접미사를 가진 파일에 기록하고 자동화해서 사용한다. bash 에서는 .bashrc, gnome에서는 gnomerc, 마찬가지로 vim 에도 수많은 설정 값을 자신의 기호에 맞게 설정해서 실행이 될때마다 커스터 마이징이 되게하는 수단을 제공한다. 설정파일은 배포판마다 다르겠지만 통칭 vimrc 라는 파일에 저장하기 때문에 이 파일을 이용하면 보다 편리한 vi의 사용이 가능하다. (데비안의 경우 /etc/vim/vimrc 에 존재한다)ps. 개별 사용자 설정은 아마도 가지 홈디렉토리에 하지 않을까함. -.-;

3. 프로그래밍에 필요한 설정값

다음의 명령어들은 vi 환경에서 ex모드에서 사용이 가능하다.
set tabstop=num 탭 크기를 지정한다.
set autoindent 자동들여쓰기 기능의 활성화
set nu 행번호 출력
syntax on 구문 강조 기능 활성화
map <F5> :w<CR>:!gcc -W -Wall % -o %< && ./%< F5 키를 사용해서 자동 컴파일. gcc
map <F6> :w<CR>:!g++ -W -Wall % -o %< && ./%< F6 키를 사용해서 자동 컴파일. g++
colorscheme style 구문강조의 스타일을 정할수 있다.

알아두면 유용한 명령어
so $VIMRUNTIME/syntax/2html.vim 현재 편집중인 소스파일를 구문강조된 상태로 html 로 만들어준다.
new filename 새로운 파일 편집창 활성화
e filename 현재 편집중인 창에 파일 열기
b number 창 이동
number,numbers/find_word/replace_word/ find_word를 replace_word로 지정된 구간에서 치환 (범위 및 치환문자는 정규식 가능)
tabnew filename 새로운 탭에 파일을 연다.
tabnext 다음 탭으로 이동한다. gt
tabprev 이전탭으로 이동한다. gT
numberyy 지정된 숫자만큼의 줄을 복사한다.
numberyw 지정된 숫자만큼의 단어를 복사한다.
numberdd 지정된 숫자만큼의 줄을 잘라낸다.
numberdw 지정된 숫자만큼의 단어를 잘라낸다.
p or P 붙여넣기. 전자는 다음줄부터, 후자는 현재줄을 기준으로
i or a 끼워넣기, (to edit mode) 전자는 현재 커서 위치, 후자는 다음 커서 위치
o or O 끼원허기, (to edit mode) 전자는 다음 커서 위치에 한줄 추가, 후자는 현재 커서 위치에 한줄 추가
v to visual mode. 마우스 Drag 와 같은 효과를 낼 수 있다

4. 추가 유틸리티

indent

이놈도 쓸만한 물건이다. -_-;

어떤 코드를 만들던지 자기가 원하는 형태로 만들어서 보여줄 수 있다.

옵션이 엄청나게 많은데 수정에 수정을 하면 내가 항상 코딩하는 스타일로 코드를 만들수 있다.

대략 내가 쓰는 옵션은 아래와 같다.
~cpp 
 -bap -bbo -nbc -c33 -cd33 -ncdb -ce -ci4 -cli0 -cp33 -cs -d0 -di1 -nfc1 -nfca -hnl -i4 -ip0 -l75 -lp 
-npcs -nprs -npsl -saf -sai -saw -nsc -nsob -nss -bl -bls -bbb -bli4 -cbi0

5. 더할말

지금 배우는 중이라서 그다지 많이 알지는 못하겠지만, 커스터마이징해서 익숙해지면 윈도우에서 vi로 편집한다고함 ;;

중독성이 강한 에디터. -_-; 요즘 나도 약간 중독되어가는 거 같다.

확실한건 마우스 쓸일이 없다 ㅡ,.ㅡ

그리고 억지로 쓰려고 하지 않는 것이 좋을 것 같다. 1학년때에는 절대로 안되던 이 키들이

지금에 와서야 필요에 의해서 익히기 싫어도 익혀서 쓰고 잇음.

처음 리눅스를 쓴다면 nano 같은 간단한 툴로 작업을 해도 무방할 듯함.

Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2014-01-16 10:20:02
Processing time 0.0950 sec