~cpp 1.VI(Visual interface Editor) ▶파 파 (binary) 텍트 파 source data 화 파(ASCII) ▶Editor(unix system) Line editor 편(ex ed) Screen editor 편(vi) ▶Vi vi ex The University of California, Berkeley California computer Science Division, Department of Electrical Engineering and Computer Science ▶Vi (편) , , ; <ESC> (a A I ...) : <ESC> 형 (: / ? !) 한 CR( ) <DEL> 트 ; ▶Vi 형 [from][.][to][][ ] or [n][][ ] 행/ 호 (z G | ) 크 (^D ^U) 효 ( ) 트 (.) 택트(d s c ..) ▶.exrc 파 vi 할 vi vi환 set 한 .exrc파 set default set wm=3 set sm ## . bbm bbmaster@flower.chungnam.ac.kr ab bbm bbmaster@flower.chungnam.ac.kr ## 펠 크 크 map V :w^M:!spell -x %^M:e!^M^M vi 해할 할 하 ) d , dw , db 한. 키 Ctrl키 키 합 하 ) ^u Ctrl키 태 u키 형 형 환 한. ) 키 할 형 형 키 항 한 크트 파 하 합 ▶File 파 (↓: CR) ZZ (=:wq) 파 파 :w ↓ 하 :w! ↓ 허 :w <file>↓ 파 name :w! <file>↓ 파 name :q↓ vi하 Unix트 :q!↓ 파 한 vi 템 편 :e <file>↓ 파 편 :e!↓ 하 편 :e+ <file>↓ 행 편 :e +n↓ n 행 편 :e #↓ 편하 file 편 :e! #↓ 편한 file 편 :r <file> ↓ <file> read :r !<>↓ <> 행 read :nr <file>↓ n행 <file> read :sh↓ vi (^d, exit ) :!cmd↓ cmd 행하 :n args↓ 트 ^G 파 행 표 :ta tag↓ tag 킴 :f<ESC> 파? 파편 $vi A B C D 4 파(A B C D) 할 :n 화 편 한 화 파 파 파 $vi -r 화 템 ( ), 하 파 함 화 /행 n 행 n 행 한 + (n+) 행( n행) - (n-) 행( n행) G 화 행 1G 파 행 nG 파 n 행 H 화 행 L 화 행 M 화 행 CR + ↓ j 행 ↑ k 행 1 ^ O 행 $ 행 h → 향 l ← 향 ^H ←( 페 키) nl n space →(페 ) fc (nfc) c Fc (nFc) c tc (ntc) c Tc (nTc) c ; (n;) 한 향 c , (n,) 한 향 c w (nw) () W (nW) () e (ne) () E (nE) () b (nb) () () B nB () //패 { or n{ 패 } or n} 한 패 ( ) ]] or n]] 한 [[ or n[[ 한 화 ^F n^F 화 ^B n^B 화 ^D n^D 화 크 ^U n^U 화 크 ^Y n^Y 한 행 ^E n^E 한 행 z 화 top , 크 z. 화 , 크 z- 화 bottom , 크 ^L 화 (refresh) ^R ^L →key 화 하 refesh (insert) a i A I o 한 O 한 ^H ( 페) ^W erase ^H kill 행 . 행 \ 행 ESC ESC 하 DEL 트 ^D 한 back tab. autointent ^^D (^) control-d(^D) . 행 back tab. autointent 하 O^D 행 back tab autointent ^V 트 ESC 행 합 J 행 합하 한 행 (delete) x nx 한 한 X nX 한 D 행 d0 행 dd ndd 행( n행) dG 행 파 행 d1G 행 파 행 dnG 행, n 행 행 d- d+ nd- n nd+ n ddp 환한 // d) dn) d( dn( d} dn} paragraph d{ dn{ paragraph d] dn] section d[ dn[ section dfc dnfc 향 (n) 'c' dFc dnFc 향 (n) 'c' dtc dntc 향 (n) 'c' dTc dnTc 향 (n) 'c' d/pat 향 탐하 팬(pat) d?pat 향 탐하 팬(pat) text p (change, delete, yank) 한 P (change, delete, yank) 한 $vi -r <화> <화> 화 *템 , 하 * cw cnw (n ) cW cnW (n ) cb cnb (n) cB cnB (n) // c) cn) c( cn( c} cn} paragraph c{ cn{ paragraph c]] cn]] section c[[ cn[[ section cfc cnfc 향 (n) 'c' cFc cnFc 향 (n) 'c' ctc cntc 향 (n) 'c' cTc cnTc 향 (n) 'c' / 10,20/ 10 20 1,$/ //+n 향 n ? 하 ??+n 향 n n 행한 향 (/) N 행한 (?) 트(^)하 :/^M(^V+^M) 트 (^) 화 ^V 하 하 트 한 환(replacement) : []s/old/new/[cgi] ( . , * [ ^ $ \ / &) (\. \* \[ \^ \$ \ \/ \&) [] [] 호 [$] 파 [. ] [%] 화 [cgi] [c] [g] 한 한 [i] 하 :s/old/new/g 해 행 :10,$s/old/new/g 10 파 행 :g/A/s//B/g 화 A (g/A) A B 환한 (s//B), s // text 한 한 해 한(/g) :g/ABC/s/B/Z/g 화 ABC (s/B/Z) ABC B Z 환한 (/g) 한 해 한(/g) Mark(크) mc 'c' 표한 ('c' 1 ) 'c 'c' 표 한 ` 'c' 표 한 " , 했 `` , 했 / :10,20w 화 10 20 화 :10,20w >> 화 10 20 화 :10,20r 화 10 20 화 (yank) "a5dd 5하, a 함 yw 한 킨 3yw 3 킨 y$ 킨 y) 킨 yy nyy (n) 킨 (Y) "a5Y 5 a 히(put) p 킨 P 킨 "ap a 킨 "np n 한 , yank 해 행 크( ) :map<키><> <키> 10 <> 100 *) vi bug 항 크 하 해 :unmap <키> 크 해 :map #n <> <키> #n - n 0 9 - , 확한 크 키 . :map #2 :w^M 하 키 F2 :w^M 행한 :map V :w^M:!ispell -x $^M:e!^M^M ( ) :map #2 :w^M: !cc %^M:e!^M^M (vi 키 F2 파) . 행 J 행 합 ~ 환 ^1 화 하 commond : ex(편) ^f 향 한 화 크 :r <file> <file> read ) sentence G . . . (dft ) :r !<> <>행 read ( sentence ^g 화 :nr <file> n<file> read } paragraph h 한 :! 행 { paragraph H 화 :sh ]] section ^h backspace :x [[ section i :wq 0() line I :11,22w <file> 11 12 $ line ^i tab () :w >> <file> 화<file> ^ line j :w! 화 + k :q (화 ) - l :q! spacebar L 화 :e <file> vi <file>편 return ^l refresh :e! 하 편 / 향 탐 m 크 :n 화 편 ? 향 탐 M 화 :n <files> 편하 한 화 트<file> % (,{,[,-),},} ^m (CR) , f,F,t,T 향 행 n 행 :e# 편하 <file> ; f,F,t,T 향 행 N 향 행 :args 편 화 . ^n ( ) :rew 화 ` mark한 o 한 :map m n 크 ' 크 O 한 :map! m n 크 ( ) `` 크한 or 탐하 p :unmap m 크 해 '' `` P :unmap! m 크 해() ~ ↔ 환 ^p ( ) :ab <1> <2> " Q ex 행 :unab <1> 해 !! r :set <option> set ! send next to commend, replace output(eg !) R ( ESC ) :set number 호 >> shiftwith paragraph ^r refresh( ) !} unix 하 행 << shiftwith paragraph s >% (,{,[ S 행 <% (,{,[ t a T " A ^t shiftwith b 한 u B 한 U 화 ^b 한 화 크 ^u 화 크 c 텍트 ^V 해 해함 C 텍트 w 한 ^c ( x) W 한 d . text ^w () D x ^d 화 크 X e y . . . yank E 한 Y yank ^e 한 화 크 ^y 한 화 크 f . . . 탐 z 크 top(. mid -bot) F . . . 향 탐 ZZ 하 (=wq) set Option Default :set <option> <param> :set <nooption> <param> set <option> no 힌 :set all vi 태 한 autoindent(ai) noai autoprint(ap) ap 화 화 autowrite(aw) noaw 파편 파 (:n, :!) beautify(bf) nobf 하 tab, newline, formfeed directory(dir=) /tmp 하 한 토 edcmpatible noedcmpatible ed편 errorbells(eb) errorbells exrc(ex) noexrc home 토 .exrc화 hardtaps=(ht=) 8 하 텝 한 ignore case(ic) noic lisp nolisp indentation lisp형 list nolist 탭 ^I, 행 $ 표 magic magic [*. 패 한 mesg masg 크 number(nu) nonumber 하 함 open noopen Vi ex 하 함 optimize(opt) optimize paragraphs=(para=) IPLPPQPPLIbp 하 크 prompt prompt ex prompt readonly(ro) noro ! 호 화 reraw noredraw remap remap map report= 5 한 크 scroll 1/2 크할 행 sections= SHNHH section 한 크 shell=(sh=) 환 shiftwith=(sw=) showmatch(sm) {,( },) 1 하 showmode noshowmode 화 하 "input mode" slowopen(slow) tab 한 tabstop(ts=) 화 tab taglength(tl=) tab 화 tags= tag /usr/lib/tags 태 화 pass term= 형 timeout(to) timeout 한 tty type= Set 1 크 "time out" 행 warn warn window=(w=) 편 할 wrapmargin=(wm=) 0 화 행 wrapscan(ws) ws writeany(wa) nowa 한 화 템 허하