.vimrc
๋ VIM์ ์ค์ ํ์ผ์ ๋๋ค..vimrc
์ ์์น๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค. ํ์ผ์ด ์กด์ฌํ์ง ์๋๋ค๋ฉด ์๋ก ์์ฑํ๋ฉด ๋ฉ๋๋ค.
OS | VIM | ์์น |
---|---|---|
Linux, mac | VIM | ~/.vimrc |
Windows | GVIM | C:\Users\์ฌ์ฉ์์ด๋ฆ\_vimrc |
Linux, mac | NeoVIM | ~/.config/nvim/init.vim |
- VIM์ ์๋ฎฌ๋ ์ดํธํ๋ ์ ๋ช ํ IDE ํ๋ฌ๊ทธ์ธ๋ค๋ ๋น์ทํ ์ค์ ํ์ผ์ ๊ฐ๊ณ ์์ต๋๋ค.
OS | IDE | PlugIn | ์์น |
---|---|---|---|
Linux, mac | Eclipse | vrapper | ~/.vrapperrc |
Windows | Eclipse | vrapper | C:\Users\์ฌ์ฉ์์ด๋ฆ\_vrapperrc |
Linux, mac | IntelliJ IDEA | IdeaVim | ~/.ideavimrc |
... | ... | ... | ... |
- ๋ค์๊ณผ ๊ฐ์ด
.vimrc
ํ์ผ ๋ด์ฉ์ ๊ตฌ์ฑํ๋ฉด ๋ฉ๋๋ค.
"์์ ์๋ฐ์ดํ๋ฅผ ์ฐ๋ฉด ์ฃผ์์ด ๋ฉ๋๋ค.
source functions.vim "source ๋ก ๋ค๋ฅธ ์ค์ ํ์ผ์ include ํ ์ ์์ต๋๋ค.
"set์ ์ฌ์ฉํด VIM์ ๊ธฐ๋ณธ ์ค์ ์ ์ง์ ํ ์ ์์ต๋๋ค.
set number "๋ผ์ธ ๋๋ฒ๊ฐ ๋ณด์ด๋๋ก ํฉ๋๋ค. (๋ผ์ธ ๋๋ฒ๊ฐ ๋ณด์ด๋๋ก ์ค์ ํ๋ ์ชฝ์ด ์ข์ต๋๋ค.)
set ignorecase "๊ฒ์์ ๊ฒ์์ด์ ๋์๋ฌธ์๋ฅผ ๋ฌด์ํ๋ค.
"map์ ์ฌ์ฉํด ์์ ๋ง์ ๋จ์ถํค๋ฅผ ์ค์ ํ ์ ์์ต๋๋ค.
nnoremap <F2> :w "<F2>ํค๋ฅผ ๋๋ฅด๋ฉด ์ ์ฅํฉ๋๋ค.
"์์ ๋ง์ function์ ์ ์ธํ์ฌ VIM์์ ์ฌ์ฉํ๋ ๊ฒ๋ ๊ฐ๋ฅํฉ๋๋ค.
function! ToggleNumber()
if(&relativenumber == 1)
set norelativenumber
set number
else
set relativenumber
endif
endfunc
"์์ ๋ง์ command๋ฅผ ์ค์ ํ๋ ๊ฒ๋ ๊ฐ๋ฅํฉ๋๋ค.
command! ToHtml :so $VIMRUNTIME/syntax/2html.vim
command! Ncd :cd %:p:h
- ์ต์
์ ์ค์ ํ๋ ๋ฐฉ๋ฒ์ ๋ฐ๋ผ ํฌ๊ฒ ๋ค ๊ฐ์ง๋ก ๋๋ฉ๋๋ค.
- boolean :
on
๊ฐ๊ณผoff
๊ฐ์ด ์๋ ์ต์ . - number : ์ซ์๋ก ๊ฐ์ ์ง์ ํด ์ฃผ๋ ์ต์ .
- string : ๋ฌธ์์ด๋ก ๊ฐ์ ์ง์ ํด ์ฃผ๋ ์ต์ .
- list : ์ฝค๋ง๋ก ๊ตฌ๋ถ๋ ๋ฌธ์์ด ๊ฐ์ ๋ชฉ๋ก์ ์ง์ ํด ์ฃผ๋ ์ต์ .
- boolean :
boolean ์ต์ ์ ์ต์ ์ด๋ฆ ์์ no ๋ฅผ ๋ถ์ด๋ฉด off ๋ก ์ค์ ํ๊ฒ ๋ฉ๋๋ค.
- ์์
set number " boolean ์ต์
number ๋ฅผ on ์ผ๋ก ์ค์ ํ๋ค.
set nonumber " boolean ์ต์
number ๋ฅผ off ๋ก ์ค์ ํ๋ค.
set history=2000 " number ์ต์
history ๋ฅผ 1000 ์ผ๋ก ์ค์ ํ๋ค.
set background=dark " string ์ต์
background ๋ฅผ dark ๋ก ์ค์ ํ๋ค.
set backspace=indent,eol,start " list ์ต์
backspace ๋ฅผ indent,eol,start ๋ก ์ค์ ํ๋ค.
VIM์๋ ์๋์ด ํค๋ณด๋ ์ค์ ์ ๋ฌผ๋ก ์ด๊ณ ๋ฐฑ์
ํ์ผ์ด๋ ํน์ ํค๋ณด๋๋ฅผ ์ํ ์ค์ ๊น์ง ๊ต์ฅํ ๋ค์ฑ๋ก์ด ์ต์
๋ค์ด ์์ต๋๋ค.
์ฌ์ง์ด๋ ์ ๊ท์ ์์ง์ ๊ต์ฒด(regexpengine
)ํ๊ฑฐ๋ MS Windows ์์ VIM ์๋ํฐ ํ๋ฉด์ DirectX๋ก ๊ทธ๋ ค๋ผ ๋ ํ
์คํธ ๋ ๋๋ฌ๋ฅผ ์ง์ ํ๋ ์ต์
(renderoptions
)๊น์ง ์์ ์ ๋์
๋๋ค.
์์ ์๊ฒ ํ์ํ ์ต์
๋ค์ ์ ์ ํ์ฌ .vimrc
์ ์ ์ํ๊ณ , Github repository ๋ฑ์ผ๋ก ๊ด๋ฆฌํ๋ฉด ๋ฌด์ฒ ํธ๋ฆฌํฉ๋๋ค.
์ธ์ ๋ ์ด๋์๋ ์ธํฐ๋ท์ด ๋๋ ํ๊ฒฝ์ด๋ผ๋ฉด ์์ ์๊ฒ ์น์ํ VIM ์ค์ ์ ๊ทธ๋๋ก ์ฌ์ฉํ ์ ์์ต๋๋ค.
VIM์ ์ฒ์ ๋ฐฐ์ธ ๋์๋ ์ด๊ฒ์ ๊ฒ ์ค์ ํ๊ณ ์ถ์ ์์ฌ์ด ์์ด๋, ์ต์ ์ด ๋๋ฌด ๋ง์ ์ด๋ค ๊ฒ์ ์ค์ ํด์ผ ํ๋์ง ์ ๋ชจ๋ฅผ ์ ์์ต๋๋ค. ๋ฐ๋ผ์ ์ ๋ถ ์๊ฐํ๊ธฐ๋ ์ด๋ ต๊ณ ์ฃผ๊ด์ ์ผ๋ก ์ ์ ํ ์ฃผ์ ์ต์ ๋ค๋ง ์๊ฐํ๋๋ก ํฉ๋๋ค.
- ์ต์
์ ๋ํ ์ ์ฒด ๋์๋ง์
:help option-summary
๋ก ์ฐพ์๋ณด๋ฉด ๋ฉ๋๋ค. - ๊ฐ๋ณ ์ต์
์ ๋ํ ๋์๋ง์
:help '์ต์ ๋ช '
์ผ๋ก ์ฐพ์๋ณด๋ฉด ๋ฉ๋๋ค.
์ต์ ๋ช ์ ๋์๋ง ๋ด์ ๋ฐ์ดํ์ ํจ๊ป ๋์์๊ธฐ ๋๋ฌธ์ ๋ฐ์ดํ๋ฅผ ๋ฃ์ด์ฃผ๋ฉด ์ ํํ๊ฒ ๊ฒ์๋ฉ๋๋ค.
- ์๋ ์ต์ ๋ชฉ๋ก์ ์ต์ ๋ช ๊ณผ ์ถ์ฝํ ์ต์ ๋ช ์ ํจ๊ป ์๊ฐํฉ๋๋ค.
- boolean ์ต์
. ๊ธฐ๋ณธ๊ฐ์
off
. ๋์๋ง์:help acd
. - ํ์ผ์ ์ด๊ฑฐ๋, ๋ฒํผ๋ฅผ ์ด๋ํ ๋ ์์ ๋๋ ํ ๋ฆฌ๋ฅผ ์๋์ผ๋ก ๋ณ๊ฒฝํด์ค๋๋ค.
- ์ด ์ต์
์ด ์ฌ์ฉ ๊ฐ๋ฅํ์ง ํ์ธํ๋ ค๋ฉด
:echo exists("+autuchdir")
์ ์คํํด๋ด ๋๋ค. ์ถ๋ ฅ๊ฐ์ด 1 ์ด๋ฉด ์ฌ์ฉ ๊ฐ๋ฅํฉ๋๋ค. - ํน๋ณํ ์ํฉ์ด ์๋๋ผ๋ฉด
off
๋ฅผ ์ถ์ฒํฉ๋๋ค. ํ๋ก์ ํธ ๋จ์์ ์์ ์ ํ ๋ ๋ฒ๊ฑฐ๋ก์์ง๋๋ค.
set autochdir " on ์ผ๋ก ์ค์
set noautochdir " off ๋ก ์ค์
set acd " on ์ผ๋ก ์ค์ (์ถ์ฝํ)
set noacd " off ๋ก ์ค์ (์ถ์ฝํ)
- boolean ์ต์
. ๊ธฐ๋ณธ๊ฐ์
off
. ์ถ์ฒ๊ฐ์on
. ๋์๋ง์:help ai
. - INSERT ๋ชจ๋์์ ์ํฐ๋ฅผ ์ ๋ ฅํ์ฌ ๋ค์ ์ค๋ก ๋ด๋ ค๊ฐ๋ฉด, ์๋์ผ๋ก ๋ค์ฌ์ฐ๊ธฐ๋ฅผ ํด ์ค๋๋ค.
- boolean ์ต์
. ๊ธฐ๋ณธ๊ฐ์
off
. ๋์๋ง์:help autoread
. - VIM ์ธ๋ถ์์ ํ์ผ ๋ด์ฉ์ด ๋ณ๊ฒฝ๋๋ฉด ์๋์ผ๋ก ๋ค์ ์ฝ์ด๋ค์ ๋๋ค.
- boolean ์ต์
. ๊ธฐ๋ณธ๊ฐ์
off
. ๋์๋ง์:help autowrite
. - ๋ณ๊ฒฝ ์ฌํญ์ด ์๋ ์ํ์์ ํน์ ๋ช ๋ น์ ์คํํ ๋๋ง๋ค ์๋์ผ๋ก ํ์ผ์ ์ ์ฅํฉ๋๋ค.
- ์ฌ์ฉํ ์๊ฐ์ด ์๋ค๋ฉด, ๋น์ทํ๊ฒ ์๋ํ์ง๋ง ์กฐ๊ฑด์ด ๋ค๋ฅธ
autowriteall
๊ณผ๋ ๋น๊ตํด ๋ณผ ํ์๊ฐ ์์ต๋๋ค.
ํน์ ๋ช ๋ น์ ๋ชฉ๋ก์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค. ์ฃผ๋ก ๋ค๋ฅธ ํ์ผ๋ก ์ด๋ํ๋ ์ข ๋ฅ์ ๋ช ๋ น์ ๋๋ค.
:previous
,:next
:rewind
:first
,:last
:stop
suspend
:tag
:!
:make
CTRL-]
,CTRL-^
- string ์ต์
.
dark
,light
๋ ์ค ํ๋์ ๊ฐ๋ง ์ค์ ๊ฐ๋ฅ. ๋์๋ง์:help 'bg'
- ๋ฐฐ๊ฒฝ์์
dark
๋ก ํ๋๋,light
๋ก ํ๋๋์ ๋ฐ๋ผ ํฐํธ ์๊น์ ์ํฅ์ ์ค๋๋ค. - ํนํ syntax color ๋ฅผ ์ํด color scheme ์ ์ง์ ํ ๊ฒฝ์ฐ ํจ๊ณผ๋ฅผ ๋ณผ ์ ์์ต๋๋ค.
set background=dark
- list ์ต์
.
indent
,eol
,start
๋ฅผ ๋์ดํ๋ ๋ฐฉ์์ผ๋ก ์ค์ ํ ์ ์์ต๋๋ค. ๋์๋ง์:help bs
. - ์ด ์ต์
์
<BS>
ํค์ ์ญ์ ๊ธฐ๋ฅ์ ์ค์ ํด ์ค๋๋ค. - ์ผ๋ฐ์ ์ธ gui ๋ฌธ์ ํธ์ง ํ๋ก๊ทธ๋จ์ ๋ฐฑ์คํ์ด์ค ํค์ ๋๊ฐ์ด ์๋ํ๊ฒ ํ๊ณ ์ถ์ผ๋ฉด
set bs=indent,eol,start
๋ก ์ค์ ํด ์ฃผ๋ฉด ๋ฉ๋๋ค.
Bill Joy๊ฐ VI๋ฅผ ๊ฐ๋ฐํ์ ๋ ์ฌ์ฉํ๋ ์ฅ๋น๋ ADM-3A ํฐ๋ฏธ๋์ด์๋๋ฐ ์ด ํค๋ณด๋์๋
<BS>
ํค๊ฐ ์์์ต๋๋ค. ์ฆ, ์๋ ์์ VI๊ฐ ๊ฐ๋ฐ๋์์ ๋ฌด๋ ต์ ํค๋ณด๋์๋<BS>
ํค๊ฐ ์์๊ธฐ ๋๋ฌธ์ VIM ์์ ์๋กญ๊ฒ ์๊ธด ์ต์ ์ด๋ผ ํ ์ ์์ต๋๋ค. ADM-3A ํฐ๋ฏธ๋์ ํค ๋ ์ด์์์ ์ ์ดํด๋ณด๋ฉด VIM์์HJKL
์ด ์ ํ์ดํ ์ญํ ์ ๋งก๊ฒ ๋์๋์ง๋ ์ ์ ์์ต๋๋ค.
- boolean ์ต์
. ๊ธฐ๋ณธ๊ฐ์
off
. ๋์๋ง์:help bk
. - ํ์ผ์ ๋ฎ์ด์์ ์ ์ฅํ๊ธฐ ์ ์ ๋ฐฑ์ ์ ์์ฑํฉ๋๋ค.
- list ์ต์
. ๋ฐฑ์
์ ์ ์ฅํ ๋๋ ํ ๋ฆฌ ๊ฒฝ๋ก๋ฅผ ์ฝค๋ง๋ก ๊ตฌ๋ถํ์ฌ ์ค์ ํ๋ฉด ๋ฉ๋๋ค. ๋์๋ง์
:help bdir
.
- list ์ต์
. ๋ฐฑ์
ํ์ง ์์ ํ์ผ๋ช
, ๊ฒฝ๋ก ํจํด์ ์ฝค๋ง๋ก ๊ตฌ๋ถํ์ฌ ์ค์ ํ๋ฉด ๋ฉ๋๋ค. ๋์๋ง์
:help bsk
.
- string ์ต์
. Command-line ์์ ํ์คํ ๋ฆฌ ์๋์ฐ๋ฅผ ์ด์ด์ฃผ๋ ๋จ์ถํค๋ฅผ ์ง์ ํฉ๋๋ค. ๋์๋ง์
:help cedit
. - Command-line ์๋์ฐ๋ Command-line ์ ํ์คํ ๋ฆฌ๋ฅผ ์กฐํ/๊ฒ์ํ ์ ์์ผ๋ฉฐ,
:
๋ช ๋ น์ด ์ ๋ ฅ์ NORMAL ๋ชจ๋์ ๊ฐ์ด ํธ์งํ ์ ์์ต๋๋ค. - ๊ธฐ๋ณธ๊ฐ์
<C-f>
์ด๋ฉฐ, ๋ค๋ฅธ ํค ์กฐํฉ ์ค์ ์์ ๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
set cedit=<C-y> " <C-y>๋ก ์ค์
set cedit=<Esc> " <Esc>๋ก ์ค์
- ํธ์ง์์ ์๋์ผ๋ก C ์ธ์ด ์คํ์ผ์ ์ธ๋ดํธ๋ฅผ ์ ์ฉํด ์ค๋๋ค. ๋์๋ง์
:help cin
.
- list ์ต์
. ํด๋ฆฝ๋ณด๋์ ์ฐ๊ฒฐํ ๋ ์ง์คํฐ๋ฅผ ์ค์ ํ๋ ์ต์
. ๋์๋ง์
:help 'clipboard'
. (์ด ํญ๋ชฉ์ ๋ฐ์ดํ๋ฅผ ๋ฃ์ด์ผ ์ ํํ ๊ฒ์๋ฉ๋๋ค.) - ์ค์ ์ ์ํด ์์์ผ ํ๋ ๋ด์ฉ์ด ์ข ์๋ ํธ์ ๋๋ค. ๋์๋ง์ ๊ผผ๊ผผํ ์ฝ์ด๋ณด๋ ๊ฒ์ ๊ถ์ฅํฉ๋๋ค.
- ๋ชจ๋ ๋ณต์ฌ/์ญ์ ์์
์ด ์
๋ ฅ๋๋
unnamed
๋ ์ง์คํฐ๋ฅผ ํด๋ฆฝ๋ณด๋์ ์ฐ๊ฒฐํ๋ค๋๊ฐ+
๋ ์ง์คํฐ์ ์ฐ๊ฒฐํ๋ ๋ฑ์ ์ค์ ์ ํ ์ ์์ต๋๋ค. - gui ๋ฒ์ VIM ๋๋
+xterm_clipboard
๊ธฐ๋ฅ์ด ํฌํจ๋ ์ฑ ์ปดํ์ผ๋ VIM์์๋ง ์ฌ์ฉํ ์ ์์ต๋๋ค.
ํ์ธ ๋ฐฉ๋ฒ์
$ vim --version | grep +xterm_clipboard
- boolean ์ต์
. VI์์ ํธํ ์ฌ๋ถ๋ฅผ ์ค์ ํฉ๋๋ค. ๊ธฐ๋ณธ๊ฐ์
on
. - ๋ค๋ฅธ ๋ง์ ์ต์
๋ค์ ๊ธฐ๋ณธ๊ฐ์ ์ํฅ์ ์ค๋๋ค. ์ถ์ฒ๊ฐ์
off
. (์์ ์ฐธ๊ณ )
set nocp
- string ์ต์
.
<C-p>
,<C-n>
์๋์์ฑ์ ์๋๋ฐฉ์์ ์ค์ ํฉ๋๋ค.
- boolean ์ต์
.
:q
,:bd
๋ฑ์ ๋ช ๋ น์ด๋ฅผ ์ฌ์ฉํ ๋ ์ฌ์ฉ์์ ํ์ธ์ ๋ฐ์ต๋๋ค.
ํธ์ง์ค์ ๋ค๋ฅธ ํ์ผ์ ์ด๊ฑฐ๋ ํ๋ฉด
No write since last change
์๋ฌ๊ฐ ๋ฐ์ํ๋ฉฐ ๋ช ๋ น์ด ์ทจ์๋ฉ๋๋ค. ์์ ํ ๋ด์ฉ์ ์์ ์ ์ํ ๊ฒ์ด๊ธด ํ๋ฐ ์ง์ฆ๋ ๋๊ฐ ์์ต๋๋ค. ์ด ์ต์ ์ ์ค์ ํด์ฃผ๋ฉด ๋ช ๋ น์ด ์ทจ์๋์ง ์๊ณ Yes, No, Cancel ์ ๋ฌผ์ด๋ด ๋๋ค.
- boolean ์ต์
. ์ปค์๊ฐ ์๋ ์ปฌ๋ผ์ ํ์ด๋ผ์ดํธ์ฒ๋ฆฌํด์ค๋ค. ๊ธฐ๋ณธ๊ฐ์
off
. - ์ฌ๋ฏธ์๋ ์ค์ ์ ์ข์ํ๋ ์ฌ๋์๊ฒ
on
์ถ์ฒ.
์ปค์๊ฐ ์๋ ๋ผ์ธ์ ํ์ด๋ผ์ดํธํด์ฃผ๋ ๊ธฐ๋ฅ์ ํธ์ง๊ธฐ์ ์์์ด์ฃ . ์ด ์ต์ ์ ์ค์ ํด์ฃผ๋ฉด ์ด๋ฏธ์ง ํธ์ง๊ธฐ์ฒ๋ผ ์ปค์ ์์น์์ ๊ต์ฐจํ๋ ๊ฑฐ๋ํ ํ์ด๋ผ์ดํธ ์ญ์๊ฐ๋ฅผ ๋ณผ ์ ์๊ฒ ๋ฉ๋๋ค. ์ฆ, ์ปค์์ x ์ขํ์์ ์์น๋ฅผ ํ ๋์ ๋ณผ ์ ์๊ฒ ๋ฉ๋๋ค.
- boolean ์ต์
. ์ปค์๊ฐ ์๋ ๋ผ์ธ์ ํ์ด๋ผ์ดํธ์ฒ๋ฆฌํด์ค๋๋ค. ๊ธฐ๋ณธ๊ฐ์
off
. - ์ปค์ ์์น๋ฅผ ์ฝ๊ฒ ํ์
ํ๊ฒ ํด ์ฃผ๋ ์ค์ํ ๊ธฐ๋ฅ. ๊ฐ๊ธ์ ์ด๋ฉด
on
์ผ๋ก ์ค์ ํด์ค์๋ค.
์ค์ ํ๋ ๊ฒ๋ง์ผ๋ก๋ ์ด ๊ฐ์ด
on
์ด ๋๋ color scheme ๋ ์กด์ฌํฉ๋๋ค. ํํธ, ๋ง์์ ๋๋ color scheme ์ ๋ฐ๊ฒฌํ๋๋ฐ ์ปค์ ๋ผ์ธ์ด ๋ณด์ด์ง ์์ ์ค๋งํ๋ค๋ฉด, ์ด ์ต์ ์on
์ผ๋ก ์ค์ ํด์ฃผ๋ฉด ๋ฉ๋๋ค.
- list ์ต์
. INSERT ๋ชจ๋์์
<C-x><C-k>
๋ก ์๋์์ฑํ ์ฌ์ ํ์ผ์ ๋ชฉ๋ก์ ์ง์ ํด์ค๋๋ค.
- boolean ์ต์
. ํญํค๋ฅผ ๋๋ฅด๋ฉด ํญ์ด ์๋๋ผ ์ค์ ํ ์์ ์คํ์ด์ค๊ฐ ์
๋ ฅ๋๋ค. ๊ธฐ๋ณธ๊ฐ์
off
. - ์คํ์ด์ค์ ์๋
tabstop
์ต์ ์ผ๋ก ์ค์ ํด์ฃผ๋ฉด ๋ฉ๋๋ค.
set expandtab
set tabstop=4
- boolean ์ต์
.
:substitute
๋ช ๋ น, ์ฆ:s
๋ฅผ ์ฌ์ฉํ ๋g
ํ๋๊ทธ๋ฅผ ๊ธฐ๋ณธ๊ฐ์ผ๋ก ์ค์ ํฉ๋๋ค. ๊ธฐ๋ณธ๊ฐ์off
. - ์ด ์ต์
์ด
on
์ํ์ผ ๋:s
์g
์ต์ ์ ์ฃผ๋ฉด, ๋ฐ๋์ ์๋ฏธ๋ก ์๋ํฉ๋๋ค.
- string ์ต์ . gui ๋ฒ์ ์ VIM์์ ์ฌ์ฉํ ํฐํธ๋ฅผ ์ง์ ํด ์ค๋๋ค.
set guifont=Meslo\ LG\ M\ DZ:h11 " gui font ๋ก Meslo LG M DZ ๋ฅผ, ํฐํธ ํฌ๊ธฐ๋ฅผ h11๋ก ์ค์ ํ์๋ค.
- boolean ์ต์
. ๊ฒ์ ๊ฒฐ๊ณผ, ๊ฒ์์ด์ ๋งค์น๋ ๋ฌธ์์ด์ ๊ฐ์กฐ ํ์๋ฅผ ํฉ๋๋ค. ๊ธฐ๋ณธ๊ฐ
off
. - ์ถ์ฒ๊ฐ์
on
.
๊ฒ์ ๊ฒฐ๊ณผ๋ฅผ ํ์ธํ ๋ค์ ๊ฐ์กฐ ํ์๋ฅผ ๋๊ณ ์ถ๋ค๋ฉด
:noh
๋ฅผ ์ ๋ ฅํ๋ฉด ๋ฉ๋๋ค. ๋ฌผ๋ก ๋ค์ ๊ฒ์ ๋์๋ ๋ค์ ๊ฐ์กฐ ํ์๊ฐ ๋ฉ๋๋ค.
- number ์ต์
.
:
๋ช ๋ น์ด์ ํ์คํ ๋ฆฌ๋ฅผ ์ง์ ํ ์ซ์๋งํผ ๊ธฐ์ตํฉ๋๋ค. ๊ธฐ๋ณธ๊ฐ์ 50. - ์ค์ max ๊ฐ์ 10000 ์ ๋๋ค.
ํ์คํ ๋ฆฌ๋
~/.viminfo
ํ์ผ์ ์ ์ฅ๋ฉ๋๋ค.
set history=300
- boolean ์ต์
. ์ด ์ต์
์ ์ค์ ํ๋ฉด ๊ฒ์์ ๋์๋ฌธ์๋ฅผ ๋ฌด์ํฉ๋๋ค. ๊ธฐ๋ณธ๊ฐ์
off
. - ๋ค์ ์์ ์ ๊ฐ์ด
smartcase
์ ํจ๊ป ์ค์ ํ๋ ์ชฝ์ ์ถ์ฒํฉ๋๋ค.
set ignorecase " ๊ฒ์์ ๋์๋ฌธ์ ๋ฌด์ (์๋ฌธ์๋ก๋ ๋๋ฌธ์ ๊ฒ์ ๊ฐ๋ฅ)
set smartcase " ๊ฒ์์ด์ ๋๋ฌธ์๊ฐ ํฌํจ๋์ด ์๋ค๋ฉด ๋์๋ฌธ์๋ฅผ ๋ฌด์ํ์ง ์๋๋ค.
- boolean ์ต์
.
/
๊ฒ์์ ํ ๊ธ์์ฉ ์ ๋ ฅํ ๋๋ง๋ค ๊ฒ์์ ์ํํฉ๋๋ค. ๊ธฐ๋ณธ๊ฐ์off
. - ์ถ์ฒ๊ฐ์
on
์ด๋ฉฐ,hlsearch
์ ํจ๊ป ์ค์ ํ๋ฉด ๋ ์ข์ต๋๋ค.
set hlsearch
set incsearch
- list ์ต์ . ๋น ์์ด๊ถ ํค๋ณด๋๋ฅผ ์ํ ์ต์ ์ผ๋ก, ํน์ ๋ฌธ์๋ฅผ ์๋ฌธ์ผ๋ก ๋งคํํ ์ ์์ต๋๋ค.
- ํ/์ ์ ํ์ ํ์ง ์์๋ ๋ช ๋ น์ด๋ฅผ ์ ๋ ฅํ ์ ์๋ค๋ ์ฅ์ ์ด ์์ต๋๋ค. ์ด์ ๋ํด์๋ ํ๊ตญ์ด ํค๋ณด๋๋ก VIM ์ฌ์ฉํ๊ธฐ ์ฐธ๊ณ .
- Command-line ์ ์ด ์ต์ ์ ์ํฅ์ ๋ฐ์ง ์์ต๋๋ค.
- ํ๊ตญ์ด๋ผ๋ฉด ๋ค์๊ณผ ๊ฐ์ด ์ค์ ํ ์ ์์ต๋๋ค.
" ์ค์ ๋ฐฉ๋ฒ 1
set langmap=ใ
a,ใ
b,ใ
c,ใ
d,ใทe,ในf,ใ
g,ใ
h,ใ
i,ใ
j,ใ
k,ใ
ฃl,ใ
กm,ใ
n,ใ
o,ใ
p,ใ
q,ใฑr,ใดs,ใ
t,ใ
u,ใ
v,ใ
w,ใ
x,ใ
y,ใ
z
" ์ค์ ๋ฐฉ๋ฒ 2
set langmap=ใ
ใ
ใ
ใ
ใทในใ
ใ
ใ
ใ
ใ
ใ
ฃใ
กใ
ใ
ใ
ใ
ใฑใดใ
ใ
ใ
ใ
ใ
ใ
ใ
;abcdefghijklmnopqrstuvwxyz
- boolean ์ต์
.
off
๋ก ์ค์ ํ๋ฉดlangmap
์ด ๋ํดํธ ์ํ๊ฐ ๋ฉ๋๋ค.
- number ์ต์
. ๋ง์ง๋ง ์๋์ฐ์ status line์ ํ์ํ ์ง์ ์ฌ๋ถ๋ฅผ ์ค์ ํ ์ ์์ต๋๋ค. ๊ธฐ๋ณธ๊ฐ์
1
.0
: ํ์ํ์ง ์์ต๋๋ค.1
: ์๋์ฐ๊ฐ ํ๋์ผ ๋์๋ ํ์ํ์ง ์์ต๋๋ค.2
: ํญ์ ํ์ํฉ๋๋ค.
- ์ถ์ฒ๊ฐ์
2
.
- boolean ์ต์
. (๋งคํฌ๋ก ๋ฑ์) ์์
์ ์งํ์ค์ผ ๋์๋ ํ๋ฉด์ ๊ฐฑ์ ํ์ง ์์ต๋๋ค. ๊ธฐ๋ณธ๊ฐ์
off
. - ๋งคํฌ๋ก๋ฅผ ์์ฃผ ์ฌ์ฉํ๋ค๋ฉด ์ด ์ต์
์
on
ํด๋๊ธธ ์ถ์ฒํฉ๋๋ค. ๋งคํฌ๋ก๊ฐ ๋๋ ๋ค์์ ํ๋ฉด์ ๊ฐฑ์ ํ๊ธฐ ๋๋ฌธ์ ๊ต์ฅํ ๋นจ๋ผ์ง ๊ฒ์ฒ๋ผ ๋๊ปด์ง๋๋ค.
IntelliJ IDEA์ VIMํ๋ฌ๊ทธ์ธ์ธ IdeaVim ์ ๊ฒฝ์ฐ ์ด ์ต์ ์ด ์์ด์ ๋งคํฌ๋กค ์ธ ๋๋ง๋ค ์ง๋ฃจํ ์ค๊ฐ ๊ณผ์ ์ ์ ๋ถ ์ง์ผ๋ณด๊ณ ์์ด์ผ ํฉ๋๋ค.
- boolean ์ต์
. ํ ์ค์ด ๋๋ฌด ๊ธธ์ด์ ํ๋ฉด์ ๋์ด๊ฐ๋ฉด, ํ ์ค์ ์ฌ๋ฌ ์ค๋ก ํํํ๊ฒ ๋๋๋ฐ ์ด ์ต์
์ ์ค์ ํด๋๋ฉด ๋จ์ด ๋จ์๋ก ๋ผ์ธ์ด ์๋ฆฝ๋๋ค. ๊ธฐ๋ณธ๊ฐ์
off
. - ๊ธ์ ๋จ์๋ก ๋ผ์ธ์ด ์๋ฆฌ๋ ๊ฒ์ ์ซ์ดํ๋ค๋ฉด
on
์ ์ถ์ฒํฉ๋๋ค.
- number ์ต์
. ํ๊ฐ ๊ฑฐ๋ฆฌ๋ฅผ ์ค์ ํ ์ ์์ต๋๋ค. ๊ธฐ๋ณธ๊ฐ์
0
. - ํ
์คํธ ์ผ์
:set lsp=100
์ผ๋ก ํด๋ณด๋ฉด ๋ชจ๋ํฐ ์ ์ฒด์ ๋ช ๊ฐ ๋ผ์ธ ๋ฐ์ ์ ๋์ค๊ฒ ๋ฉ๋๋ค. - ํ๊ฐ์ด ์ข์ ๋ต๋ตํ๋ค๋ฉด ์ ๋นํ ํ ์คํธํด๋ณด๋ฉฐ ๋ง์์ ๋๋ ๊ฐ์ ์ฐพ์ ์ค์ ํ๋ฉด ๋ฉ๋๋ค.
- ๋จ, MacVIM ๊ฐ์ gui VIM ์์๋ง ๋ฉ๋๋ค.
- boolean ์ต์
.
listchars
์์ ์ค์ ํ ๋ฌธ์๋ค๋ก ๊ณต๋ฐฑ ๋ฌธ์๋ค์ ๋ณด์ฌ์ค๋๋ค. ๊ธฐ๋ณธ๊ฐ์off
. - ์ด ์ต์
์ ์ค์ ํด๋๋ฉด
<Space>
์<Tab>
, ๊ทธ๋ฆฌ๊ณ ์ง์ฆ๋๋ trailing blanks ๋ฅผ ๋ ์ฝ๊ฒ ํ์ ํ ์ ์์ต๋๋ค. - ์ถ์ฒ๊ฐ์
on
. ๊ทธ๋ฆฌ๊ณlistchar
๋ฅผ ํจ๊ป ์ค์ ํ๋ฉด ์ข์ต๋๋ค.
- list ์ต์
.
list
์ต์ ์ดon
์ํ์ผ ๋ ๊ณต๋ฐฑ ๋ฌธ์ ๋ฑ์ ๋ณด์ฌ์ฃผ๋ ๋ฐฉ์์ ์ค์ ํฉ๋๋ค. - ์ค์ ๊ฐ๋ฅํ ํญ๋ชฉ์
eol
,tab
,space
,trail
,extends
,precedes
,conceal
,nbsp
8๊ฐ์ง์ ๋๋ค.
" ํญ์ ยป ์ ๊ณต๋ฐฑ๋ค๋ก ํํํ๊ณ , trailing blanks ๋ฅผ ยท ๋ก ํํํฉ๋๋ค.
set list listchars=tab:ยป\ ,trail:ยท
- boolean ์ต์
. ์ด ์ต์
์
off
ํ๋ฉด ํ๋ฌ๊ทธ์ธ์ ๋ก๋ํ์ง ์์ต๋๋ค. ๊ธฐ๋ณธ๊ฐ์on
. - ๋งค์ฐ ๋๋ฌผ๊ฒ ๋ฐ์ํ๋ ์ผ์ด์ง๋ง, ํ๋ฌ๊ทธ์ธ์ ๋ฌธ์ ๊ฐ ์๊ฒผ์ ๋ ์ฌ์ฉํ ๋งํฉ๋๋ค.
- boolean ์ต์
. ๊ธ์๋ฅผ ์ข ๋ ๊ฐ๋๊ฒ ํํํด์ค๋๋ค. ๊ธฐ๋ณธ๊ฐ์
off
. - ๊ฝค ์์ฉ๋๋ค. ๋ค๋ง gui VIM ์์๋ง ๋ฉ๋๋ค.
- boolean ์ต์
. ๋งฅ์ ์ต์
ํค, ์ฆ
โฅ
ํค๋ฅผmeta
ํค๋ก ์ฌ์ฉํ๊ฒ ํด์ค๋๋ค. ๊ธฐ๋ณธ๊ฐ์off
. - ๋น์ทํ ๋๋์ด ์๊ธด ํ์ง๋ง ๋งฅ์
option
ํค๋alt
ํค๊ฐ ์๋๋๋ค. ๋งฅ ํฐ๋ฏธ๋์์option
ํค์ ์ํ๋ฒณ์ ์กฐํฉํ๋ฉด ํน์๋ฌธ์๋ค(๊ทธ๋ฆฌ์ค ๋ฌธ์ ๋ฑ๋ฑ)์ด ์ ๋ ฅ๋ฉ๋๋ค.<M-a>
๊ฐ์ ์กฐํฉ์ด ์ ๋ ฅ๋์ง ์๋ ๊ฒ์ ๋๋ค. (๋ฆฌ๋ ์ค๋ ์๋์ฐ๋ ์ ๋ฉ๋๋ค.) ์ด ๋๋ฌธ์ ๋งฅ ํฐ๋ฏธ๋์ ์ฌ์ฉํ๋ฉดmap
์ ์ค์ ํ ๋ ๊ณ ๋ฏผ์ค๋ฌ์ด ์ํฉ์ ๋ด์ฐฉํ๊ฒ ๋ฉ๋๋ค. - ๋คํํ ์ด ์ต์
์ ์ฌ์ฉํ๋ฉด MacVIM ์์๋
meta
ํค ์กฐํฉ์ ์ฌ์ฉํ ์ ์๊ฒ ํด ์ค๋๋ค. - ์ฃผ์: gui VIM ์์๋ง ๋ฉ๋๋ค.
if has('mac')
nnoremap ห ddkP
nnoremap โ ddp
endif
nnoremap <M-k> ddkP
nnoremap <M-j> ddp
- list ์ต์
.
%
๋ก ์ด๋ํ ๊ดํธ์ ์ง์ ์ง์ ํด ์ค๋๋ค. ๊ธฐ๋ณธ๊ฐ์(:),{:},[:]
. - VIM์ ๊ธฐ๋ณธ ๊ธฐ๋ฅ ์ค
(
์์ ์ปค์๋ฅผ ๋๊ณ%
๋ฅผ ์ ๋ ฅํ๋ฉด ์ง์ด ๋ง๋)
์๋ก ์ปค์๋ฅผ ์ฎ๊ฒจ์ฃผ๋ ๊ฒ์ด ์์ต๋๋ค. ์ด ์ต์ ์ ํธ์งํ๋ฉด ๊ดํธ ์ธ์๋ ์ง์ ํ ๋ฌธ์์ ์ง์ ์ฐพ์ ์ด๋ํ๊ฒ ํ ์ ์์ต๋๋ค.
" ๋ค์๊ณผ ๊ฐ์ด ํ๋ฉด < ๊ณผ > ๋ ์ง์ผ๋ก ์ง์ ๋์ด % ๋ก ์ด๋ํ ์ ์๊ฒ ๋ฉ๋๋ค.
set mps=(:),{:},[:],<:>
" ๊ธฐ๋ณธ ์ค์ ์ ๋๋ค์ ์์ฑํ๋ ๊ฒ์ด ๋ฒ๊ฑฐ๋กญ๋ค๋ฉด ๋ค์๊ณผ ๊ฐ์ด ํ๋ฉด ๊ธฐ๋ณธ ์ค์ ์ <:> ์ ์ถ๊ฐํ ์ ์์ต๋๋ค.
set mps+=<:>
:autocmd
๋ฅผ ์ฌ์ฉํ๋ฉด ํ์ผ ํ์ ์ ๋ฐ๋ผ ๋ค๋ฅด๊ฒ ์๋ํ๊ฒ ๋ง๋ค ์๋ ์์ต๋๋ค.
" ํ์ผ ํ์ฅ๋ช
์ด c,cpp,java ์ธ ๊ฒฝ์ฐ = ์ ; ๋ฅผ ์ง์ผ๋ก ์ง์ ํฉ๋๋ค.
:au FileType c,cpp,java set mps+==:;
- ์ฃผ์ : ๊ฐ์ ๋ฌธ์๋ ์ง์ผ๋ก ์ง์ ํ ์ ์์ต๋๋ค. ๋ฐ๋ผ์
":"
๋':'
๋ ์ค์ ํ ์ ์์ต๋๋ค. - ์ฐธ๊ณ : matchit ํ๋ฌ๊ทธ์ธ์ ์ฌ์ฉํ๋ฉด
%
๋ก html ํ๊ทธ์ ๋ซ๋ ํ๊ทธ ์ฌ์ด๋ฅผ ์ ํํ ์ ์์ต๋๋ค.
- string ์ต์
. ๋ชจ๋๋ณ ๋ง์ฐ์ค ์ฌ์ฉ์ ์ค์ ํฉ๋๋ค. ๊ธฐ๋ณธ๊ฐ์ gui ์ธ ๊ฒฝ์ฐ
a
. - ํฐ๋ฏธ๋ VIM์ ๊ฒฝ์ฐ ๋ง์ฐ์ค ์ฌ์ฉ์ด ์ค์ ๋์ด ์์ง ์๊ธฐ ๋๋ฌธ์ VIM ํธ์ง ํ๋ฉด์ ๋ง์ฐ์ค๋ก ํด๋ฆญํด๋ ์ปค์ ์์น๊ฐ ์ด๋ํ๋ ์ผ์ ์์ต๋๋ค. ๋ฐ๋ผ์ (๋๋ฌผ๊ฒ ์ง๋ง)๋ง์ฐ์ค๋ก ํธ์ง ํ๋ฉด์ ํด๋ฆญํด์ ์ปค์ ์์น๋ฅผ ์ฎ๊ธฐ๋ ์ผ์ด ๊ฐ๋ฅํ๊ฒ ํ๋ ค๋ฉด ์ด ์ต์ ์ ์ค์ ํด์ฃผ์ด์ผ ํฉ๋๋ค.
n
,v
,i
,c
,h
,a
,r
์ด๋ ๊ฒ 7 ๊ฐ์ง์ ์ต์ ์ด ์์ง๋ง ๋๋ถ๋ถ ๋ชจ๋์ ๋ฐ๋ผ ๋ง์ฐ์ค ์ฌ์ฉ์ ํ๋์ฉ ํ์ฉํ๋ ๋ด์ฉ์ ๋๋ค.- ๊ธฐ์ ๋ง์ฐ์ค ์ฌ์ฉ์ ์ค์ ํ๊ณ ์ถ๋ค๋ฉด ๋ชจ๋ ๋ชจ๋๋ฅผ ์๋ฏธํ๋
a
์ต์ ๋ง ์ค์ ํด ์ฃผ๋ฉด ๋ฉ๋๋ค.
set mouse=a
- boolean ์ต์
. ํ์ดํ ์ค์ ๋ง์ฐ์ค ํฌ์ธํฐ๋ฅผ ์จ๊ฒจ์ค๋๋ค. ๊ธฐ๋ณธ๊ฐ์
on
. - gui VIM ์์๋ง ์ค์ ๊ฐ๋ฅํฉ๋๋ค.
- list ์ต์
.
<C-a>
,<C-x>
์ฆ๊ฐ ๋์์ด ๋๋ ์ซ์์ ํจํด์ ์ง์ ํฉ๋๋ค. ๊ธฐ๋ณธ๊ฐ์bin,ortal,hex
- NORMAL ๋ชจ๋์์ ์ซ์ ์์ ์ปค์๋ฅผ ์ฌ๋ฆฐ ๋ค์
<C-a>
๋ฅผ ์ ๋ ฅํ๋ฉด ์ซ์๊ฐ1
์ฉ ๋์ด๋๊ณ ,<C-x>
๋ฅผ ์ ๋ ฅํ๋ฉด ์ซ์๊ฐ1
์ฉ ์ค์ด๋ญ๋๋ค. ์ข ์ข ๋ณต์กํ ์ซ์๋ฅผ ๋ณ๊ฒฝํ ์ผ์ด ์์ ๋ ํธ๋ฆฌํฉ๋๋ค. ๊ฐ๋ น248
๊ฐ์ ์ซ์๋ฅผ ๋บ์ ํ๋ ค๋ฉด ์์ฐ์ ํ๊ฑฐ๋ ๊ณ์ฐ๊ธฐ๋ฅผ ์จ์ผ ํ ํ ๋ฐ, ๊ทธ๋ฅ NORMAL ๋ชจ๋์์248<C-x>
๋ง ์ ๋ ฅํ๋ฉด ๋๊ฑฐ๋ ์. ํนํ ์์ฐ์ด ์ด๋ ค์ด 2์ง์, 8์ง์, 16์ง์๋ฅผ ๋ค๋ฃฐ ๋ ๋์์ด ๋ฉ๋๋ค. - ์ต์
๋ชฉ๋ก์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
alpha
: ์ํ๋ฒณ์ ์ฆ๊ฐํฉ๋๋ค. ์ฆ,a
์์ ์ปค์๋ฅผ ๋๊ณ<C-a>
๋ฅผ ์ ๋ ฅํ๋ฉดb
๊ฐ ๋ฉ๋๋ค.octal
:0
์ผ๋ก ์์ํ๋ ์ซ์๋ค์ 8์ง์๋ก ์ธ์ํ๊ณ ์ฆ๊ฐํฉ๋๋ค.hex
:0x
,0X
๋ก ์์ํ๋ ์ซ์๋ค์ 16์ง์๋ก ์ธ์ํ๊ณ ์ฆ๊ฐํฉ๋๋ค.bin
:0b
,0B
๋ก ์์ํ๋ ์ซ์๋ค์ 2์ง์๋ก ์ธ์ํ๊ณ ์ฆ๊ฐํฉ๋๋ค.
- ์ฐธ๊ณ :
1
์์9
๋ก ์์ํ๋ ๋ณดํต ์ซ์๋ ๊ธฐ๋ณธ์ ์ผ๋ก 10์ง์๋ก ์ธ์๋ฉ๋๋ค.
" ๋ชจ๋ ์ค์ ํ๋ ค๋ฉด ๋ค์๊ณผ ๊ฐ์ด ํ๋ฉด ๋ฉ๋๋ค.
set nf=alpha,octal,hex,bin
" ์์
์ค, ์ ์์ ํ์์ ๋ฐ๋ผ ์ถ๊ฐํ๋ ค๋ฉด ์ปค๋งจ๋๋ผ์ธ์์ ๋ค์๊ณผ ๊ฐ์ด ์
๋ ฅํฉ๋๋ค.
:set nf+=bin
" ์ ๊ฑฐํ๋ ค๋ฉด ๋ค์๊ณผ ๊ฐ์ด ํฉ๋๋ค.
:set nf-=bin
- boolean ์ต์
. ํ๋ฉด ์ผ์ชฝ์ ๋ผ์ธ ๋๋ฒ๋ฅผ ๋ณด์ฌ์ค๋๋ค. ๊ธฐ๋ณธ๊ฐ์
off
. - VIM ์ฌ์ฉ ์ค์๋ ๋ผ์ธ ์ ํ๋ฅผ ๋ง์ด ํ๊ฒ ๋๋ ํ์์ ์ธ ์ต์
์ด๋ผ ๋ณผ ์ ์์ต๋๋ค. ์ถ์ฒ๊ฐ์
on
.
- number ์ต์
. ํ๋ฉด ์ผ์ชฝ ๋ผ์ธ ๋๋ฒ์ width๋ฅผ ์ค์ ํฉ๋๋ค. ๊ธฐ๋ณธ๊ฐ์
4
.
- string ์ต์
. INSERT ๋ชจ๋์์์
<C-x><C-o>
์๋์์ฑ ๊ธฐ๋ฅ์ ์ค์ ํฉ๋๋ค. ๊ธฐ๋ณธ ๊ฐ์ ์์ต๋๋ค. - ์ค์ ์ ์ํด ๊ณต๋ถํด์ผ ํ๋ ๋ด์ฉ์ด ๋ง์ ์ต์
์
๋๋ค. ์์ธํ ๋ด์ฉ์ ๋ณด๋ ค๋ฉด
:h complete-functions
๋ฅผ ์ ๋ ฅํฉ๋๋ค. - ์๋์์ฑ ํ๋ฌ๊ทธ์ธ์ธ youcompleteme์ ์ค์นํ๋ค๋ฉด ๋ค์๊ณผ ๊ฐ์ด ์ค์ ํ๊ฒ ๋ฉ๋๋ค.
set omnifunc=syntaxcomplete#Complete
- string ์ต์ . ์์ ๋ง์ operator ๋ฅผ ๋ง๋ค ์ ์๋ ์ต์ ์ ๋๋ค. ๊ธฐ๋ณธ๊ฐ์ ์์ต๋๋ค.
- NORMAL ๋ชจ๋์ ํต์ฌ์ ์ด๋ฃจ๋ operator ๋ motion ์์ ์ฐ์ฌ ๊ฐ ๋ชจ์
์ ๋์์ ์ง์ํฉ๋๋ค.
d
๋y
๊ฐ์ ๋ช ๋ น์ด๋ค์ด operator ๋ผ ํ ์ ์์ต๋๋ค. ์๋ฅผ ๋ค์ดd3j
๋ 3์ค์ ์ญ์ ํฉ๋๋ค. operatorfunc
์ต์ ์g@
operator ์ ์ฌ์ฉ์๊ฐ ์์ฑํ ํจ์์ด๋ฆ์ ๋งคํํ๋ ๊ธฐ๋ฅ์ด๋ผ ํ ์ ์์ต๋๋ค. ์ดํg@
์ motion์ ์ ๋ ฅํ๋ฉด ์ง์ ํ ํจ์๋ฅผ ์คํํด์ค๋๋ค.g@
์ ์ ๋ ฅ์ด ๋ฒ๊ฑฐ๋กญ๊ฒ ๋๊ปด์ง๊ฒ ์ง๋ง ํฐ ๋ฌธ์ ๋ ์ ๋ฉ๋๋ค.:map
์ด ์์ผ๋๊น์.- ์์ธํ ๋ด์ฉ๊ณผ ์์ ๋
:help 'operatorfunc'
๋ฅผ ์ฐธ๊ณ ํ๋ฉด ๋ฉ๋๋ค.
- number ์ต์ . INSERT ๋ชจ๋์์ ์๋์์ฑ ๊ธฐ๋ฅ์ ์ฌ์ฉํ ๋ ๋ณด์ฌ์ค ์์ดํ ์ซ์์ max ๊ฐ์ ์ค์ ํฉ๋๋ค.
- boolean ์ต์
. READONLY ๋ชจ๋๊ฐ ๋์ด
:w
๋ก ์ ์ฅ์ด ๋์ง ์์ต๋๋ค. ๊ธฐ๋ณธ๊ฐ์off
. - READONLY ๋ชจ๋์ผ ๋ ์ ์ฅ์ ํ๋ ค๋ฉด
:w!
๋ฅผ ํตํด ๊ฐ์ ๋ก ํ๋ฉด ๋ฉ๋๋ค.
- boolean ์ต์
. ๋ผ์ธ ๋๋ฒ๋ฅผ ์ปค์ ์์น ์๋๊ฐ์ผ๋ก ๋ณด์ฌ์ค๋๋ค. ๊ธฐ๋ณธ๊ฐ์
off
. - ๋ง์ฝ ์์๋ก ์๋ ๋ผ์ธ ๋๋ฒ์ ์ ๋ ๋ผ์ธ ๋๋ฒ๋ฅผ ๋ฐ๊ฟ๊ฐ๋ฉฐ ์ฌ์ฉํ๋ ค๋ฉด ๋ค์๊ณผ ๊ฐ์ ํจ์๋ฅผ
.vimrc
์ ๋ฃ์ด๋๊ณ:map
์ ์ ์ํ๋ฉด ํธ๋ฆฌํฉ๋๋ค.
function! ToggleNumber()
if(&relativenumber == 1)
set norelativenumber
set number
else
set relativenumber
endif
endfunc
- boolean ์ต์
.
:map
์ผ๋ก ์ค์ ํ ๊ฐ๋ค์ด ์ฌ๊ท์ ์ผ๋ก ์๋ํ๋ ๊ฒ์ ํ์ฉํฉ๋๋ค. ๊ธฐ๋ณธ๊ฐ์on
. - ์ด ๊ฐ์ ๊ฐ๋ฅํ ํ
off
๋ก ํ์ง ์๋ ์ชฝ์ด ์ข์ต๋๋ค. ์๋ง์ Vim script ์ ํ๋ฌ๊ทธ์ธ๋ค์ด ์ด ๊ฐ์ดon
์ธ ์ํ๋ฅผ ์ ์ ํ๊ณ ์์ฑ๋์๊ธฐ ๋๋ฌธ์ ๋๋ค. (:map
์ ๋ฉ๋ฆฌํ๊ณ:nnoremap
,:inoremap
,:vnoremap
,:cnoremap
์ ๊ฐ๊น์ด ํ๋ ๊ฒ์ด ์ข์ต๋๋ค.)
- boolean ์ต์
. INSERT ๋ชจ๋์์ ํ์ดํ์ ํ๋ฉด ๊ฐ์ฅ ์ผ์ชฝ์ ์๋ก์ด ๊ธ์๋ค์ด ๋ค์ด๊ฐ๋๋ค. ์ฆ ์ค๋ฅธ์ชฝ์์ ์ผ์ชฝ์ผ๋ก ๊ธ์ ์ฐ๊ฒ ๋ฉ๋๋ค. ๊ธฐ๋ณธ๊ฐ์
off
.
- boolean ์ต์ . ์ด ์ต์ ์ ์ค์ ํ๋ฉด (์๋์ด์ฒ๋ผ) ์ค๋ฅธ์ชฝ์์ ์ผ์ชฝ ์ฐ๊ธฐ๊ฐ ๋์ด ํ๋ฉด์ ์ข์ฐ๊ฐ ๋ฐ๋๋๋ค.
- VIM์ ์์ํ ์น๊ตฌ์๊ฒ ์ด ์ต์ ์ผ๋ก ์ฅ๋์ ์น์ง ๋ง์ธ์.
- boolean ์ต์
. ์ปค์ ์์น ์ ๋ณด๋ฅผ ์ํ ๋ผ์ธ์ ๋ณด์ฌ์ค๋๋ค. ๊ธฐ๋ณธ๊ฐ์
off
.
- list ์ต์ . VIM์ด ๋ฐํ์์ ํ์ผ์ ๊ฒ์ํด ์ฐธ์กฐํ๋ ๋๋ ํ ๋ฆฌ์ ๋ชฉ๋ก์ ๋๋ค.
- ์์ธํ ๋ด์ฉ์
:help 'runtimepath'
๋ฅผ ์ฐธ๊ณ .
- number ์ต์
.
<C-u>
,<C-d>
๋ก ํ ๋ฒ์ ์คํฌ๋กคํ ๋ผ์ธ์ ์ซ์๋ฅผ ์ง์ ํฉ๋๋ค. ๊ธฐ๋ณธ๊ฐ์ ํฐ๋ฏธ๋ height์ ์ ๋ฐ.
- number ์ต์
. ์ปค์๊ฐ ํ๋ฉด ๋์ ๋๋ฌํ ๋ค์, ํ ๋ฒ ๋ ์ด๋ํ ๋ ์ ํํ ๋ผ์ธ ์๋ฅผ ์ง์ ํฉ๋๋ค. ๊ธฐ๋ณธ๊ฐ์
1
. - ์ด ์ต์
์
<C-y>
,<C-e>
์ ์ํฅ์ ์ฃผ๋ ์ต์ ์ด ์๋๋๋ค. ๋งํ์๋ฉด ํ๋ฉด ๋์ ๋๋ฌํ์ ๋์j
,k
์ ์ํฅ์ ์ฃผ๋ ์ต์ ์ด๋ผ ํ ์ ์์ต๋๋ค.
- number ์ต์
. ์ปค์ ์คํฌ๋กค์ offset์ ์ง์ ํฉ๋๋ค. ๊ธฐ๋ณธ๊ฐ์
0
. - ์ด ์ต์
์ ์ค์ ํ๊ณ
H
,L
์ ์ ๋ ฅํด ๋ณด๋ฉด ์๋ฏธ๋ฅผ ๋ฐ๋ก ์ ์ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด3
์ผ๋ก ์ค์ ํ๋ฉด ์ปค์๋ฅผ ์๋ฌด๋ฆฌ ์๋ก ์ฌ๋ ค๋ (๊ฐ์ฅ ์ ์ค์ด ์๋๋ผ๋ฉด) ํญ์ ์ปค์๋ณด๋ค ์์ 3 ์ค์ด ์๊ฒ ๋ฉ๋๋ค. ์๋์ชฝ๋ ๋ง์ฐฌ๊ฐ์ง์ ๋๋ค.
- string ์ต์
.
:!
๋ช ๋ น์์ ์ฌ์ฉํ ์์ ์ง์ ํฉ๋๋ค. ๊ธฐ๋ณธ๊ฐ์$SHELL
๋๋sh
์ ๋๋ค. MS ๊ณ์ด์ด๋ผ๋ฉด ๊ธฐ๋ณธ๊ฐ์command.com
์ด๋cmd.exe
๊ฐ ๋ฉ๋๋ค. - VIM ์ ์ฌ์ฉํด ํธ์ง์์
์ ํ๋ ๋์ค ์ ๋ช
๋ น์ด๋ฅผ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ๋ค์ด ๋ช ๊ฐ์ง ์์ต๋๋ค.
:shell
๋ช ๋ น์ด ์ฌ์ฉ. VIM์์ ๊ด๋ฆฌํ๋ ํฐ๋ฏธ๋์ด ์ด๋ฆฝ๋๋ค. ๋ค์ ๋์์ค๋ ค๋ฉด$ exit
ํ๋ฉด ๋ฉ๋๋ค.:!
๋ช ๋ น์ด ์ฌ์ฉ. ๋ด๋ถ์์ ์ธ๋ถ ๋ช ๋ น์ด๋ฅผ ๋ฐ๋ก ์คํํ ์ ์์ต๋๋ค. ๊ฐ๋ น,:! touch test
๋ test๋ผ๋ ํ์ผ์ ์์ฑํ๊ณ ,:! rm test
๋ test ํ์ผ์ ์ญ์ ํฉ๋๋ค. ์์ธํ ๋ด์ฉ์:help :!
์ ์ฐธ๊ณ .- ์คํ ๊ฒฐ๊ณผ๋ฅผ ๋ณด๋ ค๋ฉด
:r!
๋ฅผ ์ฐ๋ฉด ๋ฉ๋๋ค. ์๋ฅผ ๋ค์ด:r! ls
๋ls
์คํ ๊ฒฐ๊ณผ๋ฅผ ํ์ฌ ์ปค์ ์์น์ ๋ถ์ฌ๋ฃ์ต๋๋ค. - ๋ง์ฝ ์คํ ๊ฒฐ๊ณผ๋ฅผ ๋ณด๊ณ ๋ ์ถ์๋ฐ ํธ์ง๊ธฐ์ ๋ถ์ฌ๋ฃ๊ณ ์ถ์ง๋ ์๋ค๋ฉด, ๋ ์ง์คํฐ์ ์ง์ด๋ฃ๋ ๋ฐฉ๋ฒ๋ ์์ต๋๋ค.
- ์คํ ๊ฒฐ๊ณผ๋ฅผ ๋ณด๋ ค๋ฉด
:let @a=system('ls') " a ๋ ์ง์คํฐ์ ls ์คํ ๊ฒฐ๊ณผ ์ถ๋ ฅ๋ฌธ์ ์
๋ ฅํฉ๋๋ค.
- number ์ต์
.
cindent
,<<
,>>
์์ ์ฌ์ฉํ๋ ์ธ๋ดํธ ๊ธธ์ด๋ฅผ ์ง์ ํฉ๋๋ค. ๊ธฐ๋ณธ๊ฐ์8
.
- string ์ต์ . ํ ์ค์ด ๋๋ฌด ๊ธธ์ด ์ฌ๋ฌ ์ค๋ก ํํ๋ ๋, ์๋์ชฝ ์ค๋ค์ด ์์ชฝ ์ค์์ ์ด์ด์ง์ ์ค์ ํ ๊ธฐํธ๋ฅผ ์ฌ์ฉํด ๊ฐ์ฅ ์ผ์ชฝ์ ํ์ํฉ๋๋ค.
- ์ถ์ฒํ๋ ๊ฐ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
set showbreak=+++\
" ๋ค์๊ณผ ๊ฐ์ด ํด๋ ๋ฉ๋๋ค.
:let &showbreak = '+++ '
- boolean ์ต์
. NORMAL ๋ชจ๋์์ ์
๋ ฅ์ค์ธ ๋ช
๋ น์ด๋ฅผ ํ๋ฉด์ ์ค๋ฅธ์ชฝ ์๋์ ๋ณด์ฌ์ค๋๋ค. ๊ธฐ๋ณธ๊ฐ์
on
์ด์ง๋ง, Unix๋ผ๋ฉดoff
์ ๋๋ค. - ๋ง์ฝ ํฐ๋ฏธ๋์ด ๋๋ฆฌ๋ค๋ฉด ์ด ์ต์
์
off
๋ก ํด๋ณด๋ ๊ฒ๋ ๋์์ด ๋ ์ ์์ต๋๋ค.
- boolean ์ต์
. ์ง์ด ๋ง๋ ๊ดํธ์ ํ์ด๋ผ์ดํ
์ฒ๋ฆฌ๋ฅผ ํด ์ค๋๋ค. ๊ธฐ๋ณธ๊ฐ์
off
.
- number ์ต์
. ํ๋ฉด ์๋จ์ ํญ ๋ผ์ธ ๋
ธ์ถ์ ์ค์ ํฉ๋๋ค. ๊ธฐ๋ณธ๊ฐ์
1
. - ์ธ ๊ฐ์ง ์ต์
์ด ์์ต๋๋ค.
0
: ํญ ๋ผ์ธ์ ๋ณด์ฌ์ฃผ์ง ์์ต๋๋ค.1
: ํญ์ด ๋ ๊ฐ ์ด์์ผ ๋๋ง ๋ณด์ฌ์ค๋๋ค.2
: ํญ ๋ผ์ธ์ ํญ์ ๋ณด์ฌ์ค๋๋ค.
- number ์ต์
. ์ํ ์คํฌ๋กค์ ํ ๋ ํ ๋ฒ์ ์คํฌ๋กคํ ์ปฌ๋ผ ์๋ฅผ ์ง์ ํฉ๋๋ค. ๊ธฐ๋ณธ๊ฐ์
0
. - ์ฐธ๊ณ : ์ข์ฐ ์คํฌ๋กค๋ฅผ ์ฌ์ฉํ๋ ค๋ฉด
wrap
์ต์ ์off
๋ก ์ค์ ํด์ผ ํฉ๋๋ค.
set nowrap
set sidescroll=2
set sidescrolloff=10
- number ์ต์
. ์ํ ์คํฌ๋กค์ ํ ๋์ offset์ ์ง์ ํฉ๋๋ค. ๊ธฐ๋ณธ๊ฐ์
0
.
- boolean ์ต์
. ๊ฒ์์ ๊ฒ์์ด์ ๋๋ฌธ์๊ฐ ํฌํจ๋์ด ์๋ค๋ฉด
ignorecase
์ต์ ์ ๋ฌด์ํฉ๋๋ค. ๊ธฐ๋ณธ๊ฐ์off
. ignorecase
์ต์ ๊ณผ ํจ๊ป ์ค์ ํ๋ ์ชฝ์ ์ถ์ฒํฉ๋๋ค.
- boolean ์ต์
. ๋ค์ ๋ผ์ธ์ ํธ์งํ ๋ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด ์ ํ์ค๋ฅผ ๊ณ ๋ คํ์ฌ ์๋์ผ๋ก ์ธ๋ดํธ๋ฅผ ๋ฃ์ด์ค๋๋ค. ๊ธฐ๋ณธ๊ฐ์
off
.
- boolean ์ต์
.
<BS>
๋ก ์คํ์ด์ค ์ธ๋ดํธ๋ฅผ ์ง์ธ ๋ ํญ ๋จ์๋ก ์ญ์ ํฉ๋๋ค. ๊ธฐ๋ณธ๊ฐ์off
. - ํญ์ ์คํ์ด์ค๋ก ๋์ฒดํ ๋ ๊ฐ์ฅ ๊ท์ฐฎ์ ์ ์ธ ์ธ๋ดํธ ์ญ์ ๋ฅผ ํธ๋ฆฌํ๊ฒ ํด ์ฃผ๋ ๊ธฐ๋ฅ์
๋๋ค.
shiftwidth
,tabstop
๋ฑ์ ๊ณ ๋ คํ์ฌ ์๋ํฉ๋๋ค. - ์๋ฅผ ๋ค์ด ํญ ํ๋๋ฅผ ์คํ์ด์ค 4 ๊ฐ๋ก ์ค์ ํด ๋์๋ค๋ฉด, 8๊ฐ ์คํ์ด์ค๋ก ์ด๋ฃจ์ด์ง ์ธ๋ดํธ๋ฅผ
<BS>
๋ ๋ฒ์ผ๋ก ์ง์ธ ์ ์์๋๋ค.
- boolean ์ต์
. ๋ผ์ธ ์ ํ๋ฅผ ํ ๋, ์ปค์๋ฅผ ์ฒซ ๋ฒ์งธ ๊ธ์ ์์น๋ก ์ฎ๊น๋๋ค. ๊ธฐ๋ณธ๊ฐ์
on.
- ์ด ์ต์
์ด
on
์ด๋ฉดH
,G
๊ฐ์ ๋ช ๋ น์ ์ฌ์ฉํ ๋, ์ปค์๊ฐ ํญ์ ๊ฐ์ฅ ์ผ์ชฝ ๊ธ์์ ์์น๋ก ์ด๋ํฉ๋๋ค. off
์ํ์ผ ๋๋ ์ปค์์ ์ข์ฐ ์์น๋ฅผ ์ด๋ํ์ง ์๊ณ ์ ํํฉ๋๋ค.
- ํ๋ฉด ํ๋จ์ ์ํํ์์ค ํ์์ ํธ์งํ ์ ์์ต๋๋ค.
- ์์ธํ ๋ด์ฉ์
:help statusline
์ฐธ๊ณ .
- list ์ต์ . ๋ฒํผ ์ด๋์ ํ ๋ ์๋์ฐ์ ํญ ๋ฑ์ ์๋์ ์ค์ ํฉ๋๋ค. ๊ธฐ๋ณธ๊ฐ์ ์์ต๋๋ค.
- ๊ฐ๋ฅํ ์ต์
๋ค์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
useopen
: ๋ฒํผ ์ด๋์ ํ๋ฉด ํด๋น ๋ฒํผ๊ฐ ์ด๋ ค ์๋ ์ฒซ ๋ฒ์งธ ์๋์ฐ๋ก ์ ํํฉ๋๋ค. ํด๋น ์๋์ฐ๊ฐ ์๋ค๋ฉด, ํ์ฌ ์๋์ฐ์ ์ด์ด์ค๋๋ค.usetab
:useopen
๊ณผ ๋น์ทํ์ง๋ง, ์ด ์ต์ ์ ํญ์ ์ฌ์ฉํฉ๋๋ค.split
: ์๋์ฐ๋ฅผ ์ํ๋ก ๋ถํ ํฉ๋๋ค.vsplit
: ์๋์ฐ๋ฅผ ์ข์ฐ๋ก ๋ถํ ํฉ๋๋ค.newtab
: ์๋ก์ด ํญ์ ์ฝ๋๋ค.
- ๊ธฐ๋ณธ๊ฐ์ผ๋ก ์ฌ์ฉํ๋ ๊ฒ์ ์ถ์ฒํฉ๋๋ค.
- string ์ต์ . ํด๋น ์ ํ์ค๋ฅผ ์ ์ฉํฉ๋๋ค. ๊ธฐ๋ณธ๊ฐ์ ์์ต๋๋ค.
- ์ฃผ๋ก ํ๋ก๊ทธ๋๋ฐ ์ธ์ด๋ณ ์ ํ์ค ํ๋ฌ๊ทธ์ธ ๋ด๋ถ์ ์ ์๋ฉ๋๋ค.
- string ์ต์ . ํญ ํ์ด์ง ๋ผ์ธ์ ํ์์ ํธ์งํ ์ ์์ต๋๋ค. ๊ธฐ๋ณธ๊ฐ์ ์์ต๋๋ค.
statusline
๊ณผ ๋น์ทํ ๊ฐ์ผ๋ก ํธ์งํ ์ ์์ต๋๋ค. ์์ธํ ๋ด์ฉ์:help setting-tabline
์ฐธ๊ณ .
- number ์ต์
.
<Tab>
์ ๋ช ๊ฐ์<Space>
๋ก ๋์ฒดํ ์ง๋ฅผ ์ค์ ํฉ๋๋ค. ๊ธฐ๋ณธ๊ฐ์0
. <Tab>
์<Space>
๋ก ๋ณ๊ฒฝํด์ฃผ๋:retab
๋ช ๋ น์ด๊ฐ ์ด ๊ฐ์ ์ฐธ์กฐํฉ๋๋ค.
~
๋ช ๋ น์ด๋ฅผ operator ์ฒ๋ผ ์ฌ์ฉํ ์ ์๊ฒ ๋ฉ๋๋ค. ๊ธฐ๋ณธ๊ฐ์off
.- ๋์๋ฌธ์ ๋ณ๊ฒฝ์ ์์ฃผ ํ๋ค๋ฉด ์ด ์ต์
์ด ๋์๋ ์ ์์ต๋๋ค.
~$
,~3j
๊ฐ์ ๋ช ๋ น์ด ๊ฐ๋ฅํ๊ฒ ๋ฉ๋๋ค.
- boolean ์ต์ . ๋ช ๋ น์ด ํค์คํธ๋กํฌ ์ ๋ ฅ์์ ํ์์์์ ์ค์ ํด ์ค๋๋ค.
- ๋จ๋
์ผ๋ก ์ค์ ํ๊ธฐ๋ณด๋ค
ttimeout
,timeoutlen
,ttimeoutlen
๋์๋ง ํญ๋ชฉ์ ์ฝ์ด๋ณด๊ณ ํจ๊ป ์ค์ ํด์ฃผ๋ ๊ฒ์ด ์ข์ต๋๋ค. - ๊ฐ๊ธ์ ์ด๋ฉด ๊ฑด๋๋ฆฌ์ง ์๋๋ก ํฉ๋๋ค.
- boolean ์ต์
. ์๋์ฐ ํ์ดํ์ด ํ์๋๋๋ก ํฉ๋๋ค. ๊ธฐ๋ณธ๊ฐ์
off
. - VIM์ด
+title
์ต์ ๊ณผ ํจ๊ป ์ปดํ์ผ ๋์์ด์ผ ์ธ ์ ์์ต๋๋ค.
$ vim --version | grep +title
๋ก ํ์ธํ ์ ์์ต๋๋ค.
- number ์ต์
. ์๋์ฐ ํ์ดํ ๋ฌธ์์ด์ ๊ธธ์ด๋ฅผ ์ค์ ํฉ๋๋ค. ๊ธฐ๋ณธ๊ฐ์
85
. - VIM์ด
+title
์ต์ ๊ณผ ํจ๊ป ์ปดํ์ผ ๋์์ด์ผ ์ธ ์ ์์ต๋๋ค.
- string ์ต์ . ์๋์ฐ ํ์ดํ์ ํ์์ ์ค์ ํฉ๋๋ค. ๊ธฐ๋ณธ๊ฐ์ ์์ต๋๋ค.
- ํฐ๋ฏธ๋์ด ํด๋น ๊ธฐ๋ฅ์ ์ง์ํด์ผ๋ง ์ฌ์ฉํ ์ ์์ต๋๋ค.
- ํ์์
statusline
๊ณผ ๊ฐ์ต๋๋ค.
- number ์ต์
. ๋ฐฑ๊ทธ๋ผ์ด๋ ํ๋ฉด์ ํฌ๋ช
๋๋ฅผ ํผ์ผํธ ๊ฐ์ผ๋ก ์ค์ ํฉ๋๋ค. ๊ธฐ๋ณธ๊ฐ์
0
. - ๋ถํฌ๋ช
์ธ
0
๋ถํฐ, ์์ ํฌ๋ช ์ธ100
์ฌ์ด์์ ์ง์ ํด ์ฃผ๋ฉด ๋ฉ๋๋ค. - MacVIM ์์๋ง ๋ฉ๋๋ค.
- list ์ต์
. undo ํ์ผ์ ๋ณด๊ดํ ๋๋ ํ ๋ฆฌ์ ์ด๋ฆ์ ๋์ดํฉ๋๋ค. ๊ธฐ๋ณธ๊ฐ์
.
. - ํธ์ง์ค ๋ฐ์ํ๋ undo ๊ฐ๋ฅํ ๋ฌธ์์ด๋ค์ ๋ฐ๋ก ํ์ผ๋ก ๋ณด๊ดํ๋ ๊ธฐ๋ฅ์ ํ์ฉํ ๋ ์ฌ์ฉํฉ๋๋ค.
- ํฌ๋งท์
:help backupdir
์ ์ฐธ๊ณ ํ๋ฉด ๋ฉ๋๋ค.
- boolean ์ต์
. VIM์ด ์๋์ผ๋ก undo history ๋ฅผ ํ์ผ๋ก ๊ธฐ๋กํ๊ฒ ํฉ๋๋ค. ๊ธฐ๋ณธ๊ฐ์
off
.
- number ์ต์
. undo history ์ฌ์ด์ฆ๋ฅผ ์ค์ ํฉ๋๋ค. ๊ธฐ๋ณธ๊ฐ์
100
, Unix/Windows๋1000
. - ์ด ์ต์
์
0
์ผ๋ก ์ฃผ๋ฉด undo ๊ฐ ํ ๋ฒ ๋ฐ์ ์ ๋ฉ๋๋ค! - ์ด ์ต์ ์ ์์ ๊ฐ์ผ๋ก ์ฃผ๋ฉด undo ๋ฅผ ์ฌ์ฉํ ์ ์๊ฒ ๋ฉ๋๋ค!
- ์ด ์ต์ ์ ์์ ๊ฐ์ผ๋ก ์ค์ ํ๋ค๊ฐ ๋ค์ ์์ ๊ฐ์ผ๋ก ์ค์ ํ๋ฉด undo ๊ธฐ๋ก์ clearํ ์ ์์ต๋๋ค.
- boolean ์ต์
. ์๋ฌ๊ฐ ๋ฐ์ํ์ ๋ ์ ์๋ฆฌ๋ฅผ ๋ด์ง ์๊ณ ํ๋ฉด์ผ๋ก ์๋ ค ์ค๋๋ค. ๊ธฐ๋ณธ๊ฐ์
off
. errorbells
๋์๋ง ํญ๋ชฉ๋ ์ฐธ๊ณ .
- list ์ต์
. ์ข์ฐ๋ฐฉํฅ ์ด๋์ผ๋ก ๋ผ์ธ ์ด๋ ๊ฐ๋ฅ ์ฌ๋ถ๋ฅผ ์ค์ ํฉ๋๋ค. ๊ธฐ๋ณธ๊ฐ์
b,s
. h
,l
๋ก๋ ๋ผ์ธ ๋์ ๋๋ฌํ์ ๋, ์ด์ /๋ค์ ๋ผ์ธ์ผ๋ก ์ด๋ํ ์ ์๋๋ฐ, ์ด ์ค์ ์ผ๋ก ๊ฐ๋ฅํ๊ฒ ํ ์ ์์ต๋๋ค.- ์์ธํ ๋ด์ฉ์
:help 'ww'
๋ฅผ ์ฐธ๊ณ .
set ww+=h,l " h,l ๋ก๋ ๋ผ์ธ ์ด๋์ด ๊ฐ๋ฅํฉ๋๋ค.
- number ์ต์
. command-line ์์ ์๋์์ฑ ๊ธฐ๋ฅ์ ์ฌ์ฉํ ํค๋ฅผ ์ค์ ํฉ๋๋ค. ๊ธฐ๋ณธ๊ฐ์
<Tab>
. - ํค ๋๋ฒ๋ฅผ ์
๋ ฅํด์ผ ํ๋ number ์ต์
์ด์ง๋ง,
<ํค>
ํ์์ ์ฌ์ฉํ ์ ์์ต๋๋ค.
set wc=<Tab> " command-line ์๋ ์์ฑ ํค๋ฅผ <Esc>๋ก ๋ณ๊ฒฝ. (์ด๋ ๊ฒ ํ๋ฉด ๋ถํธํฉ๋๋ค. ๊ทธ๋ฅ <Tab>์ ์ฐ์ธ์.)
- number ์ต์
.
wildchar
์ ๋น์ทํ์ง๋ง ๋งคํฌ๋ก ๋ด์์๋ง ์ฌ์ฉ๋ฉ๋๋ค. - ๋ค์์ vim help ์ ์์ ์ ๋๋ค.
:set wcm=<C-Z>
:cnoremap ss so $vim/sessions/*.vim<C-Z>
- list ์ต์ . ํ์ผ/๋๋ ํ ๋ฆฌ๋ช ์๋์์ฑ์ ํ ๋ ๋ฌด์ํ ํจํด์ ์ค์ ํฉ๋๋ค. ๊ธฐ๋ณธ๊ฐ์ ์์ต๋๋ค.
set wildignore=*.o,*.bak
- boolean ์ต์
. ํ์ผ๋ช
์ด๋ ๋๋ ํ ๋ฆฌ๋ช
์ ์๋์์ฑํ ๋ ๋์๋ฌธ์๋ฅผ ๋ฌด์ํฉ๋๋ค. ๊ธฐ๋ณธ๊ฐ์
off
. - ์ถ์ฒ๊ฐ์
on
.
- boolean ์ต์
. command-line ์๋ ์์ฑ ๊ธฐ๋ฅ์ ์ข ๋ ํธ๋ฆฌํ๊ฒ ํ์ฅํฉ๋๋ค. ๊ธฐ๋ณธ๊ฐ์
off.
- ์ถ์ฒ๊ฐ์
on
.
- boolean ์ต์
. ํ๋ฉด์ ๋์ด๊ฐ๋ ๊ธด ๋ผ์ธ์ ์ฌ๋ฌ ์ค๋ก ํํํฉ๋๋ค. ๊ธฐ๋ณธ๊ฐ์
on
. - ์ด ์ต์
์
on
์ผ๋ก ํ๋ฉด ์ข์ฐ ์คํฌ๋กค์ด ํ์์๊ฒ ๋ฉ๋๋ค. ๋ค๋ง ๋ผ์ธ ํ๋๊ฐ ์ต์ ๋ ์ค์ด ๋์ด ์ปค์๋ฅผ ์์ง์ผ ๋ ์ข ํท๊ฐ๋ฆด ์๋ ์์ต๋๋ค.on
์ผ๋ก ์ฌ์ฉํ๋ ค๋ฉดlinebreak
,showbreak
๋ฑ์ ํจ๊ป ์ค์ ํด์ฃผ๋ฉด ์ข์ต๋๋ค.
set linebreak " ๋ผ์ธ์ ๋์ ๋ ๋จ์ด ๋จ์๋ก ์๋ฆ
๋๋ค.
set showbreak=+++\ " ์ ์ค๊ณผ ์ฐ๊ฒฐ๋๋ ์ค์ '+++ ' ๋ก ์์๋์ด ์์๋ณผ ์ ์๊ฒ ํฉ๋๋ค.
- ์ด ์ต์
์
off
๋ก ์ค์ ํ๋ฉด ๊ธด ๋ผ์ธ์ด ์๋ ๊ฒฝ์ฐ ์ข์ฐ ์คํฌ๋กค์ ํด์ผ ํ ์ ์์ต๋๋ค.off
๋ก ์ฌ์ฉํ๋ ค๋ฉดsidescroll
,list
,listchars
๋ฑ์ ํจ๊ป ์ค์ ํด์ฃผ๋ฉด ์ข์ต๋๋ค.
set nowrap
set sidescroll=2
set sidescrolloff=10 " ์ข์ฐ ์คํฌ๋กค offset ์ค์
set list listchars+=extends:>,precedes:< " ์ผ์ชฝ ์คํฌ๋กค์ด ํ์ํ ๊ฒฝ์ฐ <, ์ค๋ฅธ์ชฝ ์คํฌ๋กค์ด ํ์ํ ๊ฒฝ์ฐ > ๋ฅผ ๋ณด์ฌ์ค๋ค.
- ์ด ์ต์
์ด
on
์ผ ๋ ๊ฐ์ฅ ๊ณจ์น์ํ ์ ์ ํ๋์ ๋ผ์ธ์ด ์ฌ๋ฌ ์ค๋ก ํํ๋๋๋ฐ,j
๋k
๋ฅผ ๋๋ฅด๋ฉด ์ปค์๊ฐ ๋์ ๋ณด์ด๋ ์ค ๋จ์๋ก ์ด๋ํ์ง ์๋๋ค๋ ๊ฒ์ ๋๋ค. ์ด๋ด ๋์๋ ์ด๋ ํค ์์g
๋ฅผ ๋ถ์ฌ์ฃผ๋ฉด ๋์ ๋ณด์ด๋ ์ค ๋จ์๋ก ์ปค์๊ฐ ์ด๋ํ๊ฒ ๋ฉ๋๋ค.
ํค | ๊ธฐ๋ฅ |
---|---|
g0 |
wrap ์ผ๋ก ๊ตฌ๋ถ๋ ํ์ฌ ๋ผ์ธ์ ๊ฐ์ฅ ์ผ์ชฝ ๊ธ์๋ก ์ด๋ํ๋ค. |
g^ |
wrap ์ผ๋ก ๊ตฌ๋ถ๋ ํ์ฌ ๋ผ์ธ์ ๊ฐ์ฅ ์ผ์ชฝ ๊ธ์ ์ค ์ฒซ ๋ฒ์งธ ๊ณต๋ฐฑ ์๋ ๊ธ์๋ก ์ด๋ํ๋ค. |
gj |
๋ค์ ๋ผ์ธ์ผ๋ก ๋ด๋ ค๊ฐ๋ค. ๋ผ์ธ ๊ตฌ๋ถ์ ํ๋ฉด์ ํ์๋๋ y ์ขํ์ด๋ค. |
gk |
์ ๋ผ์ธ์ผ๋ก ์ฌ๋ผ๊ฐ๋ค. ๋ผ์ธ ๊ตฌ๋ถ์ ํ๋ฉด์ ํ์๋๋ y ์ขํ์ด๋ค. |
g$ |
wrap ์ผ๋ก ๊ตฌ๋ถ๋ ํ์ฌ ๋ผ์ธ์ ๊ฐ์ฅ ์ค๋ฅธ์ชฝ ๊ธ์๋ก ์ด๋ํ๋ค. |
- boolean ์ต์
. ํ์ผ ์ฐ๊ธฐ๋ฅผ ๊ฐ๋ฅํ๊ฒ ํฉ๋๋ค. ๊ธฐ๋ณธ๊ฐ์
on
. - ์ด ์ต์
์
off
๋ก ํ๋ฉด readonly ๋ชจ๋๊ฐ ๋ฉ๋๋ค. ํธ์ง์ ๋์ง๋ง ์ ์ฅํ๋ ค ํ๋ฉด ๊ฒฝ๊ณ ๊ฐ ๋์ต๋๋ค. VIM์ less ์ฒ๋ผ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ์ด๋ผ ํ ์ ์์ต๋๋ค.
- boolean ์ต์
. ํ์ผ์ ๋ฎ์ด์ฐ๊ธฐ ์ ์ ๋ฐฑ์
ํ์ผ์ ๋ง๋ญ๋๋ค. ๊ธฐ๋ณธ๊ฐ์
on
. - ํ์ผ์ด ์ฑ๊ณต์ ์ผ๋ก ์ ์ฅ๋๋ฉด ๋ฐฑ์ ํ์ผ์ ์๋์ผ๋ก ์ญ์ ๋ฉ๋๋ค.
:help option-summary
- http://www.catonmat.net/blog/why-vim-uses-hjkl-as-arrow-keys