vim 편집기를 소개하고 사용법을 공유하기 위한 seminar
스토리라인 및 포함되어야 할 내용(지시사항)
- 설정파일(.vimrc)
- 다음주 교안 완성 및 훈련까지 진행
- 터미널 브아이아이 안끄고 파이썬코드 실행하는 환경 공유
- 찾기, 검색, 복사, 붙여넣기, 쉽고 아주빠르게
- 실행취소 이동, 등등등 추가 기능
- 4시간정도에 끝낼수 있는 것
- 반복적인 미션 줘서 훈련할 수 있도록
- VI 튜토리얼 따라해볼까?
- VI 게임?????
- 왜 VI를 써야하는지, 왜 커맨드라인인지, 역사 살짝
- 에디터 전쟁.. 빌조이
- VI는 전투력측정의 지표이다. 이사람이 얼마나
- 우리는 뻥투력을 올리고 실제 전투력은 차차 올라가겠습니다.
- VI 편집기를 이용해서 10초 걸릴일이 1초 걸리도록
- SED
LESSON 1
- 1.1 : 커서 움직이기
- 1.2 : 빔을 시작하고 끝내기
- 1.3 : 텍스트 편집 - 지우기
- 1.4 : 텍스트 편집 - 삽입 (INSERTION)
- 1.5 : 택스트 편집 - 추가 (APPENDING)
- 1.6 : 파일 편집
1. 커서를 움직일 때에는 화살표 키나 hjkl 키를 이용합니다.
h (왼쪽) j (아래) k (위) l (오른쪽)
2. 쉘 프롬프트에서 빔을 시작하려면 vim FILENAME <ENTER>
3. 수정한 내용을 무시한 채로 빔에서 빠져나가려면 <ESC> :q! <ENTER>
저장한 후 빔에서 빠져나가려면 <ESC> :wq <ENTER>
4. 명령 모드에서 커서가 위치한 곳의 글자를 지우려면 x 를 입력합니다.
5. 명령 모드에서 커서가 위치한 곳에 텍스트를 삽입하려면
i 를 누른 후 텍스트를 입력하고 <ESC> 커서 앞에 삽입합니다.
A 를 누른 후 텍스트를 입력하고 <ESC> 문장 뒤에 추가 합니다.
참고: <ESC>는 명령 모드로 돌아가는 데 쓰며, 원치 않는 명령이나 완전히 입력되지 않은 명령을 취소하는 데에도 씁니다.
LESSON 2 : 삭제(반복삭제, 삭제취소)
- 2.1 : 삭제(DELETION) 명령 : dw
- 2.2 : 지금부터 줄끝까지 삭제 명령 : d$
- 2.3 : 명령과 적용 대상에 대해 : dd,dw,de,d$
- 2.4 : 대상에 반복 적용하기 : 2w, 3e
- 2.5 : 삭제에 반복 적용하기 : d2w
- 2.6: 줄 전체 조작하기 : dd, 2dd
1. 커서가 위치한 곳부터 단어의 끝까지 지우려면: dw
2. 커서가 위치한 곳부터 줄 끝까지 지우려면: d$
3. 줄 전체를 지우려면: dd
4. 횟수와 함께 대상을 반복 시키려면: 2w
5. 명령 모드에서 내리는 명령의 형식은 다음과 같습니다:
[횟수] 명령 대상 또는 명령 [횟수] 대상
여기서:
횟수 - 그 명령을 몇 번 반복할 것인가
명령 - 어떤 명령을 내릴 것인가 ( 예를 들어, 삭제인 경우는 d )
대상 - 명령이 동작할 대상, 예를 들어 w (단어), $ (줄의 끝) 등.
6. 커서를 문장 맨 앞으로 옮기려면: 0
7. 이전 행동을 취소하려면: u (소문자 u)
한 줄에서 수정한 것을 모두 취소하려면: U (대문자 U)
취소한 것을 다시 실행하려면: CTRL-R
LESSON 3
- 3.1: 붙이기(PUT) 명령 : dd로 삭제 후 p를 입력하여 지운내용을 커서 뒤에 붙인다.
- 3.2: 치환(REPLACE) 명령 : 커서 아래의 글자 하나를 바꾸려면, r 을 누른 후 바꿀 글자를 입력
- 3.3: 변환(CHANGE) 명령 : ce 한단어의 전체(클리어+edit), 자동으로 삽입모드
- 3.4: c 를 이용한 다른 변환 명령 : [횟수] c 대상 // c [횟수] 대상
- 적용 가능한 대상 역시 같습니다. w (단어), $ (줄의 끝)
1. 이미 지운 내용을 되돌리려면, p 를 누르십시오. 이 명령은 커서 *다음에*
지워진 내용을 붙입니다(PUT). (한 줄을 지운 경우에는 커서 다음 줄에
지워진 내용이 붙습니다.)
2. 커서 아래의 글자를 치환하려면(REPLACE), r 을 누른 후 원래 글자 대신
바꾸어 넣을 글자를 입력합니다.
3. 변환 명령(CHANGE)은 커서에서 부터 지정한 대상의 끝까지 바꿀 수 있는
명령입니다. 예를 들어, 커서 위치에서 단어의 끝까지 바꾸려면 ce 를
입력하면 되며, c$ 는 줄 끝까지 바꾸는 데 쓰입니다.
4. 변환 명령의 형식은 다음과 같습니다:
[횟수] c 대상 또는 c [횟수] 대상\
LESSON 4 :
- Lesson 4.1: 위치와 파일의 상태 : CTRL-G
- G 를 누르면 파일 내의 마지막 줄
- gg 를 누르면 맨 처음 줄
- 특정 번호의 줄로 이동 : <줄번호>
- 찾기 명령 : /<찾을단어>
- ex : /errroorr
- n키를 눌러 다음항목
- shift+N
- n : 다음것 / shift+N 이전항목 : 변수 등을 찾을때 편리(복사-> 컨트롤F ->붙여넣기 탐색보다 훨씬 빠름)
- :s/thee/the/g 줄 (globally)를 치환함(thee->the로)
- 문자열에 대해 치환하려면 다음과 같이 합니다, :#,#s/old/new/g #,# 는 두 줄의 줄번호를 뜻합니다. :%s/old/new/g 파일 전체에서 발견된 모든 것을 치환하는 경우입니다. :%s/old/new/gc 파일 전체에서 발견된 모든 것을 찾고, 치환여부를 프롬프트로 명령
1. CTRL-G 파일의 상태와 파일 내에서의 현재 위치를 표시합니다.
G 파일의 끝으로 이동합니다.
숫자 G 해당 줄로 이동합니다.
gg 첫 번째 라인으로 이동합니다.
2. / 를 입력한 후 문구를 입력하면 그 문구를 아랫방향으로 찾습니다.
? 를 입력한 후 문구를 입력하면 윗방향으로 찾습니다.
검색 후, n 을 입력하면 같은 방향으로 다음 문구를 찾으며,
Shift-N 을 입력하면 반대 방향으로 찾습니다.
CTRL-O 는 과거의 위치로, CTRL-I는 새로운 위치로 옮겨줍니다.
3. 커서가 (,),[,],{,} 위에 있을 때에 % 를 입력하면 상응하는 짝을
찾아갑니다.
4. 어떤 줄에 처음 등장하는 old를 new로 바꾸려면 :s/old/new
한 줄에 등장하는 모든 old를 new로 바꾸려면 :s/old/new/g
두 줄 #,# 사이에서 치환을 하려면 :#,#s/old/new/g
파일 내의 모든 문구를 치환하려면 :%s/old/new/g
바꿀 때마다 확인을 거치려면 'c'를 붙여서 :%s/old/new/gc
창 분할
- vsplit : 좌우 분할 -> 010
- sp : 위아래 분할 -> 응
- Ctrl + w,w
- Ctrl + w,W (shift+w)
- :q 현재 화면 닫기
- :qa 모두 닫기