텍스트 editor 중 하나인 Vim을 사용해보자!
vim 설치
sudo apt install vim -y
Vim 단축키
- i
- command mode ⇒ insert mode
- v
- command mode ⇒ visual mode
- esc
- insert mode ⇒ command mode
- :wq
- w: 저장, q: 종료
- q!
- 강제 종료
- ctrl + f
- 찾기
- ctrl + f + 화살표
- 다음 / 이전 찾기
- ctrl + h
- 모두 바꾸기
- [라인 수] + dd
- [라인 수] 만큼 잘라내기
- p
- 현재 커서 앞에 붙여 넣기
- P
- 현재 커서 뒤에 붙여 넣기
- 마우스 더블 클릭
- 복사
- 휠 키
- 붙여 넣기
- visual mode (터미널에서 지원하는 복사/ 붙여넣기와 독립적)
- 화살표
- 영역 선택
- y
- 복사
- p
- 붙여 넣기
- 화살표
- gg
- 페이지 상단 이동
- shift + g
- 페이지 하단 이동
- u
- 실행 취소
- ctrl + r
- 다시 실행
- /[검색어] 위에서 아래로 내려가면서 검색
- n 다음 검색
- shift + n 이전 검색
- ?[검색어]
- 아래쪽에서 위로 올라가면서 검색
- :%s/[검색어]/[변경]/g
- 검색어 전부를 변경
- g: global의 약어로, 파일 전체의 단어를 바꾸는 필수 옵션
- i: 대소문자 구별
- c: 하나씩 확인하면서 진행
- 검색어 전부를 변경
- o
- 커서 아래쪽에 라인 추가하면서 이동
- O
- 커서 위쪽에 라인 추가하면서 이동
- cc
- 현재 커서가 있는 라인 모두 지우면서 앞쪽으로 커서 이동
- I
- home + insert
- A
- end +insert
- cw
- 단어 단위로 지우면서 insert
- cc
- 한줄 지우면서 insert
- C
- 커서 뒤에 지우면서 insert
- gg + V + G
- 전체 선택: 제일 앞으로 이동 ⇒ 행단위 비주얼 모드 ⇒ 제일 뒤로 이동
- V
- 행 단위 비주얼 모드
- V
- 전체 선택: 제일 앞으로 이동 ⇒ 행단위 비주얼 모드 ⇒ 제일 뒤로 이동
- :set nonu
- 소스코드를 복사할 때 라인 번호가 같이복사될때
- :vsp
- 거울창 띄우기
- :sp 거울창 띄우기 (세로)
- :vps 거울창 띄우기 (가로)
- ctrl + w + 방향키 창 전환
- vimdiff [파일1] [파일2] 두 개 파일 텍스트 비교하기
- 거울창 띄우기
- w
- 단어 시작 문자 위치로 이동
- e
- 단어 마지막 문자 위치로 이동
- home = shift + 6
- end = shift + 4
- gg = G
- 전체 들여쓰기
vimrc 유용 설정
vimrc는 vim의 설정 파일이다.
' . ' 으로 시작하는 파일은 숨김파일이다.
vimrc 파일 생성
vi ~/.vimrc
유용한 설정
set hlsearch " 검색어 하이라이팅
set nu " 줄번호
set autoindent " 자동 들여쓰기
set scrolloff=2
set wildmode=longest,list
set ts=4 "tag select
set sts=4 "st select
set sw=1 " 스크롤바 너비
set autowrite " 다른 파일로 넘어갈 때 자동 저장
set autoread " 작업 중인 파일 외부에서 변경됬을 경우 자동으로 불러옴
set cindent " C언어 자동 들여쓰기
set bs=eol,start,indent
set history=256
set laststatus=2 " 상태바 표시 항상
"set paste " 붙여넣기 계단현상 없애기
set shiftwidth=4 " 자동 들여쓰기 너비 설정
set showmatch " 일치하는 괄호 하이라이팅
set smartcase " 검색시 대소문자 구별
set smarttab
set smartindent
set softtabstop=4
set tabstop=4
set ruler " 현재 커서 위치 표시
set incsearch
set statusline=\ %<%l:%v\ [%P]%=%a\ %h%m%r\ %F\
" 마지막으로 수정된 곳에 커서를 위치함
au BufReadPost *
\ if line("'\"") > 0 && line("'\"") <= line("$") |
\ exe "norm g`\"" |
\ endif
" 파일 인코딩을 한국어로
if $LANG[0]=='k' && $LANG[1]=='o'
set fileencoding=korea
endif
" 구문 강조 사용
if has("syntax")
syntax on
endif
'Linux > tips' 카테고리의 다른 글
압축, 압축 해제 (0) | 2024.12.12 |
---|---|
아카이브 변경하기 (0) | 2024.12.11 |
bash shell script - 명령어 정리 (0) | 2024.12.10 |