1===============================================================================
2=    빔 길잡이 (VIM Tutor) 에 오신 것을 환영합니다    -      Version 1.5      =
3===============================================================================
4
5     빔(Vim)은 이 길잡이에서 다 설명할 수 없을 만큼 많은 명령을 가진
6     매우 강력한 편집기입니다. 이 길잡이는 빔을 쉽게 전천후 편집기로 사용할
7     수 있도록 충분한 명령에 대해 설명하고 있습니다.
8
9     이 길잡이를 떼는 데에는 실습하는 데에 얼마나 시간을 쓰는 가에 따라서
10     25-30 분 정도가 걸립니다.
11
12     이 연습에 포함된 명령은 내용을 고칩니다. 이 파일의 복사본을 만들어서
13     연습하세요. (vimtutor 를 통해 시작했다면, 이미 복사본을 사용하는
14     중입니다.)
15
16     중요한 것은, 이 길잡이가 직접 써보면서 배우도록 고려되어 있다는 것입니다.
17     명령을 제대로 익히려면, 직접 실행해보는 것이 필요합니다. 내용을 읽는
18     것만으로는, 명령을 잊어버리게 될 것입니다.
19
20     자 이제, Caps Lock(Shift-Lock) 키가 눌려있지 않은지 확인해보시고, j 키를
21     충분히 눌러서 Lesson 1.1이 화면에 가득 차도록 움직여봅시다.
22~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
23                        Lesson 1.1:  커서 움직이기
24
25   ** 커서를 움직이려면, 표시된 대로 h,j,k,l 키를 누르십시오. **
26             ^
27             k              힌트:  h 키는 왼쪽에 있으며, 왼쪽으로 움직입니다.
28       < h       l >               l 키는 오른쪽에 있으며, 오른쪽으로
29             j                     움직입니다.
30             v                     j 키는 아래방향 화살표처럼 생겼습니다.
31
32  1. 익숙해질 때까지 커서를 스크린 상에서 움직여 보십시오.
33
34  2. 아래 방향키 (j)를 반복입력이 될 때까지 누르고 계십시오.
35---> 이제 다음 lesson으로 가는 방법을 알게 되었습니다.
36
37  3. 아래 방향키를 이용하여, Lesson 1.2 로 가십시오.
38
39참고: 원하지 않는 무언가가 입력이 되었다면, <ESC>를 눌러서, 명령 모드로
40      돌아가십시오. 그 후에 원하는 명령을 다시 입력하십시오.
41
42참고: 커서키 또한 작동할 것입니다. 하지만 hjkl에 익숙해지면, 커서키보다
43      훨씬 빠르게 이동할 수 있을 것입니다.
44
45~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
46                     Lesson 1.2: 빔을 시작하고 끝내기
47
48
49  !! 주의: 아래 있는 단계를 실행하기 전에, 이 lesson 전체를 읽으십시오!!
50
51  1. <ESC> 키를 눌러서 확실하게 명령 모드로 빠져 나옵니다.
52
53  2. 다음과 같이 입력합니다:    :q! <ENTER>
54
55---> 이렇게 하면, 바뀐 내용을 *저장하지 않고* 편집기를 빠져나갑니다.
56     저장한 후 빠져나가려면 다음과 같이 입력합니다:
57                                :wq <ENTER>
58
59  3. 쉘 프롬프트가 보인다면, 다시 길잡이로 돌아오기 위해 다음과 같이
60     입력합니다.
61                                vimtutor <ENTER>
62     또는 다음과 같을 수도 있습니다.
63                                vim tutor.ko <ENTER>
64
65---> 'vim' 은 빔 편집기로 들어가는 것을 뜻하며, 'tutor.ko'는 편집하려는
66     파일을 뜻합니다.
67
68  4. 위에서 이야기한 단계를 기억하였으며, 확신이 서면, 1에서 3까지를
69     수행하여 편집기를 나갔다가 다시 들어와보십시오.  그 후 커서를 아래로
70     움직여 Lesson 1.3 으로 가십시오.
71~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
72                     Lesson 1.3: 텍스트 편집 - 지우기
73
74
75** 명령 모드에서   x  를 누르면 커서가 위치한 곳의 글자를 지울 수 있습니다. **
76
77  1. ----> 로 표시된 곳으로 커서를 옮겨보십시오.
78
79  2. 오타를 수정하기 위해, 커서를 지울 글자 위로 움직여 보십시오.
80
81  3. x  키를 눌러서 지워야할 글자를 지우십시오.
82
83  4. 2에서 4까지를 반복하여 문장이 올바르게 되도록 하여 보십시오.
84
85---> The ccow jumpedd ovverr thhe mooon.
86
87  5. 문장이 정확해졌다면, Lesson 1.4로 가십시오.
88
89주의: 이 길잡이를 보면서 외우려고 하지말고, 직접 사용해보면서 익히길
90      바랍니다.
91
92
93
94~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
95                 Lesson 1.4: 텍스트 편집 - 삽입 (INSERTION)
96
97  
98       ** 명령 모드에서   i  를 누르면 텍스트를 입력할 수 있습니다. **
99
100  1. 커서를 첫번째 ---> 로 표시된 줄로 움직입니다.
101
102  2. 첫번째 줄을 두번째 줄과 똑같이 만들것입니다. 텍스트가 들어가야할
103     곳 다음부터 첫번째 글자 위에 커서를 옮겨 놓습니다.
104
105  3. i  키를 누른 후, 필요한 내용을 입력합니다.
106
107  4. 수정한 후에는 <ESC> 를 눌러서 명령 모드로 돌아갑니다.
108     문장을 올바르게 만들기 위해 2에서 4의 과정을 반복합니다.
109
110---> There is text misng this .
111---> There is some text missing from this line.
112
113  5. 텍스트를 삽입하는 데에 익숙해졌다면, 요약을 봐주십시오.
114
115
116
117~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
118                             LESSON 1 요약
119
120
121  1. 커서를 움직일 때에는 화살표 키나 hjkl 키를 이용합니다.
122         h (왼쪽)       j (아래)       k (위)       l (오른쪽)
123
124  2. 쉘 프롬프트에서 빔을 시작하려면 vim FILENAME <ENTER>
125
126  3. 수정한 내용을 무시한 채로 빔에서 빠져나가려면   <ESC>   :q!   <ENTER>
127                     저장한 후 빔에서 빠져나가려면   <ESC>   :wq   <ENTER>
128
129  4. 명령 모드에서 커서가 위치한 곳의 글자를 지우려면   x  를 입력합니다.
130
131  5. 명령 모드에서 커서가 위치한 곳에 텍스트를 삽입하려면
132         i   를 누른 후 텍스트를 입력하고  <ESC> 를 누릅니다.
133
134참고: <ESC>는 명령 모드로 돌아가는 데 쓰며, 원치 않는 명령이나 완전히 입력되지
135      않은 명령을 취소하는 데에도 씁니다.
136
137그럼 Lesson 2를 시작합시다.
138
139
140~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
141                      Lesson 2.1: 삭제(DELETION) 명령
142
143
144            ** 한 단어를 끝까지 지우려면  dw  라고 치면 됩니다. **
145
146  1. <ESC> 키를 눌러서 확실하게 명령 모드로 빠져 나옵니다.
147
148  2. 아래에 ---> 로 표시된 줄 까지 커서를 옮깁니다.
149
150  3. 지워야할 단어의 처음으로 커서를 옮깁니다.
151
152  4. dw  라고 쳐서 그 단어를 지웁니다.
153
154  주의: 위에서 말한대로 하면 화면의 마지막 줄에 dw 라는 글자가 표시됩니다.
155        잘못 쳤다면,  <ESC> 를 눌러서 다시 시작하십시오.
156
157---> There are a some words fun that don't belong paper in this sentence.
158
159  5. 3, 4번 과정을 다시 하여 문장을 정확하게 만든 뒤 Lesson 2.2로 가십시오.
160
161
162~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
163                        Lesson 2.2: 다른 삭제 명령
164
165              **  d$ 라고 치면 그 줄 끝까지 지워집니다. **
166
167  1. <ESC> 키를 눌러서 확실하게 명령 모드로 빠져 나옵니다.
168
169  2. 아래에 ---> 로 표시된 줄 까지 커서를 옮깁니다.
170
171  3. 올바른 줄의 끝으로 커서를 옮깁니다. (첫번째로 나오는 . 다음입니다.)
172
173  4. d$  라고 쳐서 줄 끝까지 지웁니다.
174
175---> Somebody typed the end of this line twice. end of this line twice.
176
177
178  5. 어떤 일이 일어났는지 이해하기 위해 Lesson 2.3 으로 가십시오.
179
180
181
182
183~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
184                    Lesson 2.3: 명령과 적용 대상에 대해
185
186
187  삭제 명령 d의 형식은 다음과 같습니다.
188
189         [횟수]   d   대상      또는      d   [횟수]   대상
190  여기서
191    횟수 - 명령을 몇 번 수행할 지 (옵션, 기본값=1).
192    d    - 지우는 명령
193    대상 - 아래에 제시된 대상에 대해 명령을 수행
194
195  적용 가능한 대상의 종류:
196    w - 커서에서 그 단어의 끝까지 (공백 포함.)
197    e - 커서에서 그 단어의 끝까지 (공백을 포함하지 않음.)
198    $ - 커서에서 그 줄의 끝까지
199
200참고:  호기심이 있다면, 명령 모드에서 명령 없이 대상을 입력해보십시오.
201       위에서 이야기한 대상의 목록에 따라 커서가 움직이게 됩니다.
202
203
204
205~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
206                   Lesson 2.4: '명령-대상' 에 대한 예외
207
208
209               **  dd  라고 치면 줄 전체를 지웁니다. **
210
211  줄 전체를 지우는 일이 잦기 때문에, Vi를 디자인 한 사람들은, 간단히 d를
212  두번 연달아 치면 한 줄을 지울 수 있도록 하였습니다.
213
214  1. 커서를 아래 나온 단락의 두번째 줄로 가져가십시오.
215  2. dd 를 입력하여 그 줄을 지우십시오.
216  3. 그런 다음 네번째 줄로 가십시오.
217  4. 2dd 라고 입력하여 두줄을 지웁니다. ( 횟수-명령-대상을 기억하세요. )
218
219      1)  Roses are red,
220      2)  Mud is fun,
221      3)  Violets are blue,
222      4)  I have a car,
223      5)  Clocks tell time,
224      6)  Sugar is sweet
225      7)  And so are you.
226
227
228~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
229                         Lesson 2.5: 취소(UNDO) 명령
230
231
232   **  u  를 누르면 마지막 명령이 취소되며,  U 는 줄 전체를 수정합니다. **
233
234  1. 커서를 ---> 로 표시된 줄로 이동한 후 첫번째 잘못된 부분 위로 옮깁니다.
235  2.  x  를 입력하여 첫번째 잘못된 글자를 지웁니다.
236  3. 그럼 이제  u 를 입력하여 마지막으로 수행된 명령을 취소합니다.
237  4. 이번에는  x  명령을 이용하여 그 줄의 모든 에러를 수정해봅시다.
238  5. 대문자  U  를 눌러서 그 줄을 원래 상태로 돌려놓아 보십시오.
239  6. 이번에는  u 를 몇 번 눌러서  U 와 이전 명령을 취소해봅시다.
240  7. CTRL-R (CTRL 키를 누른 상태에서 R을 누르는 것) 을 몇 번 눌러서
241     명령을 다시 실행해봅시다. (취소한 것을 취소함.)
242
243---> Fiix the errors oon thhis line and reeplace them witth undo.
244
245  8. 이 명령은 매우 유용합니다.  그럼 Lesson 2 요약으로 넘어가도록 합시다.
246
247
248
249
250~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
251                               LESSON 2 요약
252
253
254  1. 커서가 위치한 곳부터 단어의 끝까지 지우려면:    dw
255
256  2. 커서가 위치한 곳부터 줄 끝까지 지우려면:    d$
257
258  3. 줄 전체를 지우려면:    dd
259
260  4. 명령 모드에서 내리는 명령의 형식은 다음과 같습니다:
261
262       [횟수]   명령   대상    또는    명령   [횟수]   대상
263     여기서:
264       횟수 - 그 명령을 몇 번 반복할 것인가
265       명령 - 어떤 명령을 내릴 것인가 ( 예를 들어, 삭제인 경우는 d )
266       대상 - 명령이 동작할 대상, 예를 들어 w (단어), $ (줄의 끝) 등.
267
268  5. 이전 행동을 취소하려면:                 u   (소문자 u)
269     한 줄에서 수정한 것을 모두 취소하려면:  U   (대문자 U)
270     취소한 것을 다시 실행하려면:            CTRL-R
271
272~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
273                        Lesson 3.1: 붙이기(PUT) 명령
274
275
276      **  p 를 입력하여 마지막으로 지운 내용을 커서 뒤에 붙입니다. **
277
278  1. 아래에 있는 문단의 첫 줄로 커서를 움직이십시오.
279
280  2.  dd  를 입력하여 그 줄을 지워서 빔의 버퍼에 저장합니다.
281
282  3. 아까 지운 줄이 가야할 위치의 *윗줄로* 커서를 옮깁니다.
283
284  4. 명령 모드에서,  p  를 입력하여 그 줄을 제대로 된 자리로 옮깁니다.
285
286  5. 2에서 4를 반복하여 모든 줄의 순서를 바로 잡으십시오.
287
288     d) Can you learn too?
289     b) Violets are blue,
290     c) Intelligence is learned,
291     a) Roses are red,
292
293
294
295~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
296                        Lesson 3.2: 치환(REPLACE) 명령
297
298
299  ** 커서 아래의 글자 하나를 바꾸려면, r 을 누른 후 바꿀 글자를 입력합니다. **
300
301  1. 커서를 ---> 로 표시된 첫 줄로 옮깁니다.
302
303  2. 커서를 잘못된 첫 부분으로 옮깁니다.
304
305  3.  r  을 누른 후, 잘못된 부분을 고쳐 쓸 글자를 입력합니다.
306
307  4. 2에서 3의 과정을 반복하여, 첫 줄의 오류를 수정하십시오.
308
309--->  Whan this lime was tuoed in, someone presswd some wrojg keys!
310--->  When this line was typed in, someone pressed some wrong keys!
311
312  5. Lesson 3.2 로 이동합시다.
313
314주의: 외우지 말고, 직접 해보면서 익혀야 한다는 것을 잊지 마십시오.
315
316
317
318~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
319                        Lesson 3.3: 변환(CHANGE) 명령
320
321
322           ** 한 단어의 일부나 전체를 바꾸려면,  cw  를 치십시오. **
323
324  1. 커서를 ---> 로 표시된 첫줄로 옮깁니다.
325
326  2. 커서를 lubw 에서 u 위에 올려놓습니다.
327
328  3. cw 라고 명령한 후 단어를 정확하게 수정합니다. (이 경우,  'ine' 를 칩니다.)
329
330  4. <ESC> 를 누른 후 다음 에러로 갑니다 (수정되어야할 첫 글자로 갑니다.)
331
332  5. 3에서 4의 과정을 반복하여 첫번째 문장을 두번째 문장과 같도록 만듭니다.
333
334---> This lubw has a few wptfd that mrrf changing usf the change command.
335---> This line has a few words that need changing using the change command.
336
337cw 는 단어를 치환하는 것 뿐만 아니라, 내용을 삽입할 수 있도록 한다는 것에
338주의합시다.
339
340
341
342~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
343                       Lesson 3.4: c 를 이용한 다른 변환 명령
344
345
346     ** 변환 명령은 삭제할 때 이용한 대상에 대해 적용할 수 있습니다. **
347
348  1. 변환 명령은 삭제와 동일한 방식으로 동작합니다. 형식은 다음과 같습니다:
349
350       [횟수]   c   대상      또는       c   [횟수]   대상
351
352  2. 적용 가능한 대상 역시 같습니다.  w (단어),  $ (줄의 끝) 등이 있습니다.
353
354  3. ---> 로 표시된 첫줄로 이동합니다.
355
356  4. 첫 에러 위로 커서를 옮깁니다.
357
358  5. c$ 를 입력하여, 그 줄의 나머지가 두번째 줄처럼 되도록 수정한 후 <ESC> 를
359     누르십시오.
360
361---> The end of this line needs some help to make it like the second.
362---> The end of this line needs to be corrected using the  c$  command.
363
364
365
366~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
367                               LESSON 3 요약
368
369
370  1. 이미 지운 내용을 되돌리려면,  p  를 누르십시오. 이 명령은 커서 *다음에*
371     지워진 내용을 붙입니다(PUT). (한 줄을 지운 경우에는 커서 다음 줄에
372     지워진 내용이 붙습니다.)
373
374  2. 커서 아래의 글자를 치환하려면(REPLACE),  r  을 누른 후 원래 글자 대신
375     바꾸어 넣을 글자를 입력합니다.
376
377  3. 변환 명령(CHANGE)은 커서에서 부터 지정한 대상의 끝까지 바꿀 수 있는
378     명령입니다. 예를 들어, 커서 위치에서 단어의 끝까지 바꾸려면,  cw  를
379     입력하면 되며,  c$  는 줄 끝까지 바꾸는 데 쓰입니다.
380
381  4. 변환 명령의 형식은 다음과 같습니다:
382
383         [횟수]   c   대상       또는       c   [횟수]   대상
384
385계속해서 다음 Lesson 을 진행합시다.
386
387
388
389~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
390                     Lesson 4.1: 위치와 파일의 상태
391
392
393  **  CTRL-g 를 누르면 파일 내에서의 현재 위치와 파일의 상태를 볼 수 있습니다.
394      SHIFT-G 를 누르면 파일 내의 줄로 이동합니다. **
395
396  주의: 아래의 단계를 따라하기 전에, 이 Lesson 전체를 먼저 읽으십시오.
397
398  1. CTRL 키를 누른 상태에서 g 를 누릅니다. 파일 이름과 현재 위치한 줄이
399     표시된 상태줄이 화면 아래에 표시될 것입니다. 3번째 단계를 위해 그
400     줄 번호를 기억하고 계십시오.
401
402  2. SHIFT-G 를 누르면 파일의 마지막으로 이동합니다.
403
404  3. 아까 기억했던 줄 번호를 입력한 후 SHIFT-G 를 누르십시오. 이렇게 하면
405     처음에 CTRL-g 를 눌렀던 장소로 되돌아가게 될 것입니다.
406     (번호를 입력할 때, 이것은 화면에 표시되지 않습니다.)
407
408  4. 자신이 생겼다면, 1에서 3까지를 실행해보십시오.
409
410
411
412~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
413                        Lesson 4.2: 찾기 명령
414
415
416              **  /  를 누른 후 검색할 문구를 입력하십시오. **
417
418  1. 명령 모드에서  /  를 입력하십시오.  : 명령에서와 마찬가지로,  화면 아래에
419     / 와 커서가 표시될 것입니다.
420
421  2. 'errroor' 라고 친 후 <ENTER> 를 치십시오. 이 단어를 찾으려고 합니다.
422
423  3. 같은 문구를 다시 찾으려면, 간단히  n  을 입력하십시오.
424     같은 문구를 반대 방향으로 찾으려면,  Shift-N 을 입력하십시오.
425
426  4. 문구를 역방향으로 찾으려면,  /  대신  ? 를 이용하면 됩니다.
427
428---> "errroor" is not the way to spell error;  errroor is an error.
429
430참고: 찾는 중에 파일의 끝에 다다르게 되면, 파일의 처음부터 다시 찾게 됩니다.
431
432
433~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
434                   Lesson 4.3: 괄호의 짝 찾기
435
436
437              ** %  를 눌러서  ), ], } 의 짝을 찾습니다. **
438
439  1. 커서를 ---> 로 표시된 줄의 (, [, { 중 하나에 가져다 놓습니다.
440
441  2.  % 를 입력해 봅시다.
442
443  3. 커서가 짝이 맞는 괄호로 이동할 것입니다.
444
445  4.  % 를 입력하여, 이전 괄호로 되돌아 옵시다.
446
447---> This ( is a test line with ('s, ['s ] and {'s } in it. ))
448
449참고: 짝이 맞지 않는 괄호가 있는 프로그램을 디버깅할 때에 매우 유용합니다!
450
451
452
453
454
455
456~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
457                      Lesson 4.4: 에러를 수정하는 방법
458
459
460     **  :s/old/new/g  하면 'old' 를  'new' 로 치환(SUBTITUTE)합니다. **
461
462  1. 커서를 ---> 로 표시된 줄에 가져다 놓습니다.
463
464  2.  :s/thee/the 를 입력한 후 <ENTER> 를 칩니다.  이 명령은 그 줄에서
465     처음으로 발견된 것만 바꾼다는 것에 주의하십시오.
466
467  3. 이번에는  :s/thee/the/g  를 입력합니다. 이는 그 줄 전체(globally)를
468     치환한다는 것을 의미합니다.
469
470---> thee best time to see thee flowers is in thee spring.
471
472  4. 두 줄 사이의 모든 문자열에 대해 치환하려면 다음과 같이 합니다,
473      :#,#s/old/new/g    #,# 는 두 줄의 줄번호를 뜻합니다.
474      :%s/old/new/g      파일 전체에서 발견된 모든 것을 치환하는 경우입니다.
475
476
477
478
479~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
480                               LESSON 4 요약
481
482
483  1. CTRL-g  는 파일의 상태와 파일 내에서의 현재 위치를 표시합니다.
484     SHIFT-G  는 파일의 끝으로 이동합니다. 줄번호를 입력한 후 SHIFT-G를
485     입력하면, 그 줄로 이동합니다.
486
487  2.  / 를 입력한 후 문구를 입력하면 그 문구를 아랫방향으로 찾습니다.
488      ? 를 입력한 후 문구를 입력하면 윗방향으로 찾습니다.
489     검색 후, n 을 입력하면 같은 방향으로 다음 문구를 찾으며,
490     Shift-N 을 입력하면 반대 방향으로 찾습니다.
491
492  3. 커서가 (,),[,],{,} 위에 있을 때에  % 를 입력하면 상응하는 짝을
493     찾아갑니다.
494
495  4. 어떤 줄에 처음 등장하는 old를 new로 바꾸려면          :s/old/new
496     한 줄에 등장하는 모든 old를 new로 바꾸려면            :s/old/new/g
497     두 줄 #,# 사이에서 치환을 하려면                      :#,#s/old/new/g
498     파일 내의 모든 문구를 치환하려면                      :%s/old/new/g
499     바꿀 때마다 확인을 거치려면 'c'를 붙여서              :%s/old/new/gc
500
501
502~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
503                   Lesson 5.1: 외부 명령 실행하는 방법
504
505
506         **   :!  을 입력한 후 실행하려는 명령을 입력하십시오. **
507
508  1. 친숙한 명령인  :  를 입력하면 커서가 화면 아래로 이동합니다. 명령을
509     입력할 수 있게 됩니다.
510
511  2. 이제  ! (느낌표) 를 입력하십시오. 이렇게 하면 외부 쉘 명령을 실행할
512     수 있습니다.
513
514  3. 시험삼아 ! 다음에  ls  를 입력한 후 <ENTER> 를 쳐보십시오. 쉘 프롬프트
515     에서처럼 디렉토리의 목록이 출력될 것입니다.  ls  가 동작하지 않는다면
516     :!dir 을 시도해 보십시오.
517
518참고:  어떤 외부 명령도 이 방법으로 실행할 수 있습니다.
519
520참고:  모든  :  명령은 <ENTER> 를 쳐야 마무리 됩니다.
521
522
523
524~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
525                    Lesson 5.2: 보다 자세한 파일 저장
526
527
528     ** 수정된 내용을 파일로 저장하려면,  :w  FILENAME  하십시오. **
529
530  1.  :!dir 또는  :!ls  를 입력하여 디렉토리의 리스트를 얻어옵니다.
531     위의 명령 후 <ENTER>를 쳐야한다는 것은 이미 알고 있을 것입니다.
532
533  2. TEST 처럼 존재하지 않는 파일 이름을 하나 고르십시오.
534
535  3. 이제  :w TEST 라고 입력하십시오.  (TEST는 당신이 선택한 파일 이름입니다.)
536
537  4. 이렇게 하면 빔 길잡이 파일 전체를 TEST라는 이름으로 저장합니다.
538     확인하려면,  :!dir 을 다시 입력하여, 디렉토리를 살펴보십시오.
539
540참고: 빔을 종료한 후, 빔을 다시 실행하여 TEST라는 파일을 열면, 그 파일은
541      저장했을 때와 완벽히 같은 복사본일 것입니다.
542
543  5. 이제 그 파일을 지웁시다.
544     (MS-DOS에서):   !del TEST
545     (Unix에서):     !rm TEST
546
547
548~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
549                    Lesson 5.3: 선택적으로 저장하는 명령
550
551
552        ** 파일의 일부를 저장하려면,  :#,# w FILENAME  하십시오. **
553
554  1. 다시 한번,  :!dir  이나  !ls 를 입력하여 디렉토리의 목록을 받아온 후
555     TEST 같은 적합한 이름을 선택합니다.
556
557  2. 커서를 이 페이지의 처음으로 옮긴 후, Ctrl-g 를 입력하여 그 줄의 줄번호를
558     알아냅니다. 이 번호를 기억하십시오!
559
560  3. 이제 이 페이지의 마지막으로 가서  Ctrl-g 를 다시 입력하십시오. 이 줄의
561     줄번호 또한 기억하십시오!
562
563  4. 어떤 섹션만 파일로 저장하려면,  :#,# w TEST  를 입력하면 됩니다. 이 때
564     #,# 는 아까 기억했던 시작과 끝 줄번호 입니다. TEST는 파일 이름입니다.
565
566  5. :!dir 을 이용하여 파일이 만들어졌는지 확인하십시오. 지우지는 마십시오.
567
568
569
570
571~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
572                   Lesson 5.4: 파일 읽어들이기, 합치기
573
574
575       ** 어떤 파일의 내용을 삽입하려면,  :r FILENAME  하십시오 **
576
577  1.  :!dir 을 입력하여 아까 만든 TEST 파일이 그대로 있는지 확인하십시오.
578
579  2. 커서를 이 페이지의 처음으로 움직이십시오.
580
581주의:  3번째 단계를 실행하면, Lesson 5.3 을 보게 될 것입니다. 그렇게 되면
582       이 lesson으로 다시 내려오십시오.
583
584  3. 이제 TEST 파일을 읽어들입시다.  :r TEST  명령을 사용하십시오. TEST 는
585     파일의 이름입니다.
586
587참고:  읽어들인 파일은 커서가 위치한 지점에서부터 놓이게 됩니다.
588
589  4. 파일이 읽어들여진 것을 확인하기 위해, 뒤로 이동해서 기존 버전과 파일에서
590     읽어들인 버전, 이렇게 Lesson 5.3 이 두번 반복되었음을 확인하십시오.
591
592
593
594~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
595                               LESSON 5 요약
596
597
598  1.  :!command  를 이용하여 외부 명령을 실행합니다.
599
600      유용한 예:
601         (MS-DOS)         (Unix)
602          :!dir            :!ls            -  디렉토리의 목록을 보여준다.
603          :!del FILENAME   :!rm FILENAME   -  FILENAME이라는 파일을 지운다.
604
605  2.  :w FILENAME  하면 현재 빔에서 사용하는 파일을 FILENAME이라는 이름으로
606      디스크에 저장합니다.
607
608  3.  :#,#w FILENAME  하면 #부터 #까지의 줄을 FILENAME이라는 파일로 저장합니다.
609
610  4.  :r FILENAME  은 디스크에서 FILENAME이라는 파일을 불러들여서 커서 위치
611      뒤에 현재 파일을 집어넣습니다.
612
613
614
615
616
617
618~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
619                    Lesson 6.1: 새 줄 열기(OPEN) 명령
620
621
622       **  o  를 누르면 커서 아래에 줄을 만들고 편집 모드가 됩니다. **
623
624  1. 아래에 ---> 로 표시된 줄로 커서를 옮기십시오.
625
626  2.  o (소문자)를 쳐서 커서 *아래에* 줄을 하나 여십시오. 편집 모드가 됩니다.
627     Insert mode.
628
629  3. ---> 로 표시된 줄을 복사한 후  <ESC> 를 눌러서 편집 모드에서 나오십시오.
630
631---> After typing  o  the cursor is placed on the open line in Insert mode.
632
633  4. 커서 *위에* 줄을 하나 만드려면, 소문자  o 대신 대문자  O  를 치면 됩니다.
634     아래 있는 줄에 대해 이 명령을 내려보십시오.
635Open up a line above this by typing Shift-O while the cursor is on this line.
636
637
638
639
640
641~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
642                        Lesson 6.2: 추가(APPEND) 명령
643
644
645          **  a 를 누르면 커서 *다음에* 글을 입력할 수 있습니다. **
646
647  1. 커서를 ---> 로 표시된 첫번째 줄의 끝으로 옮깁니다.  명령 모드에서
648     $ 를 이용하십시오.
649
650  2.  소문자 a 를 커서 아래 글자 *다음*에 글을 추가할 수 있습니다.
651     (대문자 A는 그 줄의 끝에 추가합니다.)
652
653참고: 그렇게 하시면 고작 줄의 끝에 추가를 하기 위해 i를 누르고, 커서 아래에
654      있던 글자를 반복하고, 글을 끼워넣고, <ESC>를 눌러 명령 모드로 돌아와서,
655      커서를 오른쪽으로 옮기고 마지막으로 x까지 눌러야 하는 번거로움을 피하실
656      수 있습니다.
657
658  3. 이제 첫 줄을 완성하십시오. 추가 명령은 텍스트가 입력되는 위치 외에는
659     편집 모드와 완전히 같다는 것을 유념하십시오.
660
661---> This line will allow you to practice
662---> This line will allow you to practice appending text to the end of a line.
663
664
665
666~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
667                   Lesson 6.3: 치환(REPLACE) 의 다른 버전
668
669
670      **  대문자 R 을 입력하면 하나 이상의 글자를 바꿀 수 있습니다. **
671
672  1. 커서를 ---> 로 표시된 첫번째 줄로 옮기십시오.
673
674  2. 커서를 ---> 로 표시된 두번째 줄과 다른 첫번째 단어 위로 옮기십시오.
675     ('last' 입니다.)
676
677  3.  R  을 입력한 후 첫번째 줄의 예전 텍스트 위에 새로운 글을 입력하여
678     나머지 내용이 두번째 줄과 같아지도록 바꿉시다.
679
680---> To make the first line the same as the last on this page use the keys.
681---> To make the first line the same as the second, type R and the new text.
682
683  4. <ESC> 를 눌러서 나가면, 바뀌지 않은 텍스트는 그대로 남게 됩니다.
684
685
686
687
688
689~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
690                         Lesson 6.4: 옵션 설정(SET)
691
692      ** 찾기나 바꾸기에서 대소문자 구분을 없애기 위해 옵션을 설정합니다 **
693
694  1. 다음을 입력하여 'ignore' 를 찾으십시오:
695     /ignore
696      n 키를 이용하여 여러번 반복하십시오.
697
698  2. 'ic' (대소문자 구별 안함, Ignore case) 옵션을 설정하십시오:
699     :set ic
700
701  3.  n 키를 눌러서 'ignore' 를 다시 찾아보십시오.
702     n 키를 계속 눌러서 여러번 찾으십시오.
703
704  4. 'hlsearch' 와 'incsearch' 옵션을 설정합시다.
705     :set hls is
706
707  5. 찾기 명령을 다시 입력하여, 어떤 일이 일어나는지 확인해 보십시오:
708     /ignore
709
710  6. 찾은 내용이 강조(HIGHLIGHT)된 것을 없애려면, 다음과 같이 입력합니다:
711     :nohlsearch
712~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
713                               LESSON 6 요약
714
715
716  1.  o 를 입력하면 커서 *아래에* 한 줄이 열리며, 커서는 편집 모드로
717     열린 줄 위에 위치하게 됩니다.
718     대문자  O  를 입력하면 커서가 있는 줄의 *위로* 새 줄을 열게 됩니다.
719
720  2.  a 를 입력하면 커서 *다음에* 글을 입력할 수 있습니다.
721     대문자  A  를 입력하면 자동으로 그 줄의 끝에 글자를 추가하게 됩니다.
722
723  3. 대문자  R  을 입력하면 <ESC> 를 눌러서 나가기 전까지 바꾸기 모드가 됩니다.
724
725  4. ":set xxx" 를 하면 "xxx" 옵션이 설정됩니다.
726
727
728
729
730
731
732
733
734
735~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
736                       LESSON 7: 온라인 도움말 명령
737
738
739                      ** 온라인 도움말 시스템 사용하기 **
740
741  빔은 폭 넓은 온라인 도움말 시스템을 제공합니다.  도움말을 보려면,
742  다음 세가지 중 하나를 시도해보십시오:
743        - <HELP> 키를 누른다. (키가 있는 경우)
744        - <F1> 키를 누른다. (키가 있는 경우)
745        - :help <ENTER>   라고 입력한다.
746
747  도움말 창을 닫으려면  :q <ENTER>  라고 입력하십시오.
748
749  ":help" 라는 명령에 인자를 주면 어떤 주제에 관한 도움말을 찾을 수 있습니다.
750  다음 명령을 내려 보십시오. ( <ENTER> 키를 누르는 것을 잊지 마십시오.)
751
752        :help w
753        :help c_<T
754        :help insert-index
755        :help user-manual
756
757
758~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
759                       LESSON 8: 시작 스크립트 만들기
760
761                            ** 빔의 기능 켜기 **
762
763  빔은 Vi 보다 훨씬 많은 기능을 가지고 있지만, 대부분은 기본적으로 작동하지
764  않습니다. 더 많은 기능을 써보려면, "vimrc" 라는 파일을 만들어야 합니다.
765
766  1. "vimrc" 파일을 수정합시다. 이 파일은 사용하는 시스템에 따라 다릅니다:
767  1. Start editing the "vimrc" file, this depends on your system:
768        :edit ~/.vimrc                  Unix의 경우
769        :edit $VIM/_vimrc               MS-Windows의 경우
770
771  2. 이제 "vimrc"의 예제를 읽어들입니다:
772
773        :read $VIMRUNTIME/vimrc_example.vim
774
775  3. 다음과 같이 하여 파일을 저장합니다:
776
777        :write
778
779  다음 번에 빔을 시작하면, 구문 강조(syntax highlighting)이 사용될 것입니다.
780  모든 원하는 설정을 이 "vimrc" 파일에 넣어둘 수 있습니다.
781
782~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
783
784  이것으로 빔 길잡이를 마칩니다.  이 길잡이는 빔 편집기에 대한 간략한 개요를
785  보여주기 위한 의도로 제작되었으며, 이 편집기를 정말 간단히 사용하기에
786  충분할 뿐입니다.  빔에는 이 길잡이와는 비교할 수 없을 만큼 훨씬 많은 명령이
787  있습니다.  다음 사용자 매뉴얼을 읽으십시오: ":help user-manual"
788
789  보다 자세히 읽고 공부하려면, 다음 책을 추천해 드립니다:
790        Vim - Vi Improved - by Steve Oualline
791        출판사: New Riders
792  이 책은 완전히 빔에 대해서만 다루고 있습니다.  특히 초보자들에게 유용합니다.
793  많은 예제와 그림이 있습니다.
794  다음을 참고하십시오:  http://iccf-holland.org/click5.html
795
796  다음 책은 좀 오래된 책으로 빔보다는 Vi에 대해 다루고 있지만, 역시 추천할 만
797  합니다:
798        Learning the Vi Editor - by Linda Lamb
799        출판사: O'Reilly & Associates Inc.
800  Vi로 하고 싶은 거의 모든 것에 대해 알 수 있는 좋은 책입니다.
801  여섯번째 개정판은 빔에 관한 내용을 포함하고 있습니다.
802
803  이 길잡이는  Colorado School of Mines의 Michael C. Pierce 와
804  Robert K. Ware 가 Colorado State University의 Charles Smith 의 아이디어에
805  착안하여 썼습니다.
806  .  E-mail: bware@mines.colorado.edu.
807
808  Modified for Vim by Bram Moolenaar.
809
810  이 문서의 한국어 버전에 관한 문의는 다음 사이트로 해주십시오.
811  http://wiki.kldp.org/wiki.php/VimTutorKo
812~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
813