vi, vim Ȱ... 
  : 7.10 1999
ۼ : â (nu11@kldp.org)


1. vi, vim Ұ
2. ⺻ , 
        2.1  
                2.1.1 , ̱
                2.1.2 Named  
                2.1.3   
        2.2 ̵
                2.2.1 ª ̵
                2.2.2 Ÿ ̵
                2.2.3 ã ̵
                2.2.4 ũ ̿ ̵
        2.3 ȭ ,      
        2.4   

3. ã, ġȯ
        3.1 ǥ
        3.2 ã
        3.3 ġȯ
        3.4   

4. The Power of ex
        4.1 abbreviations
        4.2 map
        4.3 @-function
        4.4 shell command̿
        4.5 set, ڽſ ´ vi 
        4.6   
        
6. vim ߰ ɵ
        6.1 multi-window
        6.2 Ȯ ǥ
        6.3 visual mode
        6.4 tag stack 
        6.5 α׷  ɵ
        6.6   

7. Ÿ
        Ű ϱ
        bash vi ϱ
        csh vi ϱ

1. vi, vim
        vi ؽƮ  ϴµ Ǵ ؽƮ Դϴ.   
OS󿡼 ϴ vi ߵǾ , Ư unix迭 OS   ý
ۿ ⺻ ؽƮ ͷ ǰ . vim Vi IMprovedν  ״ vi 
unlimited undo, syntax coloring,  split windows, visual selection,  gui support 
   vi cloneԴϴ. vim õ ڷᳪ  OS ̳ʸ, ҽ 
www.vim.org ãƺñ ٶϴ.

2. ⺻ , 
        vi ũ     ϴ. 켱 ɸ Ű  Է ٷ 
 Ǵ ,  Է¸   ϴ ,  ex 
 ex Ű Դϴ.  vi Ű ó  ɸ ¿ 
ְ ˴ϴ. ɸ忡 : Ű  ex, a, i   Ű  Է¸
 ȯǾ    ִ · ˴ϴ. 
            ⺻   ؼ  ϰڽ
. Ư  ϱ   vi [filename]  shell prompt ŵ
ϴ. ̷     Ϸ i Է,  ϴ  
  Ϸ [ESC]ZZ  [ESC]:wq     ϰ ˴ϴ.  
 ⺻ ˾Ƶμž ݺ ϴ      ְ?  ⺻
 ˾Ƶμž   ɸ忡 u  undoԴϴ.  ׷ ߸ 
  ٷ undo  ְ...^^;
+------------------------------------+----------------------------------------+
|ġ                    | i                                      |
| ó ġ          | I                                      |
|ġ ߰                   | a                                      |
|  ߰                | A                                      |
|ο   Ŀ Ʒٿ .  | o                                      |
|ο   Ŀ ٿ .    | O                                      |
|  Ը              | S                                      |
| ġ Relpace         | R                                      |
|ٰ  ģ.           | J                                      |
|빮<->ҹ                     | ~                                      |
|  ݺѴ.             | .                                      |
|   Ѵ.        | u    (<-> CTRL-R)                      |
| ó · Ѵ.          | U                                      |
+------------------------------------+----------------------------------------+

2.1 

2.1.1 , ̱, 
        ؽƮ ⸦ ϸ鼭    ߿ ϳ ݺǴ ڿ
 ؼ ٸ  ̴ ̶ մϴ. vi   ̷  
 ְ vi ɾ Ư ſ   ̷     ֽ
. ɸ忡 yy Էϸ   Ŀ ġ    ī(Yanking)ϰ 
˴ϴ.  dd   ϰ Ǵµ    ̷鼭 ۿ 
簡 Ǿֽϴ. yy dd ۿ   ̷ ̰ ϴ    
  p Էϸ ˴ϴ. Ͻõ yŰ 縦 ϴµ Ǵ Ṵ̋ 
d , p ̱⿡ Ǵ ŰԴϴ. ɸ忡 Ǵ ɵ  
տ ڸ Է       Ƚŭ  ݺϰ  ˴ϴ.  
2yy  Էϸ 2 ϸ    ֽϴ.  ڿ  
 ̵ õ ɰ ϸ 糪  ϴ      ֽ
. 켱 ⼭ 翡 Ǵ Ű yŰ,  Ǵ Ű d, ̱⿡ 
Ǵ Ű pŰ ͸ ϰ Ѿô.  Ѱ  ߸ Ѿ ߱
. X  xŰ ɸ忡  ˴ϴ.   x  ġ 
ڰ ǰ X  [bs]Űó  մϴ. 
+------------------------------+---------------+---------------+--------------+
|                              |    copy       |    delete     |    yanking   |
+------------------------------+---------------+---------------+--------------+
| ܾ                       |      cw       |      dw       |     yw       |
| ܾ                       |  2cw or c2w   |  2dw or d2w   |  2yw or y2w  |
|                          |      cc       |      dd       |     yy       |
|Ŀ ġ       |  c$  or C     |  d$  or D     |  y$ or Y     |
|Ŀ ġ  ó   |      c0       |      d0       |     y0       |
|                    |      r        |    x or X     |  y1 or yh    |
+------------------------------+---------------+---------------+--------------+
 
2.1.2 Named  
          쿡  Ư ڿ  ϸ  
 ڿ  ˴ϴ. vi a-z ̸   ۿ  Ͽ 
   ִ ſ    մϴ. ̷   named buffer 
ϰ   ɸ忡  տ a~z ۸ "a ~ "z ٿ
 Դϴ.  縦 ߴ  ٽ غ "ayy     "a 
ۿ 簡 ˴ϴ. ̰ ٽ ̱⸦ Ϸ "ap Էϸ ǰ. 
        ̹ ִ ۿ  ߰ϰų ó ۿ   ִ  
ϰڽϴ. ̹  ۿ   ְ  ڿ  ߰ϰ  
찡 . ̷  ߰  ̸ 빮ڸ մϴ. "Ayy   
 ۿ ߰ϰų, ex忡 Ư ڿ ִ   صΰ  
 :g/string/y A ̷  ϴ . 
          ʰ ۿ   q մϴ.  q  
۸  ȭϴܿ recording̶ ǥð  ݺ  ϴ Ű Է
  ۸  ˴ϴ. ŰԷ  ٽ q  ˴ϴ.
        ڿ ex忡 ϴ ̳ @-function    ִ  
ϰڽϴ.  ⼭      ˰  Ѿ  .  (:  vim 
register ϴ±.)

2.1.3   
        vi   ÿ  ؼ vi [filename1] [filename2]... 
·  ϴ  ڿ ̾  ݴϴ. ׷ ÿ   
 . ׸    ȯ :nŰ :N ̿ؼ  մϴ.  vi test1 
test2    ۾ ϰ ִٸ :n Էϸ test2  Ѿ
 ˴ϴ. ٽ :N Ǵ :prev Էϸ test1   ֽϴ.   
   ȮϷ :args Էϸ      ߿  
  ȣ ѷο ǥõ˴ϴ.   Ƽ   
ʶپ ؾ ϴ 쿡 n̳ Nտ skip   ָ ˴ϴ. :4n 
̷  ǰ.

2.2 ̵
         Ϸ ϰ ϴ ġ   ̵Ͽ  
ϰ. vi ٸ ʹ 񱳵   ŭ   ̵  
ϴ. ̵ ٸ (, , ̱) ؼ  ϱ  Ȯ
 ˾Ƶνô  ϴ.   з  Ÿ ̵ Ÿ 
̵ з  ҽϴ. 

2.2.1 ª ̵
         ⺻ ̵ ɸ 󿡼 h, j, k,  lŰ ̿ ̵Դϴ. 
ʷ , , ,  ̵ Ÿϴ.  ٸ ɸ ɰ 
 ȸ  տ ־ ݺ  ֽϴ.  κ Ŀ Ű ϰ 
 հ  Ÿ   ô  ϴ. 
        ܾ ̵ w, b, e, EŰ մϴ. wŰ  ܾ ù ° ڷ 
̵ մϴ. b ݴ  ܾ ù ° ڷ  ̵ Ÿϴ. e, E 
ù ° ڷ ̵ ƴ ܾ  ڷ ̵Դϴ.   ȸ 
 ־  ܾ   ̵  ֽϴ. 
         ۿ  󿡼 ̵ ϴ ɵ   ֽϴ. 0Ű 
     ̵մϴ. ^ ̳ |    ó ̵մϴ. 0
Ű  ó   ڿ  쿡  ϰ  ó 
Ÿ ڷ ̵մϴ.  ^ ̳ | 0°   ̵ϰ ˴ϴ. Ư 
 ̵Ϸ <>|  10°  ̵Ϸ 10| Էϸ 10°  
 ϰ ˴ϴ.    ̵Ϸ $ȣ մϴ.
         ణ ̵Դϴ.    ̵ + Ǵ [enter],  ̵
 - Ű մϴ. 10[enter]  Է ʽÿ. ͸    Էϸ  
  ̵   10 ྿    ʽϱ? 10+   
ݴϴ.
+--------------------------------+--------------------------------------------+
|, , ,                   | h, j, k, l                                 |
| ù° ڷ          | + or [enter]                               |
| ù° ڷ          | -                                          |
|ܾ                    | e, E                                       |
| ܾ                     | w, W                                       |
| ܾ                     | b, B                                       |
|                      | $                                          |
| ó                   | 0  ('    A'   A Ŀ̵)      |
| ó                   | ^  ('    A'  쿡 Ǿ Ŀ̵) |
|,   ó      | ), (                                       |
|,   ó      | }, {                                       |
|,   ó      | ]], [[                                     |
+--------------------------------+--------------------------------------------+

2.2.2 Ÿ ̵
          Ÿ ̵  Ѿϴ.  20000   ȴٰ ս
. ó   Ǹ Ŀ 1࿡ ġմϴ.  10000  ߻
 ҽڵ带 Ѵٰ ġ,  ̵ϸ ?   ڿ  
     ٷδ 10000+  ϵ ؾ߰.  
̷ ص ǰ  Ư   ̵ϴ  ֽϴ. ٷ GԴ
. 10G Էϸ 10°  ̵ϰ Ǵ . ٸ δ ex
 :10 Էϰ ͸ Էϸ   ̵ϰ ˴ϴ.  ó ٷ 
̵ gg  1G  :1  ϰ  ٷ ̵ G   :$  մ
. ⼭ $ ڿ  ϰ ex忡   Ÿϴ. 
忡   ̵ Ǿ. 
+------------------------------------+----------------------------------------+
| ȭ  ũ               | ^F   (means CTRL-F)                    |
| ȭ ڷ ũ                 | ^B                                     |
| ȭ  ũ               | ^D                                     |
| ȭ ڷ ũ                 | ^U                                     |
|   ũ                 | ^E                                     |
|  ڷ ũ                   | ^Y                                     |
|ȭ  ٷ                    | H    nH    n     |
|ȭ ߰ ٷ                    | M                                      |
|ȭ  Ʒٷ                  | L    nL   ؿ n       |
+------------------------------------+----------------------------------------+

2.2.3 ã ̵
        ڼ  ã 3忡 ٸ ̰ ⼭  ̵ Ǵ ã 
ɿ ؼ ϵ ϰڽϴ.  ࿡   Ư ڸ ã 
 f Ű մϴ.  ࿡ Ŀġ ù ° Ÿ o ڱ 
ϰ ʹٸ fo Էϸ ˴ϴ. ݴ ̶ Fo Էϸ ǰ.  
 ݺ  ұ? ٸ  ó տ ݺȸ ص   ã 
Ŀ ٽ ã⸦   Ϸ ; Ű ݴ  Ϸ , Ű 
  ݺմϴ. 
                    Ÿ   ̵Ϸ 
/pattern  ݴ ̶ ?pattern Էϸ ˴ϴ.    
 ݺ Ϸ n, ݴ  NŰ մϴ.
+------------------------------------+----------------------------------------+
|ڿ ó  ˻       | /pattern                               |
|ڿ ó ڷ ˻         | ?pattern                               |
|˻ ٽ ݺ ( )        | n                                      |
|˻ ٽ ݺ (ݴ )        | N                                      |
| ٿ x ִ  ̵    | fx ()                            |
| ٿ x ִ  ̵    | Fx ( )                   |
|n ؿ x ִ  ̵     | tx                                     |
|n  x ִ  ̵     | Tx                                     |
|ٿ ã⸦   ݺ    | ;                                      |
|پּ ã⸦ ݴ  ݺ    | ,                                      |
| ̵ n° ٷ ̵             | nG (n Ǹ  ٷ)          |
|                                    | :n                                     |
| ̵                             | n| (n Ǹ ó )            |
| Ŀ ġ ܾ ã        | *  (  ã´.)               |
| Ŀ ġ ܾ ã        | #  (ڷ ã´.)                      |
+------------------------------------+----------------------------------------+

2.2.4 ũ ̿ ̵
        å д ϸũ ϴ ó  ϴٰ Ư  κ ũ  
 ϰ. vi  ĺ ŭ ũ  ϰ ũ ̳ 
 ٷ ٷ ̵  ֽϴ. 켱 ũ Ϸ ma ~ mz ũ   
մϴ. ũ  ̵   մϴ.  ũ ٰ  ġ
 ̵ `a ~ `z  ũ  ó ̵ 'a ~ 'z ̿մϴ. 
+------------------------------------+----------------------------------------+
|  ġ x ̸ ũ    | mx                                     |
| ũ ġ(, ) ̵         | `x                                     |
| ũ ٷ ̵                   | 'x                                     |
|  ũ ġ ̵          | ``                                     |
|  ũ ٷ ̵            | ''                                     |
+------------------------------------+----------------------------------------+

2.3  , , 
             ɼ ־   ֽϴ.   Ư ࿡ Ŀ
 ġϵ   ִµ,   ٿ ġϷ vi + [filename]    
, n° ࿡ ġŰ vi +n [filename]     ˴ϴ. Ư 
ڿ ִ ٿ Ŀ ġŰ vi +/pattern [filename]  ϴ. vi +R 
[filename]    б  ϴ. 
          캼.   ϸ鼭 ϴ    ó 
  ߾ϴ. :wq  ZZԴϴ. ٸ ̶ :x    
 Ǿ  ϰ Ḧ   ƴϸ ׳ Ḧ  մϴ. ZZ 
  .    ex忡 ϴ   ȣ ˾Ƶνø 
մϴ.  % ۼ ϸ Ÿϴ.      ߿ 
 ϰ ʹٸ :w %.bak ̷  Ͻø     ֽ
. ׸ # alternative  Ÿٰ ϴµ   ۼ  
Ÿϴ. vi file1   ϴٰ :e file2       
  file1  :e #  Ͻø ˴ϴ. 
+------------------------------------+----------------------------------------+
| file                           | vi [filename]                          |
|                        | vi [filename1] [filename2]             |
| б                   | view [filename] Ǵ vi -R [filename]  |
|   ࿡ ġ              | vi + [filename]                        |
|   n ° ࿡ ġ       | vi +n [filename]                       |
|  Ÿ   ġ       | vi +/pattern [filename]                |
|  ̸ ϰ       | ZZ  Ǵ :x                            |
| ϰ                       | :wq                                    |
|                          | w                                      |
| Ư                     | :<>w [filename]                    |
| Ư  ٸ Ͽ      | :<>w >> [filename]                 |
+------------------------------------+----------------------------------------+

2.4   
         ߿ κ case ٸ ⸸ ݴ ۿϴ 찡 
. Ff, Oo, Pp, Tt, Nn, Xx case    ݴ Դϴ. ٸ 
ڵ鵵 case  ణ ǹ̰  ޶   ֽϴ.   ؼ 
 ϸ    ֽϴ. 
            ؼ Ű Է  ô.   
 ϵ ϰڽϴ. Ʒ   ϰ ְ  Ŀ 4° 
 sutff s ġ ִٰ սô. õõ . stuff  ܾ ϳ 
 dw Էϸ ˴ϴ.  ܾ goes   dw   ݺ
 ǰ? 2dw, Ȥ d2w Էص ˴ϴ.  Ŀ ġ  2w   ܾ 
̵    . d  ̵   ̵   ±
... ׷ 츮  ̵    . d$  ̸ $  
̴ϱ stuff   ڱ.    D Էص    
Ÿϴ. 
        ̹ ã ̵  ô. dfl Էϸ ù ° l Ÿ 
 Ŀ ̵ϴϱ l ? d/bash Է ô. 6࿡ bash
  Ǿ? 
         ̹ markε ̵ ϴٰ  mark ̿ؼ ô. 
7 some s ma սô. ٽ stuff s ư d`a Է 
. ߴ ó Դٸ ٸ յ  ñ ٶϴ.  d
 y ־ָ ˴ϴ. ׷  Ǯ...
-------------------------------------------------------------------------------
1 : # /etc/bashrc
2 : 
3 : # System wide functions and aliases
4 : # Environment stuff goes in /etc/profile
5 : 
6 : # For some unknown reason bash refuses to inherit
7 : # PS1 in some circumstances that I can't figure out.
8 : # Putting PS1 here ensures that it gets loaded every time.
9 : PS1="[\u@\h \W]\\$ "
10: 
11: alias which="type -path"
-------------------------------------------------------------------------------
 2
 1)  Ŀ ġ unknown u ִٰ . 
             ġ ʴ´ٰ ...
(1) ġ   , 
(2) 4     Ʒ , 
(3)  ġ figure out out  , 
(4)  ٿ  ٱ , 
(5)  ġ  ó , 
(6)  ġ 25 , 

 2)  3°  4°  Ķ.

1.
(1)  : d$, D  
     : y$
(2) 4yyGp
(3)  : d/out 
     : y/out
(4)  : dG, 6dd
     : yG, 6yy
(5)  : d0, d|, d1|, 3db, d3b, d?#, dF#
     : y0, y|, y1|, 3yb, y3b, y?#, dF#
(6)  : d25|
     : y25|

2.   ġ  ǥ ãƼ غ... 


3. ã, ġȯ
        vi ã ɰ ġȯ    ϴ.   ڿ
 ã ٸ ڿ ü  ִ  մϴ.  ŭ ɿ ɵ  
ϱ⵵  մϴ. ã ġȯ ex 忡 ϴ.  켱  ǥ
 ˾Ƶνø ã ϴ   ãµ   ˴ϴ. 

3.1 ǥ
        ǥ vim  :help Էϸ   ǥ ȣ 
  Ǿֽϴ. ǥ  Ͻñ ٶϴ. ⼭ ſ 
ϰ ȣ      Ѿڽϴ. ڼ ϸ  ̰͸  
 Ͽ ϴϱ...
        Ʒ ǥ  ȣ  ִµ. 켱 ., ^, \+, *, [], \< 
\> ȣ ݵ Ƽž մϴ.  ⺻ ȣ̰    shell̳  
ٸ  Ͻ  ִ ͵̴ϱ ˾Ƶνø  ǽ  ̴ϴ.  
ȣ  ϸ . ϳ  ڸ Ÿϴ. .  ϸ  ȣ 
  ڰ ġ  ִ . ^ ȣ  Ȱ ۿ ǹ̰ ޶
  ȣ ȿ not ǹ̸ , ۿ  ɸ忡 ^ȣ 
뵵 ϰ  ó Ÿϴ. \+ 1ȸ ̻  Ÿٴ  ǹմ
. * ѵ ̰ 0 ̻  Ÿ  ְ ׷   ֽϴ. 
 [] Ÿ      ˴ϴ.  [abc] a Ǵ 
b Ǵ cԴϴ. [a-z] a z߿  ڸ Ÿ. 
        ׷  ȣ  ã ϴ ڿ    ô. The 
 the ȣ Ÿ [Tt]he  ˴ϴ. ? []    ڸ 
Ÿٰ ϱ. ׷   ó Ÿ The the ã  
ؾ ұ? ^[Tt]he ǰ. ̹ th ϴ ƹ  ڸ  ô. 
th ϴϱ  th տ ְ  ڿ ƹ ڳ  ȳ   
? th.* ̷ ˻ ϸ the, this, that  ˻  although 
˻ ˴ϴ. th ϴ ڸ ˻ Ϸ ܾ ۰  ־
߰. ׷ ʿ  \<  \>Դϴ.  ̿  ǥ  ־ ˻ 
ϸ the, this, that   th ϴ ڿ ˻ϰ  ˴ϴ. *ſ 
\+   ٸ? th   * شǰ \+ ش ʽ
ϴ. ̻   ǥĿ   ȣ̰    ˻ ġȯ 
  .

-------------------------------------------------------------------------------
                                           ĳ  ڸ Ÿ
-------------------------------------------------------------------------------
                         ƹ ڳ      .       \.
                             ó     ^       ^
                                ǹ    $       $
                                 ܾ     \<      \<
                                   ܾ     \>      \>
                ־        [a-z]   \[a-z]
                ־  ۿ      [^a-z]  \[^a-z]
                                       <Esc>    \e      \e
                                       <Tab>    \t      \t
                                        <CR>    \r      \r
                                        <BS>    \b      \b
                   0  Ȥ 1 ̻ Ÿ    *       \*
                       ̻ Ÿ    \+      \+
                                        Ǵ    \|      \|
-------------------------------------------------------------------------------

        POSIX character classes ͵ ִµ ̰͵ ǥ     
ֽϴ. ̷ ο ȣ     ͸ε    
  ª ϱ ؼ ̸   ̶ Ͻø ˴ϴ.  
 ڿ Ȯ ǥĿ  \p ǥ Ϸ  [0-9a-zA-Z \t][0-9a-zA-Z 
\t]*  ̷  ǥؾ߰(Ʋ  ֽϴ). ǥĿ ڽ ִ 
 𸣰 κ  Ͽ ϰ  ó Ȥ  ڰ  
𸣱  ̷   ٸ ȣ  ǥϴ . 

+------------------------------------+----------------------------------------+
| [:alnum:]                          | ĺ,                            |
| [:alpha:]                          | ĺ                                 |
| [:blank:]                          | 鹮 ǹ                    |
| [:cntrl:]                          | control                            |
| [:digit:]                          |                                    |
| [:graph:]                          | 鹮ڸ                       |
| [:lower:]                          | ҹ                                 |
| [:upper:]                          | 빮                                 |
| [:print:]                          | Ʈ               |
| [:punct:]                          |  ) ( , . " ' : ; _       |
| [:space:]                          | 鹮                               |
| [:xdigit:]                         | 16                             |
+------------------------------------+----------------------------------------+

3.2 ã
        ܼ ϸ ã Ŷ ɸ忡 /pattern Ǵ ?pattern  n, NŰ
 ̿ؼ ã  մϴ. ex忡   ã ؼ :/pattern/ 
 մϴ. ex忡  ã   ؼ ٸ exɵ  
 ϴ  ϴ. ex尡  Ѵٴ  ˰ ø 
մϴ. :/pattern/ Է ϸ  ִ  ̵ . ̰ 
     ñ ٶϴ. ^^;
        ó ã Ǹ :/pattern/ ã  ̵  ϰ ˴ϴ. ⿡ 
  ɰ ɼ ٿ   ã⸦   ֽϴ.  ͺ 
 . :=  Է ô.   Ŀ ġ  ȣ   ˴ϴ. 
:g/pattern/  ô.  Ÿ     ǥϸ鼭  
Ÿ  ̵ Դϴ.  ٽ :/pattern/= ̳ :g/pattern/=  Է 
. տ   ó  pattern Ÿ   ȣ  ǥø մϴ.   °   
pattern Ÿ  ȣ  ǥø մϴ. 

3.3 ġȯ
         vi 鼭 (TT) ޴  ٷ  ġȯ  Դϴ. 
Ϲ ġȯ  ٸ exɵ   :<>s/old/new/<ɼ>  
 մϴ. 

        ⼭ Ѱ   ϰ Ѿ ϴ  ֽϴ. hold buffer
 ε ˻ ϸ鼭 ˻ ڿ ϴ   Դϴ. 
 ˻ ڿ \( \) ѷθ ˴ϴ. ׷ տ   \1 ~ \9
 ۿ ã ڿ 簡 .  ȣ &  ִµ ̴ ãƳ 
ڿ Ÿϴ.  Ѱ ~ȣε ̰ ٷ    ˻̳ ġȯ 
ǥ Ÿϴ.
             . 켱  ϳ  ʿϱ...  
  ٽ ϵ .
-------------------------------------------------------------------------------
1 : # /etc/bashrc
2 : 
3 : # System wide functions and aliases
4 : # Environment stuff goes in /etc/profile
5 : 
6 : # For some unknown reason bash refuses to inherit
7 : # PS1 in some circumstances that I can't figure out.
8 : # Putting PS1 here ensures that it gets loaded every time.
9 : PS1="[\u@\h \W]\\$ "
10: 
11: alias which="type -path"
-------------------------------------------------------------------------------
        :%s/#/_&_/g ϸ #  _#_ٲ  Դϴ. ã ڿ 
 쿡 & ϸ ϰ? ̹    hold buffer 
 ô. :%s/\(goes\) \(in\)/\2 \1/g ̷ Էϸ   ٲ? goes 
in ãƼ  hold  1, 2    Ӵϴ. ڿ ġȯ   ̸
  ٲ Ƿ   in goes ϰ ˴ϴ. 
-------------------------------------------------------------------------------
# Environment stuff goes in /etc/profile              
# Environment stuff in goes /etc/profile             
-------------------------------------------------------------------------------

3.4   
             ͵ ֽϴ.  ó  ϵ
   / ()ȣ  ־  ãµ    / ȥ
  ֽϴ.   ڸ ǹ  \/  ġϸ  ̷ 
쿡  갥.    / ;ȣ   :  ؼ       ϴ. 
:%s:/etc/:/etc/local/:g ϸ /etc/ /etc/local/ ġȯ ϰ .

          ͵ ε    ã     ֽϴ. 
  .         ð Ǯ̸ 
ñ ٶϴ. Ʒ (1) (2)      ʾ غø  
ǹ̸  ƽ   մϴ. 

 3. 
 ġȯ ǹ̸ Ͻ.... ^^;
(1) :%s/.*/\U&/g
(2) :%s/.*/\L&/g
(3) :%s/\(.*\)  *$/\1/
(4) :%s/^ \+\(.*\)/\1/
(5) :%s/^ \+\|^\t\+\(.*\)/\1/
(6) :%s/^M//g                   (⼭ ^M CTRL-VĿ [ENTER]  )
  ǹ̸ ϼ.
(7) :n out.txt | g/pattern/, .w >> out.txt (out.txtȭ ؾ մϴ.)
    > :g/pattern/y A
(8) :g/pattern/d

4. The Power of ex
         ϱ⿡ vi  Ͱ   ־   ū   ex
  մϴ. ex vi   Ȯ ɰ  ܺ α׷ 
  ִ θ մϴ.   ⺻̰,  н ⺻̰  
ƿƼ   ֽϴ. 
-------------------------------------------------------------------------------
ex  
:<>exɾ [|  ...]
-------------------------------------------------------------------------------
 ϱ
        켱 ex    ȴٰ  ˾Ƶνñ ٶϴ.( ex 
Ͱ δ ) ̷ ϴ   ϴ.    
    ǰ?    ,  ؼ ۰  Ÿ
ϴ.  1, 10 ̸ 1~10࿡ ؼ  Ѵٴ Դϴ. ࿡ 
  ġ  ش˴ϴ.   ã      
 ߴ Ⱑ  ʴϱ?         
ã⸦  Ŀ  ٿ, Ȥ  ó  ־ְ  ãⰡ  ٱ ex
   ִٴ Ⱑ Ǵ ... ڼ   ڿ   
ãƺñ ٶϴ. 

 ɾ
+------------------------------------+----------------------------------------+
| :d                                 |                                    |
| :co, t                             |                                    |
| :m                                 | ̵                                   |
| :pu                                | ٿ ֱ                              |
| :y                                 | ۿ                             |
| :=                                 |  ȣ ǥ(  Ʋ)     |
| :p                                 |   ǥ                       |
+------------------------------------+----------------------------------------+

         鼭  ϰڽϴ. :1, $d ( ü ) $ȣ 
  Ÿϴ. ǥ    Ÿ ɸ忡
   Ÿ. $ȣ ˾Ƶνö  ϴ. :%d  ( ü 
) %ȣ  ü Ÿϴ.   İ    ξ ª
. :.,+10y (  ġ 10  Ʒ ۿ  ) ۿ 縸  մϴ. 
:.,+10y|$|pu ( ġ 10 Ʒ ۿ ,  ٷ ̵, ٿ
) | ȣ ϸ  ࿡    ex   ֽϴ.  :.m$ ( 
 ߶     ߰) :-, +y ( ٰ ,  Ʒ  ) +-
ȣ ϴ  ϰ ֽϴ.  ࿡ -   + Ʒ 
 ǹ. :.,'xd ( ٿ x ũ ٱ )  ũ  ̵ ߿
 'X  ̵ϸ   ̵ϴ     ߾. ex忡 
ٷ ũ ̿  ֽϴ. '' ȣ 翬  մϴ.  
ϱ ` ȿմϴ. :., /pattern/d ( ٿ pattern ó Ÿ ٱ
 ) ˻ ̿Ͽ  ϴ Դϴ.  ̷   
Ÿ ٱ ȴٴ  Ͻñ ٶϴ. :.y a (   named buffer 
a ) named buffer   մϴ.  ۸ Ͽ yanking
 Ͽϴ. ̸ ҷ  :pu a ( a    ̱) Ǵ "ap 
 ϸ ǰ... :.co$ (   ؼ    ̱) :/pattern/= 
( Ÿ  ȣ ǥ), :10;+20d (10° ٿ +20 ) ̴  
ġ 10  ̿   10ٿ +20  ٴ ǹԴϴ. :10,+20d 
ϸ  ޶? ̷ ϸ 10࿡  ࿡ 20   ٱ 
 ǹ̰ ˴ϴ.   ð      ex 
 غñ ٶϴ. ex [filename]Ͻø ˴ϴ. ̷ غø  ϰ
 exɾ Ȯ    մϴ. 

4.1 abbreviations
         ɵ   ſ  Դϴ.  ڿ   Է 
 . ٸ δ   ŸεǴ Ÿ Ÿ   ڵ  
 ϰ ϴ Դϴ.     .  :ab univ. university 
  ӽô. 忡  univ. Էϰ white character  Էϴ  
univ. university ٲ Դϴ.   the teh  Ÿ  ٸ :ab 
teh the  θ ǰ.

4.2 map, map!
         ɵ ſ մϴ. ũθ     ֵ ݴϴ. 
 ƯŰ Է¿ ؼ  ˰ Ѿô. ex [ctrl]-v   [enter] 
 ^M̶   ǥõ Դϴ.   ڰ   [enter] Ÿϴ.  ϰ 
[ctrl]-v  ƯŰ  شϴ ڰ ǥõ˴ϴ. map  
 Ű Է ɸ忡  ϰ map!    忡  
 ְ ˴ϴ. [esc]Ű ʹ ־    :map! ^H ^[   
 ٶϴ. [bs]Ű   Ǹ 忡 ɸ ٲ  ˴ϴ.  
 ʴ Ű ؼ   ְ. ó ۸  ɾ 忡 
ϰ 忡 Ѵٴ ǹ̰   Ű Է ״  ֹǷ 
δ  尣 Ӱ ѳ  ֽϴ.  :map  & I/*^[A*/^[ ̷  
 &Ű    C ּ  ϴ.   ɿ 
԰  带  ̳ ѳ. FunctionŰ ؼ ̷ ϴ 
 ѵ ʷ #1 ~ #9  functionŰ Ÿϴ.  :map #1 commands ̷ 
Դϴ. ƴϸ  ߴ ó [ctrl]-v   functionŰ  Է
 ޾Ƶ  ˴ϴ.  ƴϸ <F1>  ~  <F9>    ־ ǰ (   <>  
/etc/termcap  ǵǾ մϴ.) 

4.3 @-function
        Named buffer ̿ macroԴϴ.  ſ   . insert
忡 ũη  Ű  Է ״ ģ  Ŀ "add "ayy   named 
buffer a  մϴ.  ũθ ҷ   @  տ  ڿ ۸ 
ϴ.  @a ġ Ǹ Ʊ  aۿ ־  Ű Է ״ ݺ
Ǵ . @@  ۿ   ϰ ˴ϴ.  ̰ ex
  谡  ̱. ~ Ϸ ʵ Ͽ ϴ ... --;

4.4 shell command̿
        켱 ٸ Ϳó shell  :sh   Էϸ 
ϴ. ٽ Ϸ [ctrl]-d  ٽ vi ǵ  ˴ϴ.  vi
 shell  ʰ ex ٷ shell   ų  ֽϴ. ٷ 
! ȣ ̿մϴ. !gcc -c % ̷ ĵ ϰ. 

:r !ls  ô. ls ǰ    ġ ٿϴ. 
-------------------------------------------------------------------------------
total 18
drwxrwxr-x   2 nu11 nu11     1024 May 25 22:01 .
drwx------  11 nu11 nu11     2048 May 25 22:01 ..
-rw-------   1 nu11 nu11    12288 May 25 22:01 .vi-beginner.txt.swp
-rw-rw-r--   1 nu11 nu11       14 May 25 21:59 test
-rw-rw-r--   1 nu11 nu11     1583 May 25 22:01 vi-beginner.txt
-------------------------------------------------------------------------------

          ü   ϴ   sort   Ʈ 
α׷ ̿  ֽϴ. sort  ڼ  ٸ  å  Ͻñ 
ٶ,     ̵ ϰڽϴ.    ũ⿡ 
   ?

:2,$ !sort +4
-------------------------------------------------------------------------------
total 18
-rw-rw-r--   1 nu11 nu11       14 May 25 21:59 test
drwxrwxr-x   2 nu11 nu11     1024 May 25 22:01 .
-rw-rw-r--   1 nu11 nu11     1583 May 25 22:01 vi-beginner.txt
drwx------  11 nu11 nu11     2048 May 25 22:01 ..
-rw-------   1 nu11 nu11    12288 May 25 22:01 .vi-beginner.txt.swp
-------------------------------------------------------------------------------
    н  ɾ    ֽϴ.     
 ... ^^;
 
4.5 set, ڽſ ´ vi 
        ڽ ۾ȯ濡 ° vi ϴ Դϴ. 켱 set   ִ 
 set allϸ ַ ũ Ǹ鼭 ö󰩴ϴ. ϳ ϸ ݱ   
 ŭ̳    ׿. ^^; ð  ߿ ߰ϵ ...
        set nu ȭ  ȣ մϴ. set ruler  Ŀ ġ  
ϴܿ ǥõ˴ϴ. set aw , set ai ...  ͵  ϴ±. 
        Ѱ ϰ Ѿ.  ó    .  set aw 
  ߴٸ ̿   set noaw ̷   տ no ̸ ȴ
 ̴ϴ. --; 

4.6 
(1)  Ŀ ġ  ּ  @-function .

        
6. vim ߰ ɵ
6.1 multi-window
        vim Ƽ   մϴ.   â  ؼ ϳ vi
    鼭   ֵ  ִ Դϴ.  :sp  â 
ϰų [ctrl]-wn  â    ֽϴ. â  ̵ command 
 [ctrl]-ww [ctrl]-wk, [ctrl]-wj    ֽϴ.  غô  
ذ 츮  ׿.  â     â   ݾƵ ǰ 
[ctrl]-wc    ֽϴ.  ///δ â     ʽ
. ̳  Ϳ â ϸ   ִ   پϱ. ^^; 
 :resize  ̳ [ctrl]-w+ [ctrl]-w- [ctrl]-w=  â ũ
  մϴ. ̷  մϴ. 

6.2 Ȯ ǥ 
        Ʒ  vim Ű Ե ǥĿ  Ǵ ȣԴϴ. 
͵  ʿ ǽɽ.   ߵ   Ǵ Խ
 ȣȭ   Դϴ. 
-------------------------------------------------------------------------------
        Character classes {not in Vi}:
        \i      \i      isident=@,48-57,_,192-255  شϴ ڵԴϴ. 
                        set isident  Ȯ    ֽϴ. 
        \I      \I      "\i"  ڴ 
        \k      \k      keyword ϴ , set iskeyword 
        \K      \K      "\k"  
        \f      \f      ̸ ϴ , set isfname
        \F      \F      "\f"   
        \p      \p      Ʈ  , set isprint
        \P      \P      "\p" ,  
        \s      \s      whitespace character: <Space> and <Tab>
        \S      \S      non-whitespace character; opposite of \s
        \d      \d      digit:                          [0-9]
        \D      \D      non-digit:                      [^0-9]        
        \x      \x      hex digit:                      [0-9A-Fa-f]   
        \X      \X      non-hex digit:                  [^0-9A-Fa-f]  
        \o      \o      octal digit:                    [0-7]         
        \O      \O      non-octal digit:                [^0-7]        
        \w      \w      word character:                 [0-9A-Za-z_]  
        \W      \W      non-word character:             [^0-9A-Za-z_] 
        \h      \h      head of word character:         [A-Za-z_]     
        \H      \H      non-head of word character:     [^A-Za-z_]    
        \a      \a      alphabetic character:           [A-Za-z]      
        \A      \A      non-alphabetic character:       [^A-Za-z]     
        \l      \l      lowercase character:            [a-z]         
        \L      \L      non-lowercase character:        [^a-z]        
        \u      \u      uppercase character:            [A-Z]         
        \U      \U      non-uppercase character         [^A-Z]        
        \e      \e      <Esc>
        \t      \t      <Tab>
        \r      \r      <CR>
        \b      \b      <BS>
        \n      \n      matches <NL> Not available yet!  Will be used
                        for multi-line patterns
        ~       \~      matches the last given substitute string
-------------------------------------------------------------------------------


6.3 visual mode
        vim [ctrl]-v   ä ̵ ϸ       
 ֽϴ. ó  [ctrl]-v  block  ϴ. ̶ v Է
ϸ    , V  δ  ϴ. 

õ      ִ ɵ
-------------------------------------------------------------------------------
        ~       빮 <-> ҹ ȯ
        d       
        c       ġȯ
        y       ۿ 
        >       set shiftwidth   ŭ  ̵
        <       set shiftwidth   ŭ · ̵
        :         ؼ ex  
        J        ģ. 
        U       빮ڷ .
        u       ҹڷ . 
        ^]      tag ã´.                                   
-------------------------------------------------------------------------------

6.4 tag stack 
        tag   ڸ tags Ͽ ϴ  ̵  ǥ
ϴ. (  ̰͵ ũԴϴ.--;) α׷ ۼϴٺ Լ 
 ˰  찡 . ̷   Լ   ̵ ߴٰ ٽ ϴ 
 ̵   ֵ  ݴϴ.   α׷ ִٰ սô. 
main.c
-------------------------------------------------------------------------------
#include"my.h"

void main(){
        hello();
        bye();
}
-------------------------------------------------------------------------------

my.h
-------------------------------------------------------------------------------
#include<stdio.h>
void hello(){
        puts("Hello, vi user");
};

void bye(){
        puts("Good bye");
};
-------------------------------------------------------------------------------
          ctags tags  ϴ.   ϸ ǰ.
:!ctags *.[ch] Ȥ ٸ 󿡼 [nu11@foo vi_test]$ ctags *.[ch]
 tag stack  Ȱ ô. vi main.c main.c ô. hello()
 ̵ մϴ.   ˾Ƽ Ͻñ...  ġ [ctrl]] Ű 
ϴ. (^]Դϴ. ƮŰ  ¿ ]) ȭ  ٲ鼭 void hello(){ 
  տ hello ġϰ . Լ  ȮϿ  ٽ [ctrl]t 
ϴ. ٽ  ġ ͸ մϴ. ٽ bye() ִ ٿ [ctrl]] 
 ٽ my.h 鼭 void bye()ٿ Ŀ ġմϴ. ٽ ʹ [ctrl]t.

        vim HELP tagsȭ մϴ. :help help  ٺ || 
ѷ ͵ ִµ   ^]  HYPER TEXTó  Ϸ ̵ 
ϴ. ٽ ^t  ͱ.


6.5 α׷  ɵ
        vim tag stack̿ܿ  α׷ֿ    մϴ. ٷ 
 Ŀ    ٷ ̵   ֵ   ִ Դϴ. 켱 
Ͻÿ  error  ؾ մϴ. ࿡ Makefile  
ٸ :make     ڵ errorfile   ߻ 
 ̵ մϴ. :cl Էϸ   Ʈ  :cn  Էϸ  
   ڵ ̵ մϴ. :cN  ݴ     
 մϴ.  Ϸ ̷ ҽ 쿡  鼭 ϴ. 
main.c
-------------------------------------------------------------------------------
#include"my.h"
void added(){
        This makes error
};

void main(){
        hello();
        bye();
        added();
}
-------------------------------------------------------------------------------
my.h
-------------------------------------------------------------------------------
#include<stdio.h>
void hello(){
        this also makes error
        puts("Hello, vi user");
};

void bye(){
        puts("Good bye");
};
-------------------------------------------------------------------------------
Makefile
-------------------------------------------------------------------------------
all : main.c my.h
        gcc -o test main.c my.h
clean : test
        rm -f test
-------------------------------------------------------------------------------
̷   vi  main.c :make  ô.      µ Ŀ 
my.h "this also makes error" ο Ŀ ġϰ vi  Ʒٿ "(4 of 
12):  `this' undeclared (first use this function)"    ϴ. :cn 
 ô. "(5 of 12):  (Each undeclared identifier is reported only once" 
 ٲ.   :cn ϴٺ ٽ main.c "This makes error" ο 
Ŀ ġ.   غø  ϸ մϴ.
        Makefile   ʰ   ִ  °? и ְ. 
   ޽  ִ ϸ    ϴϱ. غ 
. :!gcc -c main.c >& err.out ̷ ϸ error ޽ err.out  ǰ
.      ִ Դϴ. :cf err.out   :makeߴ 
Ͱ  :cn ϸ鼭    ֽϴ.

6.6 

7. Ÿ 

Ű ϱ - xmodmap ̶ ɾ ̿ؼ  106Ű忡  ʴ 
windowsŰ [esc]Ű  ϴ Դϴ. 
        xmodmap -e "keycode 115=Escape"

bash vi ϱ- bash ϰ ôٸ command line Ⱑ vi 
 emacs õǾ ֽϴ.  ϳ ġ [ctrl]-a  Ŀ 
  ó ̵ ? ׷ emacs ½ϴ. set -o vi   vi
 ٲֽñ ٶϴ. ^^;    command line󿡼 Ű  ̵ ݱ 
Դ Ű Է° ϴ. 
[nu11@foo nu11]$ cd /usr/X11R6/lib/X11/ko/app-defaults/_  ¶ ս
. ̰ [nu11@foo nu11]$ du /usr/X11R6/lib/X11/ko/app-defaults/   
ٷ [esc]0cwdu ʷ  ǰ.
         ߴ    ãƺ? [esc]  /cut   
.  ߴ cut ɾ  ٿ Ÿ׿. 
[nu11@foo nu11]$ ls -l *.EXE |grep "^-" |cut -c33-41 
        ̰ ƴ϶? nŰ  ˻  ϰ? 
[nu11@foo nu11]$ ls -l *.EXE |grep "^-" |cut -c35- 
         ±. Ư   ִ  ã   ׷ command  
mode ߴ    ˻  ֽϴ.   .bash_history  
˻ϴ ̰. [esc]/doc  ϴϱ  cd doc    Ÿ±. 
̵ ɵ鵵  մϴ.  ˻  n, N̰.  [esc]11G  
 .bash_history Ͽ  ִ 11° ׸ ̵ Ǵ    
ϴ. 

tcsh & csh vi ϱ - Ʈ 󿡼   Էϸ ˴ϴ.
        bindkey -v
ٽ emacs Ͻ÷ 
        bindkey -e
