910 likes | 1.09k Views
VIM SEMINAR. SPARCS 11 10 podo. 꼭 알아야 할 것. 알아둘 만한 것. VIM??. 빔이 뭔가요. VIM = VI iMproved vi 의 확장판. VI. UNIX 기반의 문서 편집기 (Text Editor) 1976 년 Bill Joy Visual Editor vim, nvi , elvis. VIM. vi 의 확장판 중 가장 널리 쓰임 1991 년 Bram Moolenaar 대부분 Linux 의 기본 에디터 Emacs , Nano, ed
E N D
VIM SEMINAR SPARCS 11 10 podo
꼭 알아야 할 것 알아둘 만한 것
빔이 뭔가요 • VIM = VI iMproved • vi의 확장판
VI • UNIX 기반의 문서 편집기(Text Editor) • 1976년 Bill Joy • Visual Editor • vim, nvi, elvis
VIM • vi의 확장판 중 가장 널리 쓰임 • 1991년 Bram Moolenaar • 대부분 Linux의기본 에디터 • Emacs, Nano, ed • 여러 OS에서 사용 가능 - iOS, Android 까지도
이런 거 놔두고 왜 까만 화면에서?? 저..전산게X?
IDE (Integrated Development Environment) 텍스트 편집만 가능한 Text Editor
장점 | VIM • 응용 가능한 다양한 기능 • 편집환경 변화, 정규식 표현, 다국어지원, 문법 검사 • GUI 지원(gVim) • 모든 작업을 키보드를 이용 • 간단한 단축키와 명령어 만으로도 실행
Lear-Siegler ADM3A 터미널용 키보드 http://en.wikipedia.org/wiki/File:KB_Terminal_ADM3A.svg
익숙해지도록 노력합시다!!
설치 | Linux Wheel
설치 | Windows www.vim.org/download.php
PuTTY를 켜 봅시다!
개요| 입력상태 • 내용 입력이 가능한 상태 • 명령 상태에서 a, o, i등을 입력(삽입) • 명령 상태에서 c, R 등을 입력(수정) • ESC키를 누르면 명령상태로 전환
입력 | 입력상태 • i(nsert) : 현재 위치부터 입력 • a(append) : 현재 위치 다음부터 입력 • I : 현재 줄의 맨 앞에서부터 입력 • A : 현재 줄의 맨 끝에서부터 입력 • o(pen line) : 현재 줄 아래에 줄을 만들고 입력 • O : 현재 줄의 위에 줄을 만들고 입력
개요| 명령상태 • 편집에 필요한 각종 명령이 가능한 상태 • 처음 vim을 실행했을 때나 ESC키를 입력 • 이동, 수정, 삭제, 검색 등의 작업
이동 | 명령상태 • h : 왼쪽 • j : 아래 • k : 위 • l : 오른쪽
이동 | 명령상태 • w : 다음 단어(의미 기준)의 첫 글자로 이동 • W : 다음 단어(공백기준)의 첫 글자로 이동 • b : 이전 단어(의미 기준)의 첫 글자로 이동 • B : 이전 단어(공백기준)의 첫 글자로 이동 • e : 다음 단어(의미 기준)의 끝 글자로 이동 • E : 다음 단어(공백 기준)의 끝 글자로 이동 “의미” 기준이라는 것은 “ ” . / % <> 등등을 기준으로 구분
이동 | 명령상태 • 0 : 현재 줄의 처음으로 이동 • ^ : 현재 줄의 첫 글자로 이동 • $ : 현재 줄의 마지막 글자로 이동 • +, <Enter> : 다음 줄의 첫 글자로 이동 • - : 이전 줄의 첫 글자로 이동 • (, ):이전/다음 문단(빈 줄 포함)의 첫 글자로 이동 • {, } : 이전/다음 문단의 첫 글자로 이동 • [[, ]] : 이전/다음 함수({, })의 처음으로 이동
이동 | 명령상태 • H : 현재 화면의 맨 위로 커서 이동 • M : 현재 화면의 가운데로 커서 이동 • L : 현재 화면의 맨 아래로 커서 이동 • gg : 파일 맨 처음으로 이동 • [줄 번호] + gg : 해당 줄로 이동 • G : 파일 맨 마지막으로 이동 :[줄 번호] <Enter> 를 이용해도 해당 줄로 이동 가능
k h j l
삭제 | 명령상태 • x, dl : 현재 위치의 글자 삭제 • X, dh : 현재 위치 바로 앞의 글자 삭제 • d + <이동키> : 현재 위치부터 <이동키>까지 움직인 부분을 삭제 - dw(단어), d0(처음까지), dj(그 줄과 다음 줄), dk • D, d$ : • dd : 커서가 있는 줄을 삭제 현재 위치부터 줄의 끝까지 삭제
편집 | 명령상태 → Visual Block 상태 • 이동 명령어를 이용하여 블록을 지정 • v : 글자 단위로 블록 지정, 이동명령어 이용 • V : 줄 단위로 블록 지정 • Ctrl+v:현재 위치부터 사각형으로 블록 지정
편집 | Visual Block 상태 • 블록 지정한 후, • x, d, c: 잘라내기 (삭제 후 클립보드에 저장) • y : 복사
편집 | 명령상태 • y + <이동키> : 현재 위치부터 <이동키>까지 움직인 부분을 복사 • yy : 현재 줄을 복사 • p : 현재 위치의 다음에 붙여넣기 • P : 현재 위치에 붙여넣기
수정 | 명령상태 → 입력상태 • ~ : 대소문자 변환 • r : 현재 글자 수정(한 글자) • R : “바꾸기” 상태로 전환(현재 글자 이후로 ESC키를 누르기 전까지 수정) • s, cl : 현재 글자를 여러 글자로 수정 • c + <이동키> : 현재 위치부터 <이동키>까지 움직인 부분을 교체 • C, c$ : • cc : 현재 위치의 줄을 교체 현재 위치부터 줄의 끝까지 교체 즉, c 명령어는 삭제와 입력을 동시에 해 주는 명령어
검색| 명령상태 • f + [글자] : 다음 [글자]가 나오는 위치로 커서 이동 • t + [글자] : 다음 [글자]가 나오는 위치 바로 직전으로 커서 이동 • dfX, ctX등으로 활용 가능
검색| 명령상태 • /[RE] : 파일에서 [RE] 검색 (뒤쪽으로) • ?[RE] : 파일에서 [RE] 검색 (앞쪽으로) • n : 다음 찾기 • N : 이전 찾기 • Regular Expression(정규 표현식)
스크롤| 명령상태 • Ctrl + F : 한 화면 앞으로(아래로) 스크롤 • Ctrl + B : 한 화면 뒤로(위로)스크롤 • Ctrl + D : 반 화면 앞으로 스크롤 • Ctrl + U : 반 화면 뒤로 스크롤 • Ctrl + E : 한 줄 앞으로 스크롤 • Ctrl + Y : 한 줄 뒤로 스크롤 • z + <Enter>, ., - : 현재 줄을 화면의 맨 위, 가운데, 맨 아래로 스크롤
파일 | 명령상태 • ZZ : 파일을 저장 후 종료