์ฌ๋์๋ ๋๋ฌผ์ด ์๊ณ , ํ์ด์๋ ๊ธฐ์จ์ด ์๊ณ ์ฉ๋งน์๋ ๋ช
์๊ฐ ์์ผ๋ฉฐ ์ผ๋ง์๋ ์ฃฝ์์ด ์๋ค.-์ธ์ต์คํผ์ด
๏ปฟ * ์๋ฌธ๋งํฌ :
http://kuls.korea.ac.kr/seminar/00/Vim-Guide.html
http://kuls.korea.ac.kr/seminar/00/Vim-Guide.html
- ํ์ฌ์์ ์ด๋ค ๋ถ์ด ์ฐพ๊ธธ๋ ํผ๋ก๋๋ค.
1 ๊ฐ์ #
์ด ๋ฌธ์๋ ํ๋ฆฌ(free)์
๋๋ค. ์์ ์ํํธ์จ์ด ์ฌ๋จ(FSF)์ ์ํด ์ ์ถ๋ GNU GPL(์ผ๋ฐ ๊ณต๊ฐ ๋ผ์ด์ ์ค) ์ 2ํ ๋๋ ๊ทธ ์ดํ ๋ฒ์ ์ด ์ ํ๋ ๋ฐ์ ๋ฐ๋ผ ์์ ๋กญ๊ฒ ์ฌ๋ฐฐํฌํ๊ณ ์์ ํ ์ ์์ต๋๋ค.
์ด ๋ฌธ์๋ ์ ์ฉํ๊ฒ ์ฐ์ด๊ธฐ๋ฅผ ๋ฐ๋ผ๋ ๋ง์์ผ๋ก ๋ฐฐํฌํฉ๋๋ค. ๊ทธ๋ฌ๋ ์๋ฌด๋ฐ ๋ณด์ฆ๋ ํ์ง ์์ต๋๋ค. ์ฌ์ง์ด ์์
์ฑ์ด๋ ํน์ ๋ชฉ์ ์ ์ ํฉํ๋ค๋ ๋ณด์ฆ๋ ํ์ง ์์ต๋๋ค. ์์ธํ ์ฌํญ์ GNU GPL์ ์ฐธ์กฐํ์ญ์์ค.
2 vi๋? #
๋ฆฌ๋
์ค๋ ์ ๋์ค๋ฅผ ์ฒ์ ์ ํ๋ ์ฌ๋์๊ฒ vi๋ ๋งค์ฐ ๊ณจ์น์ํ ์กด์ฌ์ด๋ค. ๋์ค๋ ์๋์ฐ์์ ๋ฌธ์ ํธ์ง๊ธฐ๋ฅผ ์จ ๋ณธ ์ฌ๋์๊ฒ๋ vi๋ ๋งค์ฐ ๋ถํธํ ํธ์ง๊ธฐ๋ก ์๊ฐ๋ ๊ฒ์ด๋ค. ๊ทธ๋ฌ๋ ๋ด๊ฐ ์๋ ํ vi๋งํผ ๊ฐ๋ณ๊ณ ํธํ๊ฒ ์ธ ์ ์๋ ํธ์ง๊ธฐ๋ ์ง๊ตฌ์์๋ ์๋ค! `๊ฐ๋ณ๊ณ '๋ผ๋ ๋จ์ด๋ฅผ ๋ถ์ธ ์ด์ ๋ ์ด๋งฅ์ค(emacs)๋ผ๋ ํธ์ง๊ธฐ๋ฅผ ์ฐ๋ ์ฌ๋์ด ํญ์ํ ๊ฒ์ด ๊ฑฑ์ ๋๊ธฐ ๋๋ฌธ์ด๋ค. ์ด๋งฅ์ค๋ ํธ๋์ด ๋ด๋ฐฐํผ๋ ์์ ๋ถํฐ ๊ฐ์ฅ ๋๋ํ ์๋ํฐ๋ก ๊ตฐ๋ฆผํด ์๋ค. ๊ทธ๋ฌ๋ ํ๋ก๊ทธ๋จ ํฌ๊ธฐ๋ง๋ ์์ญ๋ฉ๊ฐ์ ๋ฌํ๊ณ ์ค์น๋์ด ์์ง ์์ ๊ฒฝ์ฐ๋ ๋ง๋ค. ํ์ง๋ง ๋๋ถ๋ถ์ ์ ๋์ค ๊ณ์ด ์์คํ
์ด๋ผ๋ฉด vi๋ ์ญ์คํ๊ตฌ ์ค์น๋์ด ์์ ๊ฒ์ด๋ค. ๋ฐ๋ผ์ ํ๋ฒ ์ตํ๋๋ฉด ์ฌ๋ฌ๋ชจ๋ก ํธ๋ฆฌํ๊ฒ ์ธ ์ ์๋ค.
vi๋ผ๋ ์ด๋ฆ์ `VIsual display editor'๋ฅผ ์๋ฏธํ๋ค. vi๋ ๋ฒํด๋ฆฌ์ ์ด๋ ์ฒ์ฌ๊ฐ ๋ง๋ค์๋ค๊ณ ํ๋ค. vi๋ฅผ ๋ง๋ค๋ ์์ ์๋ ed์ ๊ฐ์ ๋ผ์ธ ์๋ํฐ๊ฐ ์ผ๋ฐ์ ์ด์๋ค. ๊ทธ ์๋ ์์ ๋์ค์ `edlin' ์ด๋ผ๋ ๋ผ์ธ ์๋ํฐ๋ฅผ ์จ ๋ณธ ์ฌ๋์ด๋ผ๋ฉด ๋ผ์ธ ์๋ํฐ๊ฐ ์ผ๋ง๋ ๋ถํธํ์ง ์ ๊ฒ์ด๋ค. ์ ๋์ค์ฒ๋ผ ํ
์คํธ ์๋ํฐ์ ํฌ๋งคํฐ๊ฐ ๋ถ๋ฆฌ๋ ํ๊ฒฝ์์๋ ํ
์คํธ ์๋ํฐ์ ๋น์ค์ด ํฌ๊ธฐ ๋๋ฌธ์ ๊ธฐ๋ฅ ๋ฉด์์๋ ๋ง์ ์๊ตฌ๊ฐ ์๊ฒ ๋ง๋ จ์ด๋ค. ๋๋ฌธ์ ํ
์คํธ ์๋ํฐ๊ฐ ์๋ ํ๋ก์ธ์์ ๊ธฐ๋ฅ์ ์๋น ๋ถ๋ถ์ ๊ฐ์ง๊ฒ ๋์๋ค. ์ ๋์ค์ ์ฌ๋ฌ๊ฐ์ง ์ข
๋ฅ๊ฐ ์๋ฏ์ด vi๋ ์ฌ๋ฌ๊ฐ์ง ํด๋ก ์ด ๋ง๋ค์ด์ก๋ค. ์์ฆ ๋๋ถ๋ถ์ ๋ฐฐํฌํ์๋ vim์ด๋ผ๋ vi์ ํด๋ก ์ด ํฌํจ๋์ด ์๋ค. vim์ ์๋ฒฝํ๊ฒ ํ๊ธ์ ์ง์ํ๊ณ ์๋์ vi์ ๊ธฐ๋ฅ์ ์ถฉ์คํ๊ฒ ๊ฐ๊ณ ์์ ๋ฟ๋ง ์๋๋ผ ์ฌ๋ฌ๊ฐ์ง ์ข๋ ํธ๋ฆฌํ ํด๋ค์ ์ ๊ณตํ๋ค.
3.1 ์คํ๊ณผ ์ข ๋ฃ, ํ์ผ ์ ์ฅ #
์ฐ์ vi๋ฅผ ์คํํด ๋ณด์. ์ ํ๋กฌํํธ์์ vi<CR>๋ฅผ ์
๋ ฅํ๋ฉด ๋ค์๊ณผ ๊ฐ์ ํ๋ฉด์ด ๋ณด์ผ ๊ฒ์ด๋ค. <CR>์ < C R >์ ์ฐจ๋ก๋๋ก ํ์ดํํ๋ผ๋ ๋ป์ด ์๋๋ผ ์ํฐ๋ฅผ ์น๋ผ๋ ๋ป์ด๋ค. ๋ง์ฝ ์ด๋ฏธ ์กด์ฌํ๋ ์ด๋ค ํ์ผ์ ํธ์งํ๊ณ ์ถ๋ค๋ฉด `vi file<CR>'์ ์
๋ ฅํ๋ค.
~ ~ ~ ~ VIM = Vi IMproved ~ ~ version 5.6.70 ~ by Bram Moolenaar et al. ~ ~ Vim is freely distributable ~ type :help uganda<Enter> if you like vim ~ ~ type :q<Enter> to exit ~ type :help<Enter> or <F1> for on-line help ~ type :help version5<Enter> for version info ~ ~ ~ [์์ด][์์ฑ][์ธ๋ฒ์]
`~'๋ ๋น ์ค, ์ฆ ์๋ฌด๊ฒ๋ ์๋ ์ค์ด๋ผ๋ ๋ป์ด๋ค. ์น์ ํ๊ฒ๋ vim์ ์คํํ์๋ง์ ๊ฐ์ฅ ์ค์ํ ๋ช
๋ น์ ์๋ ค์ค๋ค. ๋ฐ๋ก `:q<CR>'์ด๋ค. ํ๋ฒ ์คํํด ๋ณด์. ์ ํ๋กฌํํธ๋ก ๋์๊ฐ ๊ฒ์ด๋ค. ์ด๋ฏธ `quit'์ ์ฝ์๋ผ๋๊ฑธ ์ง์ํ๊ณ ์์ ๊ฒ์ด๋ค. vi๋ฅผ ์ข
๋ฃํ๋ ๋ช
๋ น ๋ชป์ง ์๊ฒ ์ค์ํ ๋ช
๋ น์ด ์๋ค. ๋ฐ๋ก ํ์ผ์ ์ ์ฅํ๋ ๋ช
๋ น์ด๋ค. ํ์ผ์ ์ ์ฅํ๊ธฐ ์ํด์๋ ๋ช
๋ น ๋ชจ๋์์ `:w file<CR>'์ ํ์ดํํ๋ฉด ๋๋ค. ๋ง์ฝ ์ด๋ฏธ ํ์ผ ์ด๋ฆ์ด ์ง์ ๋์ด ์๋ค๋ฉด ๊ทธ๋ฅ ๊ฐ๋จํ `:w'๋ง ํ์ดํํด๋ ๋๋ค. w๋ `write'์ ์ฒซ ๊ธ์์ด๋ค. ๋, ํ์ผ์ ์ ์ฅํ ํ vi๋ฅผ ์ข
๋ฃํ๋ ค๋ฉด ๋ช
๋ น ๋ชจ๋์์ `:wq<CR>' ํน์ `ZZ'๋ฅผ ์ฐจ๋ก๋ก ํ์ดํํ๋ฉด ๋๋ค.
3.2 ๊ธ ์ ๋ ฅ #
์ด์ ๋ญ๊ฐ๋ฅผ ์จ ๋ฃ์ ์ฐจ๋ก๋ค. ๊ทธ ์ ์ ์ฐ์ ํ ๊ฐ์ง๋ฅผ ์์๋ ๊ฒ์ด ์๋ค. vi๊ฐ ๋ค๋ฅธ `ํ๋ฒํ' ํธ์ง๊ธฐ์ ๋น๊ตํ ๋ ๊ฐ์ฅ ํน์ดํ ์ ์ ํ๋ก๊ทธ๋จ์ ์ํ๊ฐ `๋ช
๋ น ๋ชจ๋'์ `์
๋ ฅ ๋ชจ๋'๋ก ๊ตฌ๋ถ๋๋ค๋ ์ ์ด๋ค. ๋ณดํต์ ํธ์ง๊ธฐ๋ ํค๋ณด๋์์ ์
๋ ฅ๋๋ ๋ฌธ์๊ฐ ๊ทธ๋๋ก ๋ฌธ์์ ํฌํจ๋ ๊ฒ์ด๋ค. ์ฆ, ๊ธฐ๋ณธ์ ์ผ๋ก ์
๋ ฅ ๋ชจ๋์ ์๋ค. ์ด์ ๋ฐํด vi๋ ๊ธฐ๋ณธ์ ์ผ๋ก ๋ช
๋ น ๋ชจ๋์ ์๋ค. ์ด ์ํ์์ ํค๋ณด๋์์ ์
๋ ฅํ๋ ๋ฌธ์ ํ๋ํ๋๋ vi์ ๋ํ ๋ช
๋ น์ด๊ฐ ๋๋ค. ์
๋ ฅ ๋ชจ๋๋ก ๋ค์ด๊ฐ๋ ๋ฌธ์๋ฅผ ์
๋ ฅํ๋ฉด ๋น๋ก์ ๊ทธ๋๋ถํฐ ์
๋ ฅ ๋ชจ๋๊ฐ ๋๋ ๊ฒ์ด๋ค. ์
๋ ฅ ๋ชจ๋์์ ๋ช
๋ น ๋ชจ๋๋ก ๋ณต๊ทํ๋ ค๋ฉด `<ESC>'ํค๋ฅผ ๋๋ฅธ๋ค. ์
๋ ฅ ๋ชจ๋๋ก ๋ค์ด๊ฐ๋ ๋ช
๋ น์ ์์ฝํ๋ฉด ๋ค์ ํ์ ๊ฐ๋ค.
a ์ปค์ ์์น์ ๋ค์ ์นธ๋ถํฐ๋ถํฐ ๋ผ์๋ฃ๊ธฐ(append) A ์ปค์๊ฐ ์๋ ์ค์ ๋์์๋ถํฐ ๋ผ์๋ฃ๊ธฐ i ์ปค์ ์์น๋ถํฐ ๋ผ์๋ฃ๊ธฐ(insert) I ์ปค์๊ฐ ์๋ ์ค์ ๋งจ ์์์๋ถํฐ ๋ผ์๋ฃ๊ธฐ o ์ปค์ ๋ฐ๋ก ์๋์ ์ค์ ๋ง๋ค๊ณ ๋ผ์๋ฃ๊ธฐ(open line) O ์ปค์ ๋ฐ๋ก ์์ ์ค์ ๋ง๋ค๊ณ ๋ผ์๋ฃ๊ธฐ
๋ค์๊ณผ ๊ฐ์ด ์ ์ด ๋ณด์.
iI am a member of KULS!<CR>Are you a member of KULS?<CR>๋๋ 018์ด๋ค.
ํ๋ฉด์ ๋ค์๊ณผ ๊ฐ์ด ์
๋ ฅ๋ ๊ฒ์ด๋ค.
I am a member of KULS! Are you a member of KULS? ๋๋ 018์ด๋ค. ~ ~
์
๋ ฅ์ ๋ง์ณค์ผ๋ฉด `<ESC>'๋ฅผ ๋๋ฌ ๋ค์ ๋ช
๋ น ๋ชจ๋๋ก ๋์์ค์. ๋ง์ฝ ํ์ฌ ์ํ๊ฐ ์
๋ ฅ ๋ชจ๋์ธ์ง ๋ช
๋ น ๋ชจ๋์ธ์ง ์ ๋ชจ๋ฅธ๋ค๋ฉด ๋ฌด์กฐ๊ฑด `<ESC>'ํค๋ฅผ ๋๋ฌ ์ผ๋จ ๋ช
๋ น๋ชจ๋๋ก ๋์์จ ํ ๋ค์ ์์ํ๋๋ก ํ๋ค.
3.3 ์ปค์ ์ด๋ #
์ด์ ์ปค์๋ฅผ ์ด๋์์ผ ๋ณด์. ์ปค์ ์ด๋์ ์ฌ์ฉํ๋ ํค๋ ๋ค์๊ณผ ๊ฐ๋ค.
h ํ์นธ ์ผ์ชฝ์ผ๋ก ์ด๋ l ํ์นธ ์ค๋ฅธ์ชฝ์ผ๋ก ์ด๋
j ํ์ค ์๋๋ก ์ด๋ k ํ์ค ์๋ก ์ด๋
w ๋ค์ ๋จ์ด์ ์ฒซ ๊ธ์๋ก ์ด๋ W ๋ค์ ๋จ์ด์ ์ฒซ ๊ธ์๋ก ์ด๋
b ์ด์ ๋จ์ด์ ์ฒซ ๊ธ์๋ก ์ด๋ B ์ด์ ๋จ์ด์ ์ฒซ ๊ธ์๋ก ์ด๋
e ๋จ์ด์ ๋ง์ง๋ง ๊ธ์๋ก ์ด๋ E ๋จ์ด์ ๋ง์ง๋ง ๊ธ์๋ก ์ด๋
^ ๊ทธ ์ค์ ์ฒซ ๊ธ์๋ก ์ด๋ $ ๊ทธ ์ค์ ๋ง์ง๋ง ๊ธ์๋ก ์ด๋
0 ๊ทธ ์ค์ ์ฒ์์ผ๋ก ์ด๋ <CR> ๋ค์ ์ค์ ์ฒซ ๊ธ์๋ก ์ด๋
+ ๋ค์ ์ค์ ์ฒซ ๊ธ์๋ก ์ด๋ - ์์ค์ ์ฒซ ๊ธ์๋ก ์ด๋
( ์ด์ ๋ฌธ์ฅ์ ์ฒซ ๊ธ์๋ก ์ด๋ ) ๋ค์ ๋ฌธ์ฅ์ ์ฒซ ๊ธ์๋ก ์ด๋
{ ์ด์ ๋ฌธ๋จ์ผ๋ก ์ด๋ } ๋ค์ ๋ฌธ๋จ์ผ๋ก ์ด๋
๋จ์ด ๋จ์ ์ด๋ ๋ช
๋ น์์ ๋๋ฌธ์ ๋ช
๋ น์ ์๋ฌธ์ ๋ช
๋ น๊ณผ ์ฝ๊ฐ ์ฐจ์ด๊ฐ ์๋ค. ๋๋ฌธ์ ๋ช
๋ น์ ๋ฌด์กฐ๊ฑด ๋์ด์ฐ๊ธฐ ์ ๊น์ง๋ฅผ ํ ๋จ์ด๋ก ์ทจ๊ธํ๋ค. ๋ค์ ๋งํด I'm a member of "KULS"์์ w, b, e๊ฐ I / ` / m / a / member / of / " / KULS / " ๋ฅผ ๊ฐ๊ฐ ํ ๋จ์ด๋ก ์ทจ๊ธํ๋ ๋ฐ ๋ฐํด W, B, E๋ I'm / a / member / of / "KULS" ๋ฅผ ํ ๋จ์ด๋ก ์ทจ๊ธํ๋ค. ๋, vi๋ ๋น ์ค์ด ๋์ค๊ธฐ ์ ๊น์ง๋ฅผ ํ ๋ฌธ๋จ์ผ๋ก ์ทจ๊ธํ๋ค. ์ฆ, {๋ฅผ ๋๋ฅด๋ฉด ์ด์ ๋น ์ค๋ก, }๋ฅผ ๋๋ฅด๋ฉด ๋ค์ ๋น ์ค๋ก ์ด๋ํ๋ค.
3.4 ๊ธ ์์ #
์์ฑ๋์ด ์๋ ๊ธ์ ์์ ํ๋ ๋ช
๋ น์ ๋ณดํต c์ ์ปค์ ์ด๋ ๋ช
๋ น์ด ๊ฒฐํฉ๋ ํํ์ด๋ค. ์ ๋ฆฌํ๋ฉด ๋ค์๊ณผ ๊ฐ๋ค.
r ์ปค์ ์์น์ ํ ๊ธ์ ๊ต์ฒด R ์ปค์ ์์น๋ถํฐ <ESC>๋ฅผ ๋๋ฅผ๋๊น์ง ๋ค๋ฅธ ๊ธ์๋ก ๊ต์ฒด s, cl ์ปค์ ์์น์ ๊ธ์๋ฅผ ํ๊ฐ๋ฅผ ์ฌ๋ฌ ๊ธ์๋ก ๊ต์ฒด ch ์ปค์ ๋ฐ๋ก ์์ ๊ธ์๋ฅผ ํ๊ฐ๋ฅผ ์ฌ๋ฌ ๊ธ์๋ก ๊ต์ฒด cw ์ปค์ ์์น์ ํ ๋จ์ด๋ฅผ ๊ต์ฒด c0 ์ปค์ ์์น๋ถํฐ ์ค์ ์ฒ์๊น์ง ๊ต์ฒด C, c$ ์ปค์ ์์น๋ถํฐ ์ค์ ๋๊น์ง ๊ต์ฒด cc ์ปค์๊ฐ ์๋ ์ค์ ๊ต์ฒด cj ์ปค์๊ฐ ์๋ ์ค๊ณผ ๊ทธ ๋ค์ ์ค์ ๊ต์ฒด ck ์ปค์๊ฐ ์๋ ์ค๊ณผ ๊ทธ ์์ค์ ๊ต์ฒด
์ด์ ์ค์ต์ ํด๋ณด์. ๋ค์๊ณผ ๊ฐ์ด ํ์ดํ ํด ๋ณด์.
jjjr1kwwwwcwKorea University Linux Study<ESC>
์๋์๊ฐ์ด ๋ฐ๋์์ ๊ฒ์ด๋ค. ์ธ ๊ธ์ ์ผ์ชฝ์ผ๋ก ์ด๋ํ ํ(jjj) ์ปค์ ์์น์ ๊ธ์๋ฅผ 1๋ก ๊ต์ฒดํ๋ผ(r1)๋ ๋ป์ด๋ค. r ๋ช
๋ น์ ๊ฒฝ์ฐ ํ ๊ธ์๋ง ๊ต์ฒดํ๋ ๋ช
๋ น์ด๋ฏ๋ก ๊ต์ฒด ํ ์๋์ผ๋ก ๋ช
๋ น๋ชจ๋๋ก ์ ํ๋๋ค. ๊ทธ ๋ค์์ ํ์ค ์๋ก ์ด๋ํ ํ(k) ๋ค ๋จ์ด ์ค๋ฅธ์ชฝ์ผ๋ก ์ด๋ํ๊ณ (wwww) ์ปค์ ์์น์ ๋จ์ด๋ฅผ Korea University Linux Study๋ก ๊ต์ฒดํ๊ณ (cw) ๋ช
๋ น๋ชจ๋๋ก ์ ํํ๋ผ(<ESC>)๋ ๋ป์ด๋ค.
I am a member of KULS! Are you a member of Korea University Linux Study? ๋๋ 011์ด๋ค. ~ ~
๋ค์ ๋ค์๊ณผ ๊ฐ์ด ํ์ดํํด ๋ณด์.
O๊ณ ๋ ค๋ํ๊ต ๋ฆฌ๋ ์ค ๋์๋ฆฌ KULS! Since 1999.<ESC>jkkksthe<ESC>
์ด์ ์๋์ ๊ฐ์ด ๋ฐ๋์์ ๊ฒ์ด๋ค. ๋จผ์ ์ปค์๊ฐ ์๋ ์ค์ ์์ชฝ์ ํ ์ค์ ์ฝ์
ํ๊ณ (O) (๊ณ ๋ ค๋ํ๊ต ๋ฆฌ๋
์ค ๋์๋ฆฌ KULS! Since 1999.)๋ฅผ ์ ์ ๋ค์ ์๋์ค๋ก ๊ฐ์ ์ค๋ฅธ์ชฝ์ผ๋ก ์ธ ๊ธ์ ์ด๋ํ ํ(jkkk) ์ปค์ ์์น์ ํ ๊ธ์๋ฅผ(s) the๋ก ๊ต์ฒดํ๋ผ๊ณ ๋ช
๋ นํ ๊ฒ์ด๋ค.
I am a member of KULS! ๊ณ ๋ ค๋ํ๊ต ๋ฆฌ๋ ์ค ๋์๋ฆฌ KULS! Since 1999. Are you the member of Korea University Linux Study? ๋๋ 011์ด๋ค. ~ ~
3.5 ๊ธ ์ญ์ #
๊ธ์ ์ญ์ ํ๋ ๋ช
๋ น๋ ์์ ํ๋ ๋ช
๋ น๊ณผ ๊ฑฐ์ ๋น์ทํ๋ค. ๊ธ์ ์์ ํ๋ ๋ช
๋ น์ด c์ ์ปค์ ์ด๋ ๋ช
๋ น์ด ๊ฒฐํฉ๋ ํํ์ธ๊ฒ์ฒ๋ผ ๊ธ์ ์ญ์ ํ๋ ๋ช
๋ น์ d์ ์ปค์ ์ด๋ ๋ช
๋ น์ด ๊ฒฐํฉ๋ ํํ์ด๋ค. ์ ๋ฆฌํ๋ฉด ๋ค์๊ณผ ๊ฐ๋ค.
x, dl ์ปค์ ์์น์ ๊ธ์ ์ญ์ X, dh ์ปค์ ๋ฐ๋ก ์์ ๊ธ์ ์ญ์ dw ํ ๋จ์ด๋ฅผ ์ญ์ d0 ์ปค์ ์์น๋ถํฐ ์ค์ ์ฒ์๊น์ง ์ญ์ D, d$ ์ปค์ ์์น๋ถํฐ ์ค์ ๋๊น์ง ์ญ์ dd ์ปค์๊ฐ ์๋ ์ค์ ์ญ์ dj ์ปค์๊ฐ ์๋ ์ค๊ณผ ๊ทธ ๋ค์ ์ค์ ์ญ์ dk ์ปค์๊ฐ ์๋ ์ค๊ณผ ๊ทธ ์์ค์ ์ญ์
์ด์ ๊ธ์ ์ญ์ ํด๋ณด์. ๋ค์๊ณผ ๊ฐ์ด ํ์ดํํ๋ค.
j0wd0wxxxxwwXXXjwwDjdd
๋ค์ ์ค์ ์ฒ์์ผ๋ก ์ด๋ํด(j0) ํ ๋จ์ด ์ค๋ฅธ์ชฝ์ผ๋ก ์ด๋ํ ํ(w) ์ปค์ ์์น์์๋ถํฐ ์ค์ ์ฒ์๊น์ง ์ง์ฐ๊ณ (d0) ๋ค์ ํ ๋จ์ด ์ด๋ํ ๋ค(w) ์ปค์ ์์น์ ๋ค ๊ธ์๋ฅผ ์ง์ฐ๊ณ (xxxx) ๋ค์ ๋ ๋จ์ด ์ด๋ํ ๋ค(ww) ์ปค์ ๋ฐ๋ก ์์ ๊ธ์ ์ธ๊ฐ๋ฅผ ์ง์ฐ๊ณ (XXX) ๋ค์ ์ค๋ก ๋ด๋ ค๊ฐ ๋ ๋จ์ด ์ค๋ฅธ์ชฝ์ผ๋ก ์ด๋ํ ํ ๊ฑฐ๊ธฐ์์๋ถํฐ ์ค์ ๋๊น์ง ์ง์ฐ๊ณ (jwwD) ๋ค์ ์ค์ ๋ชจ๋ ์ง์ฐ๋ผ(jdd)๋ ๋ป์ด๋ค. ์ด์ ์๋์ ๊ฐ์ด ๋ฐ๋์์ ๊ฒ์ด๋ค.
I am a member of KULS! ๊ณ ๋ ค๋ํ๊ต ๋ฆฌ๋ ์ค ๋์๋ฆฌ KULS! Since 1999. you member Korea University ~ ~
3.6 ๋ณต์ฌ & ๋ถ์ด๊ธฐ #
๊ธ์ ๋ณต์ฌํ๋ ๋ช
๋ น์ ์ด๋ฏธ ๋ ๊ฐ์ง๋ฅผ ๋ฐฐ์ ๋ค. ์์์ ๊ธ ๊ต์ฒด์ ๊ธ ์ญ์ ๋ช
๋ น์ผ๋ก ์ง์์ง ๊ธ์ ๋ฒํผ์ ์ ์ฅ๋๋ค. ๋ฒํผ์ ์ ์ฅ๋ ๊ธ์ ๋ผ์๋ฃ๋ ๋ช
๋ น์ ๋ ๊ฐ์ง๊ฐ ์๋ค. p ๋ฅผ ๋๋ฅด๋ฉด ํ์ฌ ์ปค์ ์์น์ ๋ฐ๋ก ๋ค์์ ๋ผ์๋ฃ๊ณ , P๋ฅผ ๋๋ฅด๋ฉด ํ์ฌ ์ปค์ ์์น์ ๋ฐ๋ก ์์ ๋ผ์๋ฃ๋๋ค.
ํ์ฌ ์์ฑ๋์ด ์๋ ๊ธ์ ์ํฅ์ ๋ฏธ์น์ง ์๊ณ ๊ธ์ ๋ณต์ฌํ๋ ๋ฐฉ๋ฒ์ c๋ d ๋์ y๋ฅผ ์ฌ์ฉํ๋ค๋ ์ ์ ์ ์ธํ๋ฉด ์์์ ์ดํด๋ณธ ๊ต์ฒด๋ ์ญ์ ๋ฐฉ๋ฒ๊ณผ ๋์ผํ๋ค. y๋ ์ก์๋น๊ธฐ๋ค ๋ผ๋ ๋ป์ ์์ด ๋จ์ด yank์ ์ฒซ ๊ธ์์ด๋ค. ์ ๋ฆฌํ๋ฉด ๋ค์๊ณผ ๊ฐ๋ค.
yw ์ปค์ ์์น๋ถํฐ ๋จ์ด์ ๋๊น์ง ๋ณต์ฌ y0 ์ปค์ ์์น๋ถํฐ ์ค์ ์ฒ์๊น์ง ๋ณต์ฌ y$ ์ปค์ ์์น๋ถํฐ ์ค์ ๋๊น์ง ๋ณต์ฌ yy ์ปค์๊ฐ ์๋ ์ค์ ๋ณต์ฌ yj ์ปค์๊ฐ ์๋ ์ค๊ณผ ๊ทธ ๋ค์ ์ค์ ๋ณต์ฌ yk ์ปค์๊ฐ ์๋ ์ค๊ณผ ๊ทธ ์์ค์ ๋ณต์ฌ p ์ปค์์ ๋ค์ ์์น์ ๋ถ์ฌ๋ฃ๊ธฐ P ์ปค์๊ฐ ์๋ ์์น์ ๋ถ์ฌ๋ฃ๊ธฐ
๋ค์๊ณผ ๊ฐ์ด ์
๋ ฅํด๋ณด์.
kkPjyyjpjdw$pdw$p0dw$p
๋จผ์ ๋ ์ค ์๋ก ์ฌ๋ผ๊ฐ ์ปค์๊ฐ ์์ชฝ(์์ชฝ)์ ์กฐ๊ธ ์ ์ ์ญ์ ํ ๋ด์ฉ์ ๋ผ์๋ฃ๊ณ (kkP) ๋ค์ ์ค์ ๋ณต์ฌํด์(jyy) ํ ์ค ์๋๋ก ์ด๋ํ ํ ์ปค์ ๋ค์ชฝ(์๋์ชฝ)์ ๋ผ์๋ฃ์ ํ(jp) ํ ์ค ์๋๋ก ๋ด๋ ค๊ฐ ํ ๋จ์ด๋ฅผ ์ญ์ ํ ํ ๊ทธ ๋จ์ด๋ฅผ ๊ทธ ์ค์ ๋งจ ๋์ ๋ถ์ฌ๋ฃ๊ณ (jdw$p) ๋ค์ ๋งจ ์์ ํ ๋จ์ด๋ฅผ ์ญ์ ํ ํ ๋งจ ๋ค์ ๋ถ์ฌ๋ฃ์ผ๋ผ(0dw$p)๋ ๋ป์ด๋ค. ์ด์ ๋ค์๊ณผ ๊ฐ์ด ๋ฐ๋์์ ๊ฒ์ด๋ค.
๋๋ 011์ด๋ค. I am a member of KULS! ๊ณ ๋ ค๋ํ๊ต ๋ฆฌ๋ ์ค ๋์๋ฆฌ KULS! Since 1999. I am a member of KULS! Korea University you member ~
3.7 ๊ธฐํ #
๋ค์์ ์์๋ ํด๋น๋์ง ์์ง๋ง ๋ง์ด ์ฌ์ฉ๋๋ ๋ช
๋ น๋ค์ด๋ค.
u ์์ ์ทจ์(undo) U ๊ทธ ์ค์ ํํด์ง ์์ ๋ชจ๋ ์ทจ์ Ctrl+r ์์ ์ฌ์คํ(redo) . ์กฐ๊ธ ์ ์ ํ๋ ๋ช ๋ น์ ๋ฐ๋ณต J ํ์ฌ ์ค๊ณผ ์๋ ์ค์ ์ฐ๊ฒฐ ~ ๋๋ฌธ์๋ฅผ ์๋ฌธ์๋ก, ์๋ฌธ์๋ฅผ ๋๋ฌธ์๋ก ๋ฐ๊ฟ % ๊ดํธ์ ๋ฐ๋์ชฝ ์ง์ผ๋ก ์ด๋ Ctrl+l ํ์ฌ ํ๋ฉด์ ์ง์ฐ๊ณ ๋ค์ ๊ทธ๋ฆผ Ctrl+g ํ์ผ์ ๊ดํ ์ ๋ณด๋ฅผ ํ์
๋ค์๊ณผ ๊ฐ์ด ์
๋ ฅํด ๋ณด์.
kkk0bbbxxxuuujdw.UkkJ
๋จผ์ ์ธ ์ค ์๋ก ์ด๋ํด ๊ทธ ์ค์ ๋งจ ์์ผ๋ก ์ด๋ํ ํ ์ธ ๋จ์ด ์ค๋ฅธ์ชฝ์ผ๋ก ์ด๋ํ๊ณ (kkk0bbb) ๊ธ์ ์ธ๊ฐ๋ฅผ ์ง์ ๋ค๊ฐ ์ด๋ฅผ ์ทจ์ํ ํ(xxxuuu) ํ์ค ์๋๋ก ๋ด๋ ค๊ฐ ํ ๋จ์ด๋ฅผ ์ญ์ ํ๊ณ (jdw) ๋ค์ ํ๋ฒ ํ ๋จ์ด๋ฅผ ์ญ์ ํ๊ณ (.) ๊ทธ ์ค์์ ํํด์ง ์์
์ ๋ชจ๋ ์ทจ์ํ ๋ค(U) ๋ ์ค ์ฌ๋ผ๊ฐ ๊ทธ ์ค๊ณผ ๊ทธ ๋ค์ ์ค์ ์ฐ๊ฒฐํ๋ผ(kkJ)๋ ๋ช
๋ น์ด๋ค. ์ด์ ๋ค์๊ณผ ๊ฐ์ด ๋ฐ๋์๋ค.
๋๋ 011์ด๋ค. I am a member of KULS! ๊ณ ๋ ค๋๋ฆฌ๋ ์ค ๋์๋ฆฌ KULS! Since 1999. I am a member of KULS! Korea University you member ~
Ctrl+l ๋ช
๋ น์ ํ๋ฉด์ ๋ค์ ๋ํ๋ด๋ ๋ช
๋ น์ด๋ค. ๋ฌธ์ ์์ฑ์ค์ talk ์์ฒญ์ด ์ค๊ฑฐ๋ ํน์ ๋ค๋ฅธ ๋ฉ์์ง์ ์ํด ํ๋ฉด์ด ์ง์ ๋ถํด์ง ๊ฒฝ์ฐ ์ฌ์ฉํ๋ฉด ํธ๋ฆฌํ๋ค.
์ง๊ธ๊น์ง ๋ฐฐ์ด ๋๋ถ๋ถ์ ๋ช
๋ น ์์๋ ์ซ์ ์ธ์๋ฅผ ์ค ์ ์๋ค. ๋ค์๊ณผ ๊ฐ์ด ํ์ดํํด ๋ณด์.
3j0w2dw2k2yy3P
์ธ ์ค ์๋๋ก ๋ด๋ ค๊ฐ ํ ์ฒซ ๋ฒ์งธ ์นธ์ผ๋ก ์ด๋ํ๋ค๊ฐ ํ ๋จ์ด ์ค๋ฅธ์ชฝ์ผ๋ก ์ด๋ํ๊ณ (3j0w) ๋ ๋จ์ด๋ฅผ ์ง์ด ํ(2dw) ๋์ค ์๋ก ์ฌ๋ผ๊ฐ์(2k) ๋ ์ค์ ๋ณต์ฌํด์(2yy) ์ธ๋ฒ ๋ถ์ฌ๋ฃ๊ธฐ ํ๋ผ(3P)๋ ๋ป์ด๋ค. ์ด์ ๋ค์๊ณผ ๊ฐ์ด ๋ฐ๋์์ ๊ฒ์ด๋ค.
๋๋ 011์ด๋ค. I am a member of KULS! ๊ณ ๋ ค๋๋ฆฌ๋ ์ค ๋์๋ฆฌ KULS! Since 1999. I am a member of KULS! ๊ณ ๋ ค๋๋ฆฌ๋ ์ค ๋์๋ฆฌ KULS! Since 1999. I am a member of KULS! ๊ณ ๋ ค๋๋ฆฌ๋ ์ค ๋์๋ฆฌ KULS! Since 1999. I am a member of KULS! ๊ณ ๋ ค๋๋ฆฌ๋ ์ค ๋์๋ฆฌ KULS! Since 1999. I am a member of KULS! Korea member ~
์ด์ ๊ธฐ๋ณธ์ ์ธ ๋ด์ฉ์ ๋ค ์ตํ๋ค. ์ง๊ธ๊น์ง ๋ฐฐ์ด ๋ด์ฉ๋ง์ผ๋ก๋ ๊ฐ๋จํ ๋ฌธ์๋ฅผ ์์ฑํ๊ณ ํธ์งํ๋ ๋ฐ์๋ ๋ฌธ์ ๊ฐ ์์ ๊ฒ์ด๋ค. ์ด์ vi๋ฅผ ๋น ์ ธ๋๊ฐ์.
:q<CR>
์, ๊ทธ๋ฐ๋ฐ vi๊ฐ ๋ง์ ๋ฃ์ง ์๋๋ค. ํ๋ฉด ๋งจ ์๋๋ฅผ ๋ณด๋ฉด ๋ค์๊ณผ ๊ฐ์ด ๋์ ์์ ๊ฒ์ด๋ค.
~ ~ No write since last change (use ! to override)
์. ํ์ผ์ ์ ์ฅํ์ง ์์๊ธฐ ๋๋ฌธ์ ๊ทธ๋ฅ์ ๋๊ฐ ์ ์๋ค๋ ๋ป์ด๋ค. ๊ฐ์ ๋ก ๋น ์ ธ๋๊ฐ๋ ค๋ฉด !๋ฅผ ์ฌ์ฉํด์ผ ํ๋ค.
:q!<CR>
์ด์ ๋ณ ํ ์์ด vi๋ฅผ ๋น ์ ธ๋์ฌ ์ ์์ ๊ฒ์ด๋ค.
4 vi ์ค๊ธ ์ฌ์ฉ์๋ก #
์ผ๋จ vi๋ฅผ ์คํํ ํ /usr/doc/HOWTO/Installation-HOWTO ๋ผ๋ ํ์ผ์ ํ๋ฒ ์ด์ด๋ณด์. ์ ์จ ์คํํ vi๋ฅผ ๋น ์ ธ๋์จ ๋ค์ ๋ค์๊ณผ ๊ฐ์ด
lhs0@libretto$ vi /usr/doc/HOWTO/Installation-HOWTO
vi๋ฅผ ๋ค์ ์คํํด์ค๋ ๋๊ฒ ์ง๋ง, ์ฅ์ฐจ vi์ ๊ณ ์๊ฐ ๋ ์ฌ๋์ด ์ด๋ฐ ๊ตฌ์ฐจํ ๋ฐฉ๋ฒ์ ์ธ ์๋ ์๋ค. ๋ช
๋ น ๋ชจ๋์์ ๋ค์๊ณผ ๊ฐ์ด ์
๋ ฅํ์.
:e /usr/doc/HOWTO/Installation-HOWTO<CR>
bash์์์ฒ๋ผ ํ์ผ ์ด๋ฆ์ ์ ๋ถ ๋ค ํ์ดํํ์ง ์๊ณ ์ผ๋ถ๋ง ํ์ดํํ ํ <TAB> ํค๋ฅผ ๋๋ฅด๋ฉด ์๋์ผ๋ก ์์ฑ๋๋ค. ๋ค์๊ณผ ๊ฐ์ ํ๋ฉด์ด ๋์ฌ ๊ฒ์ด๋ค. ๊ผญ ์ด ํ์ผ์ด ์๋๋ผ๋ ์๊ด์๋ค. ๋ง์ฝ ์ด ํ์ผ์ด ์๋ค๋ฉด ๋ค๋ฅธ ์๋ฌด ํ์ผ์ด๋ ํผ์ง๋งํ ํ์ผ์ ์ด์ด๋ณด์.
The Linux Installation HOWTO by Eric S. Raymond v4.15, 20 November 1998 This document describes how to obtain and install Linux software. It is the first document which a new Linux user should read to get started. ______________________________________________________________________ Table of Contents ... "/usr/doc/HOWTO/Installation-HOWTO" [readonly] 1518 lines, 59961 characters [์์ด][์์ฑ][์ธ๋ฒ์]
์ ์ฒด 1518์ค์ด๋ค. jํค๋ฅผ ๋๋ฌ ํ ์ค์ฉ ๋ด๋ ค๊ฐ๋ฉฐ ํ๋ฒ ์ธ๋ณด์. ๋๋ด์ด๋ค. ์ค๋ง ์ ๋ง ์ด๋ ๊ฒ ํ๋ ์ฌ๋์ด ์๋ค๋ฉด ํ์๋ ์์ฃผ ์ฌํ๋ค.(-;) ํ๋ฉด ๋งจ ์๋์ ๋ณด๋ฉด 1518 lines ๋ผ๊ณ ๋์ ์๋ค. ๋ง์ฝ ๋์ค์ง ์๋๋ค๋ฉด Ctrl+g๋ฅผ ๋๋ฌ๋ณด์.
4.1 ํ๋ฉด ์ด๋ #
์ ์ฅ์์ ์ด๋ฏธ ์ปค์ ์ด๋ ๋ช
๋ น์ ๋ฐฐ์ ๋ค. ๊ทธ๋ฌ๋ ์ปค๋ค๋ ๋ฌธ์์์ j, k ํค๋ง ๊ฐ์ง๊ณ ๋์๋ค๋๋ ๊ฒ์ ๋๋ฌด ์๊ฐ์ด ์ค๋ ๊ฑธ๋ฆฐ๋ค. ์ปค๋ค๋ ๋ฌธ์๋ฅผ ํธ์งํ ๋ ํ๋ฉด ์ด๋์ ์ฐ์ด๋ ํค๋ ๋ค์๊ณผ ๊ฐ๋ค.
H ์ปค์๋ฅผ ํ๋ฉด์ ๋งจ ์๋ก z<CR> ํ์ฌ ์ค์ ํ๋ฉด์ ๋งจ ์๋ก M ์ปค์๋ฅผ ํ๋ฉด์ ์ค์์ผ๋ก z. ํ์ฌ ์ค์ ํ๋ฉด์ ์ค์์ผ๋ก L ์ปค์๋ฅผ ํ๋ฉด์ ๋งจ ์๋๋ก z- ํ์ฌ ์ค์ ํ๋ฉด์ ๋งจ ์๋๋ก [n]H ์ปค์๋ฅผ ์์์ [n]๋ฒ์งธ ์ค๋ก [n]L ์ปค์๋ฅผ ์๋์์ [n]๋ฒ์งธ ์ค๋ก Ctrl+u ๋ฐ ํ๋ฉด ์๋ก ์คํฌ๋กค Ctrl+b ํ ํ๋ฉด ์๋ก ์คํฌ๋กค Ctrl+d ๋ฐ ํ๋ฉด ์๋๋ก ์คํฌ๋กค Ctrl+f ํ ํ๋ฉด ์๋๋ก ์คํฌ๋กค gg, 1G ๋ฌธ์์ ๋งจ ์ฒ์ ์ค๋ก G ๋ฌธ์์ ๋งจ ๋ง์ง๋ง ์ค๋ก [n]G [n]๋ฒ์งธ ์ค๋ก ์ด๋
์ด์ ๋ ์ค์ต์ ํด ๋ณผ ์ฐจ๋ก๋ค. ๋จผ์ G๋ฅผ ๋๋ฌ๋ณด์. ํ๋ฉด์ ๋งจ ๋ง์ง๋ง ์ค๋ก ์ปค์๊ฐ ์ด๋ํ ๊ฒ์ด๋ค. ์ด๋ฒ์๋ gg๋ฅผ ์
๋ ฅํด ๋ณด์. ๋ค์ ๋งจ ์ฒ์ ํ๋ฉด์ผ๋ก ๋์์ฌ ๊ฒ์ด๋ค. ๊ทน๊ณผ ๊ทน์ผ๋ก๋ง ์์ง์ด๋ ๋ณ๋ก ์ฌ๋ฏธ๊ฐ ์๋ค. 100G๋ฅผ ํ๋ฒ ์
๋ ฅํด ๋ณด์. 100๋ฒ์งธ ์ค๋ก ์ปค์๊ฐ ์ด๋ํ ๊ฒ์ด๋ค. ์ ๋ง 100๋ฒ์งธ ์ค์ธ์ง ๊ถ๊ธํ๋ฉด kํค๋ฅผ ํ๋ฒ์ฉ ๋๋ฅด๋ฉฐ ๋ช ๋ฒ ๋๋ฌ์ผ ์ฒซ ๋ฒ์งธ ์ค ๊น์ง ๊ฐ๋์ง ํ๋ฒ ์ธ๋ณด์. ์ ๋ง ๋ฐ๋ผํ๋ ์ฌ๋์ด ์๋ค๋ฉด ์ ๋ง ์ด ๊ธ์ ๋ ์ด์ ์ฐ๊ธฐ๊ฐ ์ซ์ด์ง ๊ฒ ๊ฐ๋ค.
:set number<CR> ๋๋ :set nu<CR>
๋ฅผ ์
๋ ฅํด ๋ณด์. ํ๋ฉด ์ผ์ชฝ์ ์ค ๋ฒํธ๊ฐ ํ์๋ ๊ฒ์ด๋ค.
:set nonumber<CR> ๋๋ :set nonu<CR>
๋ฅผ ์
๋ ฅํ๋ฉด ๋ค์ ์ฌ๋ผ์ง ๊ฒ์ด๋ค.
์ด์ Ctrl+f๋ฅผ ๋๋ฌ ํ ํ์ด์ง์ฉ ์๋๋ก ๋ด๋ ค๊ฐ ๋ณด์. ๋ค์ Ctrl+b๋ฅผ ๋๋ฌ ์๋ ์์น๋ก ๋์์ ๋ณด์. ์ด๋ฒ์๋ H๋ฅผ ๋๋ฌ ๋ณด์. ์ปค์๊ฐ ํ๋ฉด์ ๋งจ ์ฒซ ๋ฒ์งธ ์ค๋ก ์ด๋ํ ๊ฒ์ด๋ค. M, L๋ ํ๋ฒ์ฉ ๋๋ฌ๋ณด์. ์ด๋ฒ์๋ z<CR>์ ๋๋ฌ๋ณด์. H๋ฅผ ๋๋ ์ ๋์๋ ์ฝ๊ฐ ๋ค๋ฅผ ๊ฒ์ด๋ค. H๋ฅผ ๋๋ฅด๋ฉด ํ๋ฉด์ ์ ์ง๋ ์ฑ ์ปค์๋ง ์ด๋ํ๋ ๋ฐ ๋ฐํด z<CR>์ ๋๋ฅด๋ฉด ์ปค์์ ์์น๊ฐ ๋ฌธ์์ ๊ณ ์ ๋ ์ฑ ๋ฌธ์๊ฐ ์คํฌ๋กค๋์ด ์ปค์๊ฐ ์๋ ์ค์ด ์ฒซ ๋ฒ์งธ ์ค์ ์์นํ๊ฒ ๋๋ค. z., z-๋ ํ๋ฒ์ฉ ๋๋ฌ๋ณด์.
4.2 ๋งํน #
์ด์ ์ปค๋ค๋ ๋ฌธ์์์๋ ๋ง์๋๋ก ์ปค์๋ฅผ ์์ง์ผ ์ ์๊ฒ ๋์๋ค. ๊ทธ๋ฐ๋ฐ ๋ง์ฝ ์ด๋ค ์์น์์ ์์
ํ๋ค๊ฐ ์ ๊น ๋ค๋ฅธ ์์น๋ก ๊ฐ์ ๋ญ๊ฐ ๋ณต์ฌํด์ ์๋์ ์์น์ ๋ถ์ฌ๋ฃ์ ๊ฒฝ์ฐ๋ฅผ ์๊ฐํด ๋ณด์. ์ค ๋ฒํธ๋ฅผ ๊ธฐ์ตํด ๋์๋ค๊ฐ [n]G ๋ช
๋ น์ผ๋ก ๊ทธ ์ค๋ก ๊ฐ๋ ๋๊ฒ ์ง๋ง ๋๋ํ ์ปดํจํฐ๋ฅผ ๋๋๊ณ ๋จธ๋ฆฌ๋ฅผ ํน์ฌ์ํฌ(?) ํ์๋ ์๋ค. vi๋ 26๊ฐ์ ๋งํน์ ์ ๊ณตํ๋ค. ์ฆ, ์ด๋ค ์์น์ ๋งํฌ๋ฅผ ํด ๋ ํ ๋ค๋ฅธ ์์น๋ก ์ด๋ํ๋ค๊ฐ ๋ค์ ๋์๊ฐ ๋ ๊ทธ ๋งํฌ๋ฅผ ์ด์ฉํ ์ ์๋ค. ๋งํน์ ๊ด๊ณ๋ ๋ช
๋ น๋ค์ ์ ๋ฆฌํ๋ฉด ๋ค์๊ณผ ๊ฐ๋ค.
ma ํ์ฌ ์์น๋ฅผ `a'๋ก ๋งํฌ `a ๋งํฌ๋ `a'๋ก ์ด๋ 'a ๋งํฌ๋ `a'๊ฐ ์๋ ์ค์ ์ฒ์์ผ๋ก ์ด๋ `` ์ง์ ์ ์ปค์ ์์น๋ก ์ด๋ '' ์ง์ ์ ์ปค์๊ฐ ์์นํ๋ ์ค์ ์ฒ์์ผ๋ก
4.3 ์ฌ๋ฌ๊ฐ์ ๋ฒํผ ์ฌ์ฉ #
์์์ ๋ฒํผ๋ฅผ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ์ ๋ํด์ ์ด๋ฏธ ๋ฐฐ์ ๋ค. ๊ทธ๋ฐ๋ฐ ์์์ ๋ฐฐ์ด ๋ด์ฉ์ผ๋ก๋ ๋ง์ง๋ง์ผ๋ก ๋ฒํผ์ ์ ์ฅ๋ ๋ด์ฉ๋ฐ์๋ ์ฌ์ฉํ ์ ์๋ค. vi๋ ์ด์ 9๊ฐ๊น์ง ๋ฒํผ์ ์ ์ฅ๋์๋ ๋ด์ฉ์ ๊ธฐ์ตํ๋ค. ๋จผ์ ์ญ์ , ๋ณต์ฌ, ๊ต์ฒดํ ๊ธ์ 1๋ฒ ๋ฒํผ์ ์ ์ฅ๋๋ค. ๊ทธ ์ํ์์ ๋ ๋ค๋ฅธ ๊ธ์ ์ญ์ , ๋ณต์ฌ, ๊ต์ฒดํ๋ฉด ๊ทธ ๋ด์ฉ์ด 1๋ฒ ๋ฒํผ์ ์ ์ฅ๋๊ณ 1๋ฒ ๋ฒํผ์ ๋ด์ฉ์ 2๋ฒ ๋ฒํผ๋ก ์ฎ๊ฒจ์ง๋ค. ๊ทธ ์ํ์์ ๋ค์ ๊ธ์ ์ญ์ ํ๊ฑฐ๋ ๋ณต์ฌํ๊ฑฐ๋ ๊ต์ฒดํ๋ฉด ๊ทธ ๋ด์ฉ์ด ๋ค์ 1๋ฒ ๋ฒํผ์ ์ฎ๊ฒจ์ง๊ณ 1๋ฒ ๋ฒํผ์ ์๋ ๊ธ์ 2๋ฒ ๋ฒํผ์, 2๋ฒ ๋ฒํผ์ ์๋ ๊ธ์ 3๋ฒ ๋ฒํผ๋ก ์ฎ๊ฒจ์ง๋ค. ์ด๋ฐ์์ผ๋ก ์ด 9๊ฐ์ ๋ฒํผ์ ๋ด์ฉ์ด ์ ์ฅ๋๋ค. [n]๋ฒ์งธ ๋ฒํผ์ ์๋ ๋ด์ฉ์ ๋ถ์ฌ๋ฃ๊ธฐ ์ํด์๋ ๋ค์๊ณผ ๊ฐ์ด ์
๋ ฅํ๋ฉด ๋๋ค.
"[n]p ํน์ "[n]P
์ฆ, ๋ถ์ฌ๋ฃ๊ธฐ ์ ์ "[n]์ ๋ถ์ฌ์ฃผ๋ฉด ๋๋ค. ๋ง์ฝ ์ด๋ค ๋ฒํผ์ ์ ์ฅ๋ ๋ด์ฉ์ ๋ถ์ฌ๋ฃ์ด์ผ ํ ์ง ์ ๋ชจ๋ฅด๊ฒ ์ผ๋ฉด ๋ค์๊ณผ ๊ฐ์ด ํด๋ณด๋ฉด ์๋์ ์ผ๋ก ๋ฒํผ์ ๋ฒํธ๋ฅผ ์ฆ๊ฐ์ํฌ ์ ์๋ค.
"1pu.u.u.u.
์์์ ์ด์ผ๊ธฐํ 9๊ฐ์ ๋ฒํผ ์ธ์๋ vi์์๋ a๋ถํฐ z๊น์ง ์ด๋ฆ์ด ๋ถ์ 26๊ฐ์ ๋ฒํผ๋ฅผ ๋ ์ฌ์ฉํ ์ ์๋ค. ๋ง์ฝ ํ์ฌ ์ค๋ถํฐ 3์ค์ ๋ฒํผ `a'์ ๋ณต์ฌ ์ถ๋ค๋ฉด "a3yy๋ฅผ ์
๋ ฅํ๋ค. ํ์ฌ ์ปค์์ ์์น์์ ์ค์ ๋๊น์ง ์ง์ฐ๋ฉด์ ๊ทธ ๋ด์ฉ์ ๋ฒํผ `b'์ ์ ์ฅํ๊ณ ์ถ๋ค๋ฉด "bD๋ฅผ ์
๋ ฅํ๋ฉด ๋๋ค. ๋ฒํผ์ ์๋ ๋ด์ฉ์ ๋ถ์ฌ๋ฃ๋ ๋ฐฉ๋ฒ์ ์์์ ์ค๋ช
ํ 9๊ฐ์ ๋ฒํผ์ ๊ฐ๋ค. ๋ง์ฝ ๋ฒํผ `a'์ ์๋ ๋ด์ฉ์ ๋ถ์ฌ๋ฃ๊ณ ์ถ๋ค๋ฉด "ap๋ฅผ ์
๋ ฅํ๋ฉด ๋๋ค.
4.4 ํจํด ๊ฒ์ ๋ฐ ๊ต์ฒด #
ํจํด์ ๊ฒ์ํ๋ ๋ฐฉ๋ฒ์ ํฌ๊ฒ ๋ ๊ฐ์ง๊ฐ ์๋ค. ๋จผ์ ๊ทธ ์ค์์ ์ผ์นํ๋ ๊ธ์๋ฅผ ์ฐพ๋ ๋ฐฉ๋ฒ์ด๋ค. ๋ง์ฝ ํ์ฌ ์ค์์ `a'๋ผ๋ ๋ฌธ์๋ฅผ ์ฐพ๊ณ ์ถ๋ค๋ฉด fa๋ฅผ ์
๋ ฅํ๋ค. ๋ค์ `a'๋ฅผ ๊ฒ์ํ๋ ค๋ฉด ;๋ฅผ ์
๋ ฅํ๊ณ ๋ค์ ์ด์ ์ `a'๋ฅผ ๊ฒ์ํ๋ ค๋ฉด ,๋ฅผ ์
๋ ฅํ๋ค. ์ฌ์ค ์์์ ๋ฐฐ์ด ํ ์ค ์์์์ ๊ฒ์์ ๋ณ๋ก ์ธ ์ผ์ด ์์ ๊ฒ ๊ฐ๋ค. ๋๋ถ๋ถ์ ๊ฒฝ์ฐ ๊ทธ๋ฅ ๋์ผ๋ก ๋ณด๊ณ h, l ํค๋ w, b ํค๋ก ์ฐพ์๊ฐ๋ ๊ฒ์ด ์ํธํ๋ค๋ ์ฌ๋์ด ๋ง์ ๊ฒ ๊ฐ๋ค.
๋ณด๋ค ๋ง์ด ์ฐ์ด๋ ๊ฒ์ ๋ฐฉ๋ฒ์ ๋ฌธ์ ์ ์ฒด์์ ํน์ ํจํด์ ์ฐพ๋ ๋ฐฉ๋ฒ์ด๋ค. ๋ฌธ์ ์ ์ฒด์์ ํน์ ํจํด์ ์ฐพ๋ ๋ฐฉ๋ฒ์ ์ ๋ฆฌํ๋ฉด ๋ค์๊ณผ ๊ฐ๋ค.
/[pattern]<CR> ํ์ฌ ์์น์์๋ถํฐ ์๋ ๋ฐฉํฅ์ผ๋ก ํจํด ๊ฒ์ ?[pattern]<CR> ํ์ฌ ์์น์์๋ถํฐ ์์ชฝ ๋ฐฉํฅ์ผ๋ก ํจํด ๊ฒ์ n ๊ฒ์ํ๋ ๋ฐฉํฅ์ผ๋ก ๊ณ์ ํจํด ๊ฒ์ N ๊ฒ์ํ๋ ๋ฐ๋ ๋ฐฉํฅ์ผ๋ก ๊ณ์ ํจํด ๊ฒ์
๋ง์ฝ `linux'๋ผ๋ ๋จ์ด๋ฅผ ๊ฒ์ํ๊ณ ์ถ๋ค๋ฉด ๋ค์๊ณผ ๊ฐ์ด ์
๋ ฅํ๋ค.
/linux<CR>
๊ณ์ํ์ฌ ์ผ์นํ๋ ํจํด์ ๊ฒ์ํ๊ณ ์ถ๋ค๋ฉด n์ ์
๋ ฅํ๋ค. ๋ฌธ์์ ๋งจ ๋ง์ง๋ง ํจํด์์ ๋ค์ n์ ๋๋ฅด๋ฉด ๋ค์ ๋ฌธ์์ ์ฒ์๋ถํฐ ๊ฒ์์ ์์ํ ๊ฒ์ด๋ค. ์ด ๊ธฐ๋ฅ์ ๋๊ณ ์ถ๋ค๋ฉด ๋ค์๊ณผ ๊ฐ์ด ์
๋ ฅํ๋ค.
:set nowrapscan<CR> ๋๋ :set nows<CR>
์ด์ ๋ฌธ์์ ๋์ ๋๋ฌํ๋ฉด ๋ค์ ์ฒ์์ผ๋ก ๋์๊ฐ์ง ์์ ๊ฒ์ด๋ค. ๋ค์ ์ผ๊ณ ์ถ๋ค๋ฉด ๋ค์๊ณผ ๊ฐ์ด ์
๋ ฅํ๋ค.
:set wrapscan<CR> ๋๋ :set ws<CR>
๊ฒ์๋ง ํ๋ ๋ณ๋ก ์ฌ๋ฏธ๊ฐ ์๋ค. ์ด์ ํน์ ํจํด์ ๋ค๋ฅธ ํจํด์ผ๋ก ๋ฐ๊พธ์ด ๋ณด์. ์ด๋ค ํจํด์ ๋ค๋ฅธ ํจํด์ผ๋ก ๋ฐ๊พธ๋ ๋ฐฉ๋ฒ์ ์ ๋ฆฌํ๋ฉด ๋ค์๊ณผ ๊ฐ๋ค.
:s/old/new<CR> ํ์ฌ ์ค์ ์ฒ์ old๋ฅผ new๋ก ๊ต์ฒด :s/old/new/g<CR> ํ์ฌ ์ค์ ๋ชจ๋ old๋ฅผ new๋ก ๊ต์ฒด :1,20s/old/new/g<CR> 1๋ถํฐ 20๋ฒ์งธ ์ค๊น์ง ๋ชจ๋ old๋ฅผ new๋ก ๊ต์ฒด :-2,+4s/old/new/g<CR> ์ปค์ 2์ค ์๋ถํฐ 4์ค ์๋๊น์ง old๋ฅผ new๋ก ๊ต์ฒด :%s/old/new/g<CR> ๋ฌธ์ ์ ์ฒด์์ old๋ฅผ new๋ก ๊ต์ฒด :%s/old/new/gc<CR> ๋ฌธ์ ์ ์ฒด์์ old๋ฅผ new๋ก ํ์ธํ๋ฉฐ ๊ต์ฒด :g/pattern/s/old/new/g<CR> pattern์ด ์๋ ๋ชจ๋ ์ค์ old๋ฅผ new๋ก ๊ต์ฒด :g/pattern/s//new/g<CR> :%s/old/new/g<CR>๊ณผ ๋์ผ
4.5 vi์์ UNIX ๋ช ๋ น ์คํ #
๋ค์๊ณผ ๊ฐ์ด ์
๋ ฅํด๋ณด์.
:!bash<CR>์, ์ด๊ฑด...์น์ํ ์ ํ๋กฌํํธ์ด๋ค. ๋ง์ฝ vi๋ฅผ ์ฌ์ฉํ๋ค๊ฐ ์ ๊น ์ ํ๋กฌํํธ๋ก ๋น ์ ธ๋์์ผ ํ ๊ฒฝ์ฐ ์ฌ์ฉํ๋ค. ๋ค์ vi๋ก ๋์๊ฐ๊ณ ์ถ์ผ๋ฉด exit<CR>๋ฅผ ์ ๋ ฅํ๋ค. :q<CR>๋ก vi๋ฅผ ๋น ์ ธ๋์จ๊ฒ๊ณผ๋ ๋ฌ๋ฆฌ ํ์ฌ ์ปค์์ ์์น๋ ๋ฒํผ์ ๋ด์ฉ์ด ๊ทธ๋๋ก ๋ณด์กด๋๋ฏ๋ก ์ ๊น ๋์ ์ ํ๋กฌํํธ๋ก ๋น ์ ธ๋์๋ค๊ฐ ๊ธ๋ฐฉ ๋ค์ vi๋ก ๋์๊ฐ์ผ ํ ๊ฒฝ์ฐ ํธ๋ฆฌํ๊ฒ ์ฌ์ฉํ ์ ์๋ค. ๊ทธ๋ฐ๋ฐ ์ฃผ์ํ ์ ์ด ํ๋ ์๋ค. ์ด๋ ๊ฒ vi๋ฅผ ๋น ์ ธ๋์จ ํ ๋ค์ vi๋ฅผ ์คํํด์๋ ์๋๋ค. ๋ณ ๋ฌธ์ ์ผ ์๊ฒ ์ง๋ง ๊ฐ์ ํ์ผ์ ๋ค์ ์ฐ๋ค๋ฉด ๋ฌธ์ ๊ฐ ์๊ธธ ์ ์๋ค.
๋ง์ฝ ํ ๊ฐ์ ๋ช
๋ น์ด๋ง ์คํํ ๊ฒฝ์ฐ ์ข๋ ํธ๋ฆฌํ ๋ฐฉ๋ฒ์ด ์๋ค.
:![command]<CR>ํ์๋ ํ์ฌ latex๊ณผ vi๋ก ์ด ๋ฌธ์๋ฅผ ์์ฑํ๊ณ ์๋๋ฐ ๋ฌธ์๋ฅผ ๋ฏธ๋ฆฌ๋ณด๊ธฐ ํ ๋๋ง๋ค vi๋ฅผ ๋น ์ ธ๋๊ฐ์ ๋ด์ผ ํ๋ค๋ฉด ๋ฌด์ฒ ๋ถํธํ ๊ฒ์ด๋ค. ๋คํํ ๋ค์ ๋ช ๋ น์ด๋ก vi๋ฅผ ๋น ์ ธ๋๊ฐ์ง ์๊ณ ๋ฏธ๋ฆฌ๋ณด๊ธฐ๋ฅผ ํ ์ ์๋ค.
:!latex %; xdvi %<.dvi<CR>`latex' ์ด๋ผ๋ ๋ช ๋ น์ผ๋ก ํ์ฌ ํธ์ง์ค์ธ ํ์ผ์ธ vi-seminar.tex ํ์ผ์ ์ปดํ์ผํ ๋ค์ ์์ฑ๋ vi-seminar.dvi ํ์ผ์ `xdvi'๋ผ๋ ํ๋ก๊ทธ๋จ์ผ๋ก ์ด์ด๋ณด๋ผ๋ ๋ช ๋ น์ด๋ค. ๋งค๋ฒ ์ด๋ ๊ฒ ํ์ดํ ํ ํ์๋ ์๋ค. :์ ๋๋ฅธ ํ ์์ชฝ ํ์ดํ ํค ํน์ Ctrl+p ํค๋ฅผ ๋๋ฅด๋ฉด ์ด์ ์ ์ฌ์ฉํ๋ ๋ช ๋ น์ด ๋์ฌ ๊ฒ์ด๋ค. ์ด์ ์ ์ฌ์ฉํ๋ ๋ช ๋ น์ ์ฐพ์ ๋จ์ํ ์ํฐ ํค๋ง ์ณ ์ฃผ๋ฉด ๋๋ค.
4.6 ๋์ค ๋ชจ๋์ ์ฌ์ฉ #
์ด๋ฏธ ๋์ค ๋ชจ๋์์ ์ฌ์ฉํ๋ ๋ช
๋ น์ด๋ฅผ ๋ช ๊ฐ์ง ๋ฐฐ์ ๋ค. ๋ช
๋ น ๋ชจ๋์์ `:'๋ฅผ ์
๋ ฅํ๋ฉด ์๋์ ๊ฐ์ด ํ๋ฉด ๋งจ ์๋์์ ์
๋ ฅํ๋ ๊ธ์๋ค์ด ๋ณด์ผ ๊ฒ์ด๋ค.
~ ~ ~ :wq [์์ด][์์ฑ][์ธ๋ฒ์]์ด์ ๊ฐ์ ๋ชจ๋๋ฅผ `๋์ค ๋ชจ๋' ํน์ `ex ๋ชจ๋'๋ก ๋ฐ๋ก ๊ตฌ๋ถํด์ ๋ถ๋ฅด๊ธฐ๋ ํ๋ค. ๋์ค ๋ชจ๋์์ ๋ง์ด ์ฌ์ฉํ๋ ๋ช ๋ น์ด๋ฅผ ์ ๋ฆฌํ๋ฉด ๋ค์๊ณผ ๊ฐ๋ค. ํน์ ํจํด์ ๋ค๋ฅธ ํจํด์ผ๋ก ๊ต์ฒดํ๋ ๋ฐฉ๋ฒ์ ์ด๋ฏธ ์์์ ์ ๋ฆฌํ์์ผ๋ฏ๋ก ๋ค์ ํ์ง ์๊ฒ ๋ค.
:q<CR> vi๋ฅผ ์ข ๋ฃํจ :w<CR> ํธ์ง์ค์ธ ๋ฌธ์๋ฅผ ์ ์ฅ :w [file]<CR> ํธ์ง์ค์ธ ๋ฌธ์๋ฅผ [file]๋ก ์ ์ฅ :w >> [file]<CR> ํธ์ง์ค์ธ ๋ฌธ์๋ฅผ [file]์ ๋ง๋ถ์ฌ์ ์ ์ฅ :e [file]<CR> [file]์ ๋ถ๋ฌ์ด :e#<CR> ์ด์ ์ ํธ์งํ๋ ํ์ผ์ ๋ถ๋ฌ์ด :e%<CR> ํ์ฌ ํ์ผ์ ๋ค์ ๋ถ๋ฌ์ด, ์ฆ ์ ์ฅํ์ง ์์ ์์ ์ทจ์ :r [file]<CR> [file]์ ์ปค์์์น์ ๋ผ์๋ฃ๊ธฐ :set [option]<CR> [option]์ ์ผ๊ธฐ :set [nooption]<CR> [option]์ ๋๊ธฐ :![command]<CR> [command] ์คํ :r ![command]<CR> [command] ์คํ ๊ฒฐ๊ณผ๋ฅผ ๋ผ์๋ฃ๊ธฐ
์๋ฅผ ๋ค์ด ํ์ฌ ์์น์ ๋ ์ง์ ์๊ฐ์ ์ฝ์
ํ๊ณ ์ถ์ผ๋ฉด
:r !date<CR>
๋ฅผ ์
๋ ฅํ๋ค. ๋ง์ฝ phone ์ด๋ผ๋ ํ์ผ์ ์ ๋ ฌํ์ฌ ์ฝ์
ํ๊ณ ์ถ์ผ๋ฉด
:r !sort phone<CR>
๋ฅผ ์
๋ ฅํ๋ฉด ๋๋ค. ์์์ ์ด๋ฏธ `set'๋ช
๋ น์ ์ฌ์ฉํ ์ ์๋ ์ต์
์ ๋ช ๊ฐ์ง ๋ฐฐ์ ๋ค. `number'์ `wrapscan'์ด ์๊ฐ๋์ง ์๋๋ค๋ฉด ์์ฅ์ผ๋ก ๋๋์๊ฐ ํ์ธํ๊ธฐ ๋ฐ๋๋ค. ๋ค๋ฅธ ์ ์ฉํ ์ต์
๋ค์ ๋ค์ ์ฅ์์ ์ค๋ช
ํ๊ฒ ๋ค.
5 vi์ ๊ณ ์๋ก #
์ง๊ธ๊น์ง ๋ฐฐ์ด ๋ด์ฉ๋ง ์ฌ์ฉํ๋๋ผ๋ ์ด์ vi๋ฅผ ๋ค๋ฅธ ๋ฒ์ํ ํธ์ง๊ธฐ์๋ ๋น๊ต๋ ํ ์ ์์ ๋งํผ ํธ๋ฆฌํ๊ฒ ์ฌ์ฉํ ์ ์๋ค. ์ด ์ ๋๋ง์ผ๋ก๋ ์น๊ตฌ์๊ฒ ์๋ํ ์ ์์ ๊ฒ์ด๋ค. ๊ทธ๋ฌ๋ ์ด ์ ๋๋ง์ผ๋ก๋ ์์ง `๋๋ vi์ ๊ณ ์๋ค!' ๋ผ๊ณ ๋งํ๊ธฐ๋ ์ข ๋ถ๋๋ฌ์ด ๊ฐ์ด ์๋ค. ๋ชจ๋ ๊ฑธ ์ ๋ฆฌํ๋ ๋ง์์ผ๋ก ์์์ ์ด์ด ๋์๋ ํผ์ง๋งํ ํ์ผ์ ๋ซ๊ณ ์ ํ์ผ์ ์ด์. ๋ง์ฝ vi๋ฅผ ์ข
๋ฃํ๋ค๊ฐ ๋ค์ ์คํํ๋ ์ฌ๋์ด ์๋ค๋ฉด ์ ๋ง ํ์๋ ์ถ์ด ํ๋ฌดํด์ง๋ค! ๋ค์๊ณผ ๊ฐ์ด ํ์ดํํ๋ค.
:e newfile<CR>
5.1 ์์ฉ๊ตฌ ์ฌ์ฉ #
์๋์ ํ๊ธ์ '์์ฉ๊ตฌ'๋ผ๋ ๊ธฐ๋ฅ์ด ์๋ค. ์ด ๊ธฐ๋ฅ์ ์ฌ์ฉํ๋ ์ฌ๋์ด ์ผ๋ง๋ ๋ ์ง๋ ์ ๋ชจ๋ฅด๊ฒ ์ง๋ง, ์๋ฌดํผ vi์๋ ์ด๋ฐ ๊ธฐ๋ฅ์ด ์๋ค. ๋ค์๊ณผ ๊ฐ์ด ํ์ดํํด ๋ณด์.
:ab kuls Korea University Linux Study<CR>
์ด์ ์
๋ ฅ ๋ชจ๋๋ก ์ ํํด `I'm a member of kuls.'๋ฅผ ์
๋ ฅํ์. `kuls'๋ฅผ ํ์ํ๋ ์๊ฐ `Korea University Linux Study'๋ก ๋ฐ๋ ๊ฒ์ด๋ค. ๋ฑ๋ก๋ ์์ฉ๊ตฌ๋ฅผ ํด์ ํ๋ ๋ฐฉ๋ฒ์ ๋ค์๊ณผ ๊ฐ๋ค.
:unab kuls<CR>
๋ฑ๋ก๋ ์์ฉ๊ตฌ๋ฅผ ๋ณด์ฌ์ฃผ๋ ๋ช
๋ น์ ๋ค์๊ณผ ๊ฐ๋ค.
:ab<CR>
๋ง์ฝ ์ฌ๋ฌ ์ค์ ์์ฉ๊ตฌ๋ก ์ง์ ํ๊ณ ์ถ๋ค๋ฉด ๋ค์๊ณผ ๊ฐ์ด ํ๋ค. ^M์ ํ์ดํํ ๋๋ ๋จผ์ Ctrl+v๋ฅผ ๋๋ฅธ ํ ์ด์ด์ Ctrl+m์ ๋๋ฅธ๋ค.
:ab kuls2 Korea University^MLinux Study<CR>
5.2 ๋งคํฌ๋ก ์ฌ์ฉ #
vi์ ํน์ง์ค ํ ๊ฐ์ง๋ ์์๋ฒํ ๊ธฐ๋ฅ์ ๋ค ์๋ค๋ ๊ฒ์ด๋ค. ์๋์ ํ๊ธ์์ `๋งคํฌ๋ก'๋ฅผ ์ด์ฉํ๋ ์ฌ๋์ด ์์์ง ๋ชจ๋ฅด๊ฒ ๋ค. vi์์๋ ๋งคํฌ๋ก๋ฅผ ์ด์ฉํ ์ ์๋ค. ๋ค์๊ณผ ๊ฐ์ด ํ์ดํ ํด ๋ณด์. `#2'๋ <F2>ํค๋ฅผ ์๋ฏธํ๋ค. ๊ทธ๋ฅ `<F2>' ๋ผ๊ณ ์ฐ๋ฉด ๋๋ ๊ฒฝ์ฐ๋ ์๊ณ ์ ๋๋ ๊ฒฝ์ฐ๋ ์๋ค.
:map #2 dwelp<CR>์ด์ ๋ค์ ๋ฌธ์ฅ์ the์์ <F2>ํค๋ฅผ ๋๋ฌ๋ณด์.
You can the type letter.
์๋์ ๊ฐ์ด ๋ฐ๋ ๊ฒ์ด๋ค.
You can type the letter.
๋งคํฌ๋ก์์๋ <CR>, <ESC>๋ฑ ๋ชจ๋ ํค ์
๋ ฅ์ ํฌํจ์ํฌ ์ ์๋ค. ๋งคํฌ๋ก์์ <CR>ํค๋ฅผ ์
๋ ฅํ๋ ค๋ฉด Ctrl+v์ Ctrl+m์ ์ฐ์์ผ๋ก ํ์ดํํ๋ค. <ESC>ํค๋ฅผ ์
๋ ฅํ๋ ค๋ฉด Ctrl+v๋ฅผ ๋๋ฅธ ํ Ctrl+[ํค๋ฅผ ๋๋ฅธ๋ค.
vi์์๋ ๋ช
๋ น ๋ชจ๋์์ ์ฌ์ฉํ๋ ๋งคํฌ๋ก์ ์
๋ ฅ ๋ชจ๋์์ ์ฌ์ฉํ๋ ๋งคํฌ๋ก๋ฅผ ๋ฐ๋ก ์ง์ ํ ์ ์๋ค. ์
๋ ฅ ๋ชจ๋์์ ์ฌ์ฉํ๋ ๋งคํฌ๋ก๋ ๋ค์๊ณผ ๊ฐ์ด ์ง์ ํ๋ค.
:map! x sequence<CR>์์ ์์์๋ x๋ฅผ sequence๋ก ์ ์ํ๋ค. ๋งคํฌ๋ก๋ฅผ ํด์ ํ ๋๋ ๋ค์ ๋ช ๋ น์ ์ด์ฉํ๋ค.
:unmap! x<CR>๋งค๋ฒ ์ด๋ ๊ฒ ๋งคํฌ๋ก๋ฅผ ์ง์ ํด ์ฃผ๋ ๊ฒ์ ๊ท์ฐฎ์ ์ผ์ด๋ค. vi๋ฅผ ์คํํ ๋๋ง๋ค ๋งคํฌ๋ก๊ฐ ์คํ๋์ด ์๊ฒ ํ๋ ค๋ฉด ํ ๋๋ ํ ๋ฆฌ์ .exrc ํ์ผ์ ๋ฃ์ด๋๋ฉด ๋๋ค. ๋ค์์ LaTeX์ ์์ฃผ ์ฌ์ฉํ๋ ํ์์ .exrcํ์ผ์ ์ผ๋ถ์ด๋ค.
--------------------------------------------------------------------------------
" LaTeX์ ์ํ ๋งคํฌ๋ก
" ๋ฅผ ๋๋ฅด๋ฉด Visual selection์ผ๋ก ์ ํ๋ ๋ถ๋ถ๋ง ์ปดํ์ผํ์ฌ xdvi๋ก ๋ณด์ฌ์ค
map ^[:1,?^\\begin{document}$?w! _region_.tex^M;;R1
map ;;R1 :'<,'>w >> _region_.tex^M;;R2
map ;;R2 :/^\\end{document}$/w >> _region_.tex^M;;R3
map ;;R3 :!latex _region_.tex; xdvi -expert _region_.dvi; rm _region_.???^M^M
" ์ ๋๋ฅด๋ฉด ํ์ฌ ํธ์ง์ค์ธ ๋ฌธ์๋ฅผ ์ปดํ์ผํ์ฌ xdvi๋ก ๋ณด์ฌ์ค
map :w^M:!latex %; xdvi -expert %<.dvi^M^M
" ์ ๋๋ฅด๋ฉด ์ปดํ์ผ๋ ๋ฌธ์๋ฅผ ps๋ก ์ถ๋ ฅํ์ฌ gv๋ก ๋ฏธ๋ฆฌ๋ณด๊ธฐ
map :!dvips -o %<.ps %<.dvi; gv %<.ps^M^M
" ๋ฅผ ๋๋ฅด๋ฉด ๋ณํ๋ ํฌ์คํธ์คํฌ๋ฆฝํธ ๋ฌธ์๋ฅผ pdf๋ก ๋ณํ
map :!ps2pdf %<.ps %<.pdf&^M^M
" ๋ ์ดํ
๋ฌธ์ ์ ์ฒ๋ฆฌ๋ถ๋ฅผ ์๋์ผ๋ก ๋ง๋ค์ด์ฃผ๋ ๋งคํฌ๋ก
map ;tex i\documentclass[a4paper]{article}^[;;T1
map ;;T1 o\usepackage{hangul,a4,indentfirst}^M\setlength{\parindent}{1em}^[;;T2
map ;;T2 o\addtolength{\hoffset}{-0.5cm}^M\addtolength{\textwidth}{1cm}^[;;T3
map ;;T3 o\kscntformat{section}{}{}^M\linespread{1.3}^M^[;;T4
map ;;T4 o\begin{document}^M^M\end{document}^[ki
" ๊ธ๊ผด์ ๊ด๊ณ๋ ๋งคํฌ๋ก
map ;rm i\textrm{^[Ea}^[B
map ;tt i\texttt{^[Ea}^[B
map ;sf i\textsf{^[Ea}^[B
map ;bf i\textbf{^[Ea}^[B
map! ;rm \textrm{
map! ;tt \texttt{
map! ;sf \textsf{
map! ;bf \textbf{
" ํ๊ฒฝ(Environment)์ ๊ด๊ณ๋ ๋งคํฌ๋ก
map! ;itemize \begin{itemize}^M\end{itemize}^[O \item
map! ;enumerate \begin{enumerate}^M\end{enumerate}^[O \item
map! ;description \begin{description}^M\end{description}^[O \item[
map! ;equation \begin{equation}^M\end{equation}^[O \label{eq:}^[i
map! ;tabular \begin{tabular}[center]{}^M \hline^M\hline^M^H\end{tabular}^[3k$i
map! ;figure \begin{figure}[!hbp]^M\end{figure}^[O
map! ;table \begin{table}[!hbp]^M\end{table}^[O
map! ;verbatim \linespread{1}\begin{verbatim}^M\end{verbatim}\linespread{1.3}^[O
" ํน์๋ฌธ์ ์
๋ ฅ์ ๊ฐํธํ๊ฒ ํ๊ธฐ ์ํ ์์ฉ๊ตฌ
ab ;\ $\backslash$
ab ;~ \textasciitilde
--------------------------------------------------------------------------------
5.3 vi ์ค์ #
vi์ ์ค์ ํ์ผ์ /etc/vimrc ํ์ผ๊ณผ ํ ๋๋ ํ ๋ฆฌ์ .vimrc ํ์ผ์ด๋ค. ๋ง์ฝ GUI ๋ฒ์ ์ vi๋ฅผ ์ฌ์ฉํ๋ค๋ฉด /etc/gvimrc ํ์ผ๊ณผ .gvimrcํ์ผ๋ก ์ค์ ํ ์ ์๋ค. ์์์ ์ด๋ฏธ vi๋ฅผ ์ค์ ํ๋ ๋ช
๋ น์ ๋ฐฐ์ ๊ณ ๋ช ๊ฐ์ง ์ต์
๋ค๋ ์ด๋ฏธ ์ดํด๋ณด์๋ค. ์๋์์ ๋ค๋ฅธ ๋ช ๊ฐ์ง ์ต์
๋ค์ ํ์์ .vimrc ํ์ผ์ ์๋ก ๋ค์ด ์ค๋ช
ํ๊ฒ ๋ค.
--------------------------------------------------------------------------------
set autoindent " ์๋์ผ๋ก ๋ค์ฌ์ฐ๊ธฐ๋ฅผ ํ๋ค.
set cindent " C ํ๋ก๊ทธ๋๋ฐ์ ํ ๋ ์๋์ผ๋ก ๋ค์ฌ์ฐ๊ธฐ๋ฅผ ํ๋ค.
set smartindent " ์ข๋ ๋๋ํ ๋ค์ฌ์ฐ๊ธฐ๋ฅผ ์ํ ์ต์
์ด๋ค.
set textwidth=79 " ๋ง์ฝ 79๋ฒ์งธ ๊ธ์๋ฅผ ๋์ด๊ฐ๋ฉด \
set wrap " ์๋์ผ๋ก <CR>๋ฅผ ์ฝ์
ํ์ฌ ๋ค์ ์ค๋ก ๋์ด๊ฐ๋ค.
set nowrapscan " ๊ฒ์ํ ๋ ๋ฌธ์์ ๋์์ ๋ค์ ์ฒ์์ผ๋ก ๋์๊ฐ์ง ์๋๋ค.
set nobackup " ๋ฐฑ์
ํ์ผ์ ๋ง๋ค์ง ์๋๋ค.
set visualbell " ํค๋ฅผ ์๋ชป๋๋ ์ ๋ ์ ์๋ฆฌ๋ฅผ ๋ด๋ ๋์ ๋ฒ์ฉ์ด๊ฒ ํ๋ค.
set ruler " ํ๋ฉด ์ฐ์ธก ํ๋จ์ ํ์ฌ ์ปค์์ ์์น(์ค,์นธ)๋ฅผ ๋ณด์ฌ์ค๋ค.
set tabstop=4 " Tab์ ๋๋ ์ ๋ 8์นธ ๋์ 4์นธ ์ด๋ํ๋๋ก ํ๋ค.
set shiftwidth=4 " ์๋ ๋ค์ฌ์ฐ๊ธฐ๋ฅผ ํ ๋ 4์นธ ๋ค์ฌ์ฐ๋๋ก ํ๋ค.
" ์๋๋ ํ๊ธ์ ์ ๋๋ก ์ฒ๋ฆฌํ๊ธฐ ์ํด ํ์ํ๋ค.
if $LANG[0] == `k' && $LANG[1] == `o'
set fileencoding=korea
endif
"ํฐ๋ฏธ๋์ด xterm-debian ํน์ xterm-xfree86์ผ ๊ฒฝ์ฐ ์ปฌ๋ฌ๋ฅผ ์ฌ์ฉํ๋ค.
if &term =~ "xterm-debian" || &term =~ "xterm-xfree86"
set t_Co=16
set t_Sf=^[[3%dm
set t_Sb=^[[4%dm
set t_kb=^H
fixdel
endif
"๋ฌธ๋ฒ ๊ฐ์กฐ ๊ธฐ๋ฅ์ ์ฌ์ฉํ๋ค.
if has("syntax")
syntax on " Default to no syntax highlightning
endif
--------------------------------------------------------------------------------
5.4 vim์ ํน๋ณํ ๊ธฐ๋ฅ #
vi์ ํด๋ก ์ธ vim์๋ ์๋์ vi์๋ ์์ง๋ง ํธ๋ฆฌํ๊ฒ ์ฌ์ฉํ ์ ์๋ ๋ง์ ๊ธฐ๋ฅ๋ค์ด ์๋ค. ๋ฌธ๋ฒ ๊ฐ์กฐ ๊ธฐ๋ฅ๋ ์๋์ vi์๋ ์๋ ๊ธฐ๋ฅ์ด๋ค. vim์ ๊ธฐ๋ฅ ์ค `Visual Selection' ์ด๋ผ๋ ๊ธฐ๋ฅ์ด ์๋ค. ๋ช
๋ น ๋ชจ๋์์ v๋ฅผ ๋๋ฅธ ํ ์ปค์๋ฅผ ์์ง์ฌ ๋ณด์. ์๋์ ํ๊ธ์ `๋ธ๋ญ'์ฒ๋ผ ์ญ์์ผ๋ก ์์ง์ธ ๋ฒ์์ ์๋ ๊ธ๋ค์ด ์ ํ๋ ๊ฒ์ด๋ค. ์ด ์ํ์์ y, c, d ํค๋ฅผ ๋๋ฌ ์ ํ๋ ๋ฒ์์ ๊ธ๋ค์ ๋ณต์ฌ, ๊ต์ฒด ๋๋ ์ญ์ ํ ์ ์๋ค.
ํ๋ก๊ทธ๋๋ฐ์ ํธ๋ฆฌํ๊ฒ ์ฌ์ฉํ ์ ์๋ ๊ธฐ๋ฅ์ผ๋ก ํญ์ ๋ผ์๋ฃ๊ฑฐ๋ ์ทจ์ํ๋ ๊ธฐ๋ฅ์ด ์๋ค. ๋ง์ฝ ์ปค์๊ฐ ์๋ ์ค์์๋ถํฐ 5์ค์ ํญ์ ๋ผ์๋ฃ์ผ๋ ค๋ฉด ๋ค์๊ณผ ๊ฐ์ด ํ์ดํํ๋ค.
5>>
์ด๋ฅผ ์ทจ์ํ๋ ค๋ฉด ๋ค์ ๋ค์์ ํ์ดํํ๋ค. ๋ฌผ๋ก ๊ทธ๋ฅ u๋ฅผ ์
๋ ฅํด๋ ๋๋ค. ๊ทธ๋ฌ๋ ์ฌ๊ธฐ์๋ ์ด๋ป๊ฒ ๋์ํ๋์ง ๋ณด์๋ ๊ฒ์ด๋ฏ๋ก `5<<'๋ฅผ ์
๋ ฅํ๋ค.
5<<Visual Selection ๊ธฐ๋ฅ๊ณผ ๊ฒฐํฉํด์ ์ฌ์ฉํ๋ฉด ์ข๋ ํธ๋ฆฌํ๊ฒ ์ฌ์ฉํ ์ ์๋ค. v๋ฅผ ๋๋ฌ ๋ค์ฌ์ฐ๊ธฐํ ๋ฒ์๋ฅผ ์ ํํ ๋ค์ >๋ฅผ ํ์ดํํ๋ฉด ์ ํ๋ ๋ฒ์๊ฐ ๋ค์ฌ์ฐ๊ธฐ ๋ ๊ฒ์ด๋ค.
5.5 ์ ๊ท์(Regular Expression) #
vi์ ๊ฒ์ ๋ฐ ๊ต์ฒด ๊ธฐ๋ฅ์์ `์ ๊ท์(Regular Expression)'์ด๋ผ๋ ํน๋ณํ ํํ์ ์ฌ์ฉํ ์ ์๋๋ฐ ์ด๋ฅผ ์ฌ์ฉํ๋ฉด ๋ณด๋ค ํจ๊ณผ์ ์ธ ๊ฒ์/๊ต์ฒด๋ฅผ ํ ์ ์๋ค. ์ ๊ท์์ vi ๋ฟ๋ง ์๋๋ผ ๋ค๋ฅธ ๋ช
๋ น์ด์์๋ ๋ง์ด ์ฐ์ด๋ฏ๋ก ์์๋๋ฉด ํธ๋ฆฌํ๋ค. ๊ทธ๋ฌ๋ ์ ๊ท์์ ๋ํ ๋ด์ฉ๋ง์ผ๋ก๋ 1์๊ฐ ๊ฐ์๋ ์ถฉ๋ถํ ํ ์ ์๋ค. ์ฌ๊ธฐ์๋ ๊ฐ๋จํ ์ฌ์ฉ๋ฒ๋ง์ ์ด์ผ๊ธฐํ๊ณ ๋์ด๊ฐ๊ฒ ๋ค.
์ฐ์ ์ ๊ท์์์ ๋ง์ด ์ฐ์ด๋ ๊ธฐํธ๋ ๋ค์๊ณผ ๊ฐ๋ค.
^ ์ค์ ์ฒ์์ ๋ํ๋ธ๋ค.
$ ์ค์ ๋์ ๋ํ๋ธ๋ค.
. ์๋ฌด ๊ธ์๋ ํ ๊ธ์๋ฅผ ๋ํ๋ธ๋ค.
[...] [๊ณผ ] ์ฌ์ด์ ์๋ ๊ธ์ ์ค ํ๋
* * ์์ ๋ด์ฉ์ด 0๋ฒ ์ด์ ๋ฐ๋ณต๋จ
\{min,max\} min ์ด์ max ์ดํ์ ํ์๋งํผ ๋ฐ๋ณต๋จ
์๋ฅผ ๋ค์ด ์ค์ ๋งจ ์ฒ์์ ๋์ค๋ `linux'๋ง ๊ฒ์ํ๊ณ ์ถ๋ค๋ฉด ๋ค์๊ณผ ๊ฐ์ด ์
๋ ฅํ๋ค.
/^linux<CR>
๋ง์ฝ 3~5์๋ฆฌ๋ก ์ด๋ฃจ์ด์ง ๋ชจ๋ ์ซ์๋ฅผ ๊ฒ์ํ๊ณ ์ถ๋ค๋ฉด ๋ค์๊ณผ ๊ฐ์ด ์
๋ ฅํ๋ค.
/[0123456789]\{3,5\}<CR> ํน์ /[0-9]\{3,5\}<CR>
๋ง์ฝ `ab'๋ก ์์ํ๋ ์๋ฌธ์๋ก ๋์ด ์๋ ๋ชจ๋ ๋จ์ด๋ฅผ ์ญ์ ํ๋ ค๋ฉด ๋ค์๊ณผ ๊ฐ์ด ์
๋ ฅํ๋ค.
:%s/ab[a-z]*//g<CR>
6 ๋งบ์๋ง #
vi์ ๊ณ ์๊ฐ ๋๊ธฐ ์ํด์ ์์ ๋ด์ฉ์ ๋ฌด์กฐ๊ฑด ์ธ์ฐ๋ ค๊ณ ํ์ง ๋ง๋ผ. j ํค๊ฐ ๋ฌด์จ ์ญํ ์ ํ๋๋๊ณ ํ์์๊ฒ ๋ฌผ์ด๋ณธ๋ค ํด๋ ๊ณง๋ฐ๋ก ๋๋ตํ ์ ์์ ๊ฒ์ด๋ค. ๋จธ๋ฆฌ๋ก ์ธ์ฐ๋ ค๊ณ ํ์ง ๋ง๊ณ ๊ฐ์ผ๋ก ์ตํ์ผ ํ๋ค. ํ๊บผ๋ฒ์ ๋ชจ๋ ๊ฒ์ ์ตํ๋ ค ํ์ง ๋ง๊ณ ์ผ๋จ ์ด๋ค ์ด๋ค ๊ธฐ๋ฅ์ด ์๋ค๋ ๊ฒ ์ ๋๋ง ์์๋๋ผ. ๊ทธ๋ฆฌ๊ณ ์ง์ ๋ฌธ์๋ฅผ ํธ์งํ๋ฉด์ ๊ทธ๋๊ทธ๋ ์ฌ์ฉ ๋ฐฉ๋ฒ์ ์ฐพ์๋ณด์. ์ฒ์์๋ ์ข ๊ท์ฐฎ๊ฒ ์ง๋ง, ๊ทธ๋ฌ๋ ์ฌ์ด ์ค๋ ฅ์ด ๋ ๊ฒ์ด๋ค. ์ด์ฌํ ์ฐ์ตํ๋ฉด ์ผ๋ง ์ง๋์ง ์์ ์๋์ฐ์ฉ vi๋ฅผ ์ฐพ์๋ค๋๊ฒ ๋ ๊ฒ์ด๋ค. ๊ทธ๋ฌ๋ฉด ์ฑ๊ณต์ด๋ค! vi์ ๊ณ ์๊ฐ ๋์!








