텍스트 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
        • 행 단위 비주얼 모드
  • :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

+ Recent posts