diff options
author | Bram Moolenaar <Bram@vim.org> | 2012-10-03 21:46:54 +0200 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2012-10-03 21:46:54 +0200 |
commit | 97cc2384c07b2fd067375fdd5a1a41dbc6c892d6 (patch) | |
tree | b1081bf0fb58f80c94bed1d77817e35dc08ec6ed /runtime | |
parent | 14f5827940ebd819a77048761a28c0b208addaee (diff) | |
download | vim-97cc2384c07b2fd067375fdd5a1a41dbc6c892d6.zip |
Update runtime files.
Diffstat (limited to 'runtime')
27 files changed, 977 insertions, 1515 deletions
diff --git a/runtime/doc/if_pyth.txt b/runtime/doc/if_pyth.txt index 92840d40e..ec7d2396e 100644 --- a/runtime/doc/if_pyth.txt +++ b/runtime/doc/if_pyth.txt @@ -1,4 +1,4 @@ -*if_pyth.txt* For Vim version 7.3. Last change: 2012 Aug 02 +*if_pyth.txt* For Vim version 7.3. Last change: 2012 Sep 23 VIM REFERENCE MANUAL by Paul Moore @@ -165,7 +165,7 @@ vim.bindeval(str) *python-bindeval* Value Meaning ~ zero Variable is not locked vim.VAR_LOCKED Variable is locked, but can be unlocked - vim.VAR_FIXED Variable is locked and can’t be unlocked + vim.VAR_FIXED Variable is locked and can't be unlocked integer constants. If variable is not fixed, you can do `var.locked=True` to lock it and `var.locked=False` to unlock. There is no recursive locking like |:lockvar|! does. There is also diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt index e3e6bbbff..275b7ac45 100644 --- a/runtime/doc/todo.txt +++ b/runtime/doc/todo.txt @@ -1,4 +1,4 @@ -*todo.txt* For Vim version 7.3. Last change: 2012 Sep 21 +*todo.txt* For Vim version 7.3. Last change: 2012 Oct 03 VIM REFERENCE MANUAL by Bram Moolenaar @@ -36,18 +36,20 @@ not be repeated below, unless there is extra information. Go through more coverity reports. -Ruby problem, patch in issue 49. (Sep 19) -Also in email from Ondruch? - Discussion about canonicalization of Hebrew. (Ron Aaron, 2011 April 10) -GTK: problem with 'L' in 'guioptions' changing the window width. -(Aaron Cornelius, 2012 Feb 6) - Checking runtime scripts: Thilo Six, 2012 Jun 6. Crash with 1023 byte directory name. (Danek Duvall, 2012 Sep 19) +Patch for wrong text in balloon, Issue 58. (Dominique Pelle) + +Patch for menu.vim to correct message about adding spell file. +(Jiri Sedlak, 2012 Sep 24) + +GTK: problem with 'L' in 'guioptions' changing the window width. +(Aaron Cornelius, 2012 Feb 6) + Patch for SGR mouse with older xterm. (Hayaki Saito, 2012 Sep 19) Patch for crash with an autocommand. (ZyX, 2012 Sep 6, second one) @@ -79,16 +81,32 @@ Aug 16) the order they were made. Also ":gredo". Both with a count. Useful when tests fail after making changes and you forgot in which files. +Crash with vimdiff. (Don Cruickshank, 2012 Sep 23) + +Win32: use 'guifontwide' for IME composition. (Taro Muraoka, 2012 Sep 30) +Update Oct 2. + +Patch to make multibyte input work on Win32 console when codepage differs from +'encoding'. (Ken Takata, 2012 Sep 29) + +It's possible to defined an input() function that overrides the built-in one. +(ZyX, 2012 Sep 28) + Win32: When a directory name contains an exclamation mark, completion doesn't complete the contents of the directory. No escaping for the "!"? (Jan Stocker, 2012 Jan 5) +Patch to support 'u' in interactive substitute. (Christian Brabandt, 2012 Sep +28) Asked for tests. + Patch for IME handling, adds 'imactivatefunc' and 'imstatusfunc' option. (Yukihiro Nakadaira, 2012 Aug 16) Patch to improve IME handling. (Yasuhiro Matsumoto, 2012 Jul 18) Issue 54: document behavior of -complete, also expands arg. +New syntax files for apt. (quidame, 2012 Sep 21) + Patch for if_lua. (Luis Carvalho, 2012 Aug 26, update Aug 29, another Aug 30, then Sep 1) @@ -156,6 +174,7 @@ Do give the prompt? Quit with an error? Patch for 'backupcopy' default behavior for symlinks on Windows. (David Pope, 2012 Mar 21, update Mar 31) With fix for memory leak: Ken Takata, 2012 Aug 24 +Another update Sep 24. Patch to list user digraphs. (Christian Brabandt, 2012 Apr 14) diff --git a/runtime/filetype.vim b/runtime/filetype.vim index 6f6bc812a..5010d6877 100644 --- a/runtime/filetype.vim +++ b/runtime/filetype.vim @@ -1,7 +1,7 @@ " Vim support file to detect file types " " Maintainer: Bram Moolenaar <Bram@vim.org> -" Last Change: 2012 Sep 06 +" Last Change: 2012 Oct 03 " Listen very carefully, I will say this only once if exists("did_load_filetypes") @@ -633,6 +633,9 @@ au BufNewFile,BufRead *.dsl setf dsl " DTD (Document Type Definition for XML) au BufNewFile,BufRead *.dtd setf dtd +" DTS/DSTI (device tree files) +au BufNewFile,BufRead *.dts,*.dtsi setf dts + " EDIF (*.edf,*.edif,*.edn,*.edo) au BufNewFile,BufRead *.ed\(f\|if\|n\|o\) setf edif diff --git a/runtime/syntax/synload.vim b/runtime/syntax/synload.vim index 9b28fd8f4..48b5956b3 100644 --- a/runtime/syntax/synload.vim +++ b/runtime/syntax/synload.vim @@ -1,6 +1,6 @@ " Vim syntax support file " Maintainer: Bram Moolenaar <Bram@vim.org> -" Last Change: 2012 Feb 11 +" Last Change: 2012 Sep 25 " This file sets up for syntax highlighting. " It is loaded from "syntax.vim" and "manual.vim". @@ -46,6 +46,8 @@ fun! s:SynSet() echohl None endif let s = &filetype + elseif s == "OFF" + let s = "" endif if s != "" diff --git a/runtime/tutor/tutor b/runtime/tutor/tutor index daf42b6bb..da28a1531 100644 --- a/runtime/tutor/tutor +++ b/runtime/tutor/tutor @@ -658,7 +658,7 @@ NOTE: If you were to exit Vim and start it again with vim TEST , the file 4. Type w TEST , where TEST is a filename that does not exist yet. Verify that you see :'<,'>w TEST before you press <ENTER>. - 5. Vim will write the selected lines to the file TEST. Use :!dir or !ls + 5. Vim will write the selected lines to the file TEST. Use :!dir or :!ls to see it. Do not remove it yet! We will use it in the next lesson. NOTE: Pressing v starts Visual selection. You can move the cursor around diff --git a/runtime/tutor/tutor.eo.utf-8 b/runtime/tutor/tutor.eo.utf-8 index 41f40726d..44d7b29a3 100644 --- a/runtime/tutor/tutor.eo.utf-8 +++ b/runtime/tutor/tutor.eo.utf-8 @@ -645,7 +645,7 @@ RIMARKO: Ĉiuj : komandoj devas finiĝi per tajpo de <Enenklavo> 3. Nun tajpu: :w TESTO (kie TESTO estas la elektita dosiernomo) 4. Tio konservas la tutan dosieron (instruilon de Vim) kun la nomo TESTO. - Por kontroli tion, tajpu :!dir aŭ !ls denove por vidigi vian + Por kontroli tion, tajpu :!dir aŭ :!ls denove por vidigi vian dosierujon. RIMARKO: Se vi volus eliri el Vim kaj restartigi ĝin denove per vim TESTO, diff --git a/runtime/tutor/tutor.fr b/runtime/tutor/tutor.fr index f51a62e53..2eb92d5e9 100644 --- a/runtime/tutor/tutor.fr +++ b/runtime/tutor/tutor.fr @@ -707,7 +707,7 @@ NOTE : Si vous quittez Vim et le redmarrez de nouveau avec le fichier TEST, Vrifiez que vous voyez :'<,'>w TEST avant de d'appuyer sur <Entre>. 5. Vim va enregistrer les lignes slectionnes dans le fichier TEST. - Utilisez :!dir ou !ls pour le voir. Ne l'effacez pas encore ! + Utilisez :!dir ou :!ls pour le voir. Ne l'effacez pas encore ! Nous allons l'utiliser dans la leon suivante. NOTE : L'appui de v dmarre la slection Visuelle. Vous pouvez dplacer le diff --git a/runtime/tutor/tutor.fr.utf-8 b/runtime/tutor/tutor.fr.utf-8 index 628153893..9e1087de6 100644 --- a/runtime/tutor/tutor.fr.utf-8 +++ b/runtime/tutor/tutor.fr.utf-8 @@ -707,7 +707,7 @@ NOTE : Si vous quittez Vim et le redémarrez de nouveau avec le fichier TEST, Vérifiez que vous voyez :'<,'>w TEST avant de d'appuyer sur <Entrée>. 5. Vim va enregistrer les lignes sélectionnées dans le fichier TEST. - Utilisez :!dir ou !ls pour le voir. Ne l'effacez pas encore ! + Utilisez :!dir ou :!ls pour le voir. Ne l'effacez pas encore ! Nous allons l'utiliser dans la leçon suivante. NOTE : L'appui de v démarre la sélection Visuelle. Vous pouvez déplacer le diff --git a/runtime/tutor/tutor.hr b/runtime/tutor/tutor.hr index f1d346c2a..90443bf65 100644 --- a/runtime/tutor/tutor.hr +++ b/runtime/tutor/tutor.hr @@ -659,7 +659,7 @@ NAPOMENA: Ako bi napustili Vim i ponovno ga pokrenuli sa vim TEST , Provjerite da zaista pie :'<,'>w TEST prije nego to pritisnite <ENTER>. - 5. Vim e spremiti oznaeni tekst u TEST. Provjerite sa :!dir ili !ls . + 5. Vim e spremiti oznaeni tekst u TEST. Provjerite sa :!dir ili :!ls . Nemojte je jo brisati! Koristiti e te je u sljedeoj lekciji. NAPOMENA: Tipka v zapoinje Vizualno oznaavanje. Moete pomicati kursor diff --git a/runtime/tutor/tutor.hr.cp1250 b/runtime/tutor/tutor.hr.cp1250 index 92771ab22..1956a8aba 100644 --- a/runtime/tutor/tutor.hr.cp1250 +++ b/runtime/tutor/tutor.hr.cp1250 @@ -659,7 +659,7 @@ NAPOMENA: Ako bi napustili Vim i ponovno ga pokrenuli sa vim TEST , Provjerite da zaista pie :'<,'>w TEST prije nego to pritisnite <ENTER>. - 5. Vim e spremiti oznaeni tekst u TEST. Provjerite sa :!dir ili !ls . + 5. Vim e spremiti oznaeni tekst u TEST. Provjerite sa :!dir ili :!ls . Nemojte je jo brisati! Koristiti e te je u sljedeoj lekciji. NAPOMENA: Tipka v zapoinje Vizualno oznaavanje. Moete pomicati kursor diff --git a/runtime/tutor/tutor.hr.utf-8 b/runtime/tutor/tutor.hr.utf-8 index 396bdfeb1..79838ec7f 100644 --- a/runtime/tutor/tutor.hr.utf-8 +++ b/runtime/tutor/tutor.hr.utf-8 @@ -659,7 +659,7 @@ NAPOMENA: Ako bi napustili Vim i ponovno ga pokrenuli sa vim TEST , Provjerite da zaista piše :'<,'>w TEST prije nego što pritisnite <ENTER>. - 5. Vim će spremiti označeni tekst u TEST. Provjerite sa :!dir ili !ls . + 5. Vim će spremiti označeni tekst u TEST. Provjerite sa :!dir ili :!ls . Nemojte je još brisati! Koristiti će te je u sljedećoj lekciji. NAPOMENA: Tipka v započinje Vizualno označavanje. Možete pomicati kursor diff --git a/runtime/tutor/tutor.ja.euc b/runtime/tutor/tutor.ja.euc index 513439344..2734ee8ca 100644 --- a/runtime/tutor/tutor.ja.euc +++ b/runtime/tutor/tutor.ja.euc @@ -117,7 +117,7 @@ NOTE: ƤΥå̤ơФ褦ȤΤǤϤʤºݤˤäƤߤޤ礦 å 1.5: ƥԽ - ɲ - ** ƥɲäˤ A ޤ礦 ** + ** ƥȤɲäˤ A ޤ礦 ** 1. ʲ ---> ȼ줿ǽιԤ˥ưޤ礦 뤬ʸˤäƤ⤫ޤޤ @@ -232,7 +232,7 @@ NOTE: <ESC> ȥΡޥ⡼ɤ˰ܹԤޤκݡְä å 2.3: ڥ졼ȥ⡼ - ¿Υޥɤϥڥ졼ȥ⡼ƥȤѹäޤ + ¿Υޥɤϥڥ졼ȥ⡼ƥȤѹäޤ ޥ d Υڥ졼ϼͤˤʤäƤޤ: d ⡼ @@ -259,7 +259,7 @@ NOTE: ͤϡΡޥ⡼ɤˤƥޥɤʤ˥⡼ 1. ʲ ---> ȼ줿ԤƬ˥ưޤ - 2. 2dw פñ2ʬưޤ + 2. 2dw פñ2ʬޤ 3. 3e פ3ܤñνü˰ưޤ @@ -326,8 +326,8 @@ NOTE: ڥ졼 d ȥ⡼δ֤˥ȤȤä硢ڥ졼Τʤ ** ǸΥޥɤäˤ u ޤU ϹΤμäǤ ** - 1. ʲ ---> ȼ줿Ԥ˥ưǽδְ㤤˥ - ưޤ礦 + 1. ʲ ---> ȼ줿Ԥ˥ưǽδְ㤤˥ + ưޤ礦 2. x פƤʤƬʸޤ礦 3. u פƺǸ˼¹Ԥޥɤäޤ礦 4. ٤ϡx ѤƸƽޤ礦 diff --git a/runtime/tutor/tutor.ja.sjis b/runtime/tutor/tutor.ja.sjis index 7be2120a5..fe3be23b4 100644 --- a/runtime/tutor/tutor.ja.sjis +++ b/runtime/tutor/tutor.ja.sjis @@ -117,7 +117,7 @@ NOTE: SẴbXʂāAo悤Ƃ̂ł͂ȂۂɂĂ݂܂傤B bX 1.5: eLXgҏW - lj - ** eLXgljɂ A ܂傤 ** + ** eLXgljɂ A ܂傤 ** 1. ȉ ---> Ǝꂽŏ̍sɃJ[\ړ܂傤B J[\̕ɂĂ܂܂B @@ -232,7 +232,7 @@ NOTE: <ESC> L[ƃm[}[hɈڍs܂B̍ہAԈ͓r bX 2.3: Iy[^ƃ[V - ̃R}h̓Iy[^ƃ[VeLXgɕύX܂B + ̃R}h̓Iy[^ƃ[VeLXgɕύX܂B 폜R}h d ̃Iy[^͎̗lɂȂĂ܂: d [V @@ -259,7 +259,7 @@ NOTE: `ĺAm[}[hɂăR}hȂɃ[V 1. ȉ ---> Ǝꂽs̐擪ɃJ[\ړ܂B - 2. 2dw ^CvĒP2ړ܂B + 2. 2dw ^CvĒP2폜܂B 3. 3e ^Cv3ڂ̒P̏I[Ɉړ܂B @@ -326,8 +326,8 @@ NOTE: Iy[^ d ƃ[V̊ԂɃJEggꍇAIy[^̂Ȃ ** Ō̃R}hɂ u ܂BU ͍sŜ̎łB ** - 1. ȉ ---> ƎꂽsɃJ[\ړAŏ̊ԈႢɃJ[\ - ړ܂傤B + 1. ȉ ---> ƎꂽsɃJ[\ړAŏ̊ԈႢɃJ[\ + ړ܂傤B 2. x ^CvĂȂ擪̕폜܂傤B 3. Au ^CvčŌɎsR}h܂傤B 4. x́Ax gpČSďC܂傤B diff --git a/runtime/tutor/tutor.ja.utf-8 b/runtime/tutor/tutor.ja.utf-8 index 95e108efe..a620cd57a 100644 --- a/runtime/tutor/tutor.ja.utf-8 +++ b/runtime/tutor/tutor.ja.utf-8 @@ -117,7 +117,7 @@ NOTE: 全てのレッスンを通じて、覚えようとするのではなく レッスン 1.5: テキスト編集 - 追加 - ** テキスト追加するには A を押しましょう ** + ** テキストを追加するには A を押しましょう ** 1. 以下の ---> と示された最初の行にカーソルを移動しましょう。 カーソルがその文字上にあってもかまいません。 @@ -232,7 +232,7 @@ NOTE: <ESC> キーを押すとノーマルモードに移行します。その レッスン 2.3: オペレータとモーション - 多くのコマンドはオペレータとモーションからテキストに変更を加ます。 + 多くのコマンドはオペレータとモーションからテキストに変更を加えます。 削除コマンド d のオペレータは次の様になっています: d モーション @@ -259,7 +259,7 @@ NOTE: 冒険したい人は、ノーマルモードにてコマンドなしに 1. 以下の ---> と示された行の先頭にカーソルを移動します。 - 2. 2dw をタイプして単語2つ分移動します。 + 2. 2dw をタイプして単語2つ分削除します。 3. 3e をタイプして3つ目の単語の終端に移動します。 @@ -326,8 +326,8 @@ NOTE: オペレータ d とモーションの間にカウントを使った場 ** 最後のコマンドを取り消すには u を押します。U は行全体の取消です。 ** - 1. 以下の ---> と示された行にカーソルを移動し、最初の間違いにカーソ - ルを移動しましょう。 + 1. 以下の ---> と示された行にカーソルを移動し、最初の間違いにカーソル + を移動しましょう。 2. x をタイプしていらない先頭の文字を削除しましょう。 3. さぁ、u をタイプして最後に実行したコマンドを取り消しましょう。 4. 今度は、x を使用して誤りを全て修正しましょう。 diff --git a/runtime/tutor/tutor.ko.euc b/runtime/tutor/tutor.ko.euc index ddfc5ac81..95282f86e 100644 --- a/runtime/tutor/tutor.ko.euc +++ b/runtime/tutor/tutor.ko.euc @@ -551,7 +551,7 @@ cw ܾ ġȯϴ Ӹ ƴ϶, ֵ Ѵٴ Ϳ ** Ϻθ Ϸ, :#,# w FILENAME Ͻʽÿ. ** - 1. ٽ ѹ, :!dir ̳ !ls ԷϿ 丮 ƿ + 1. ٽ ѹ, :!dir ̳ :!ls ԷϿ 丮 ƿ TEST ̸ մϴ. 2. Ŀ ó ű , Ctrl-g ԷϿ ٹȣ diff --git a/runtime/tutor/tutor.ko.utf-8 b/runtime/tutor/tutor.ko.utf-8 index 4498c9f6d..f19ce7539 100644 --- a/runtime/tutor/tutor.ko.utf-8 +++ b/runtime/tutor/tutor.ko.utf-8 @@ -551,7 +551,7 @@ cw 는 단어를 치환하는 것 뿐만 아니라, 내용을 삽입할 수 있 ** 파일의 일부를 저장하려면, :#,# w FILENAME 하십시오. ** - 1. 다시 한번, :!dir 이나 !ls 를 입력하여 디렉토리의 목록을 받아온 후 + 1. 다시 한번, :!dir 이나 :!ls 를 입력하여 디렉토리의 목록을 받아온 후 TEST 같은 적합한 이름을 선택합니다. 2. 커서를 이 페이지의 처음으로 옮긴 후, Ctrl-g 를 입력하여 그 줄의 줄번호를 diff --git a/runtime/tutor/tutor.nb b/runtime/tutor/tutor.nb index 17178df78..2f1d14c29 100644 --- a/runtime/tutor/tutor.nb +++ b/runtime/tutor/tutor.nb @@ -658,7 +658,7 @@ Merk: Hvis du n hadde avsluttet Vim og startet p nytt igjen med vim TEST, 4. Trykk w TEST , der TEST er et filnavn som ikke finnes enda. Kontroller at du ser :'<,'>w TEST fr du trykker Enter. - 5. Vim vil skrive de valgte linjene til filen TEST. Bruk :!dir eller !ls + 5. Vim vil skrive de valgte linjene til filen TEST. Bruk :!dir eller :!ls for se den. Ikke slett den enda! Vi vil bruke den i neste leksjon. MERK: Ved trykke v startes visuelt valg. Du kan flytte markren rundt for diff --git a/runtime/tutor/tutor.nb.utf-8 b/runtime/tutor/tutor.nb.utf-8 index a7826b783..f9d49c2a2 100644 --- a/runtime/tutor/tutor.nb.utf-8 +++ b/runtime/tutor/tutor.nb.utf-8 @@ -658,7 +658,7 @@ Merk: Hvis du nå hadde avsluttet Vim og startet på nytt igjen med «vim TEST» 4. Trykk w TEST , der TEST er et filnavn som ikke finnes enda. Kontroller at du ser :'<,'>w TEST før du trykker Enter. - 5. Vim vil skrive de valgte linjene til filen TEST. Bruk :!dir eller !ls + 5. Vim vil skrive de valgte linjene til filen TEST. Bruk :!dir eller :!ls for å se den. Ikke slett den enda! Vi vil bruke den i neste leksjon. MERK: Ved å trykke v startes visuelt valg. Du kan flytte markøren rundt for diff --git a/runtime/tutor/tutor.no b/runtime/tutor/tutor.no index 17178df78..2f1d14c29 100644 --- a/runtime/tutor/tutor.no +++ b/runtime/tutor/tutor.no @@ -658,7 +658,7 @@ Merk: Hvis du n hadde avsluttet Vim og startet p nytt igjen med vim TEST, 4. Trykk w TEST , der TEST er et filnavn som ikke finnes enda. Kontroller at du ser :'<,'>w TEST fr du trykker Enter. - 5. Vim vil skrive de valgte linjene til filen TEST. Bruk :!dir eller !ls + 5. Vim vil skrive de valgte linjene til filen TEST. Bruk :!dir eller :!ls for se den. Ikke slett den enda! Vi vil bruke den i neste leksjon. MERK: Ved trykke v startes visuelt valg. Du kan flytte markren rundt for diff --git a/runtime/tutor/tutor.no.utf-8 b/runtime/tutor/tutor.no.utf-8 index a7826b783..f9d49c2a2 100644 --- a/runtime/tutor/tutor.no.utf-8 +++ b/runtime/tutor/tutor.no.utf-8 @@ -658,7 +658,7 @@ Merk: Hvis du nå hadde avsluttet Vim og startet på nytt igjen med «vim TEST» 4. Trykk w TEST , der TEST er et filnavn som ikke finnes enda. Kontroller at du ser :'<,'>w TEST før du trykker Enter. - 5. Vim vil skrive de valgte linjene til filen TEST. Bruk :!dir eller !ls + 5. Vim vil skrive de valgte linjene til filen TEST. Bruk :!dir eller :!ls for å se den. Ikke slett den enda! Vi vil bruke den i neste leksjon. MERK: Ved å trykke v startes visuelt valg. Du kan flytte markøren rundt for diff --git a/runtime/tutor/tutor.sk b/runtime/tutor/tutor.sk index 2291aad61..bae139837 100644 --- a/runtime/tutor/tutor.sk +++ b/runtime/tutor/tutor.sk @@ -671,7 +671,7 @@ Poznmka: e ak ukon prcu s editorom Vim a znovu ho spust prkazom 4. Nap w TEST , kde TEST je meno sboru, ktor zatial neexistuje. Skontroluj, e vid :'<,'>w TEST predtm ne stla Enter. - 5. Vim zape oznaen riadky do sboru TEST. Poui :!dir alebo !ls + 5. Vim zape oznaen riadky do sboru TEST. Poui :!dir alebo :!ls pre overenie. Zatial ho ete nema! Pouijeme ho v alej lekcii. POZNMKA: Stlaenm klvesy v sa spust vizulne oznaovanie. diff --git a/runtime/tutor/tutor.sk.cp1250 b/runtime/tutor/tutor.sk.cp1250 index f32c9b12a..c4e7b3d3e 100644 --- a/runtime/tutor/tutor.sk.cp1250 +++ b/runtime/tutor/tutor.sk.cp1250 @@ -671,7 +671,7 @@ Poznmka: e ak ukon prcu s editorom Vim a znovu ho spust prkazom 4. Nap w TEST , kde TEST je meno sboru, ktor zatial neexistuje. Skontroluj, e vid :'<,'>w TEST predtm ne stla Enter. - 5. Vim zape oznaen riadky do sboru TEST. Poui :!dir alebo !ls + 5. Vim zape oznaen riadky do sboru TEST. Poui :!dir alebo :!ls pre overenie. Zatial ho ete nema! Pouijeme ho v alej lekcii. POZNMKA: Stlaenm klvesy v sa spust vizulne oznaovanie. diff --git a/runtime/tutor/tutor.sk.utf-8 b/runtime/tutor/tutor.sk.utf-8 index c4e0c4f5d..51c5b4f18 100644 --- a/runtime/tutor/tutor.sk.utf-8 +++ b/runtime/tutor/tutor.sk.utf-8 @@ -671,7 +671,7 @@ Poznámka: že ak ukončíš prácu s editorom Vim a znovu ho spustíš príkazo 4. Napíš w TEST , kde TEST je meno súboru, ktorý zatial neexistuje. Skontroluj, e vidíš :'<,'>w TEST predtým než stlačíš Enter. - 5. Vim zapíše označené riadky do súboru TEST. Použi :!dir alebo !ls + 5. Vim zapíše označené riadky do súboru TEST. Použi :!dir alebo :!ls pre overenie. Zatial ho ešte nemaž! Použijeme ho v ďalšej lekcii. POZNÁMKA: Stlačením klávesy v sa spustí vizuálne označovanie. diff --git a/runtime/tutor/tutor.utf-8 b/runtime/tutor/tutor.utf-8 index daf42b6bb..da28a1531 100644 --- a/runtime/tutor/tutor.utf-8 +++ b/runtime/tutor/tutor.utf-8 @@ -658,7 +658,7 @@ NOTE: If you were to exit Vim and start it again with vim TEST , the file 4. Type w TEST , where TEST is a filename that does not exist yet. Verify that you see :'<,'>w TEST before you press <ENTER>. - 5. Vim will write the selected lines to the file TEST. Use :!dir or !ls + 5. Vim will write the selected lines to the file TEST. Use :!dir or :!ls to see it. Do not remove it yet! We will use it in the next lesson. NOTE: Pressing v starts Visual selection. You can move the cursor around diff --git a/runtime/tutor/tutor.zh.euc b/runtime/tutor/tutor.zh.euc index 7f80f690b..df59c3208 100644 --- a/runtime/tutor/tutor.zh.euc +++ b/runtime/tutor/tutor.zh.euc @@ -1,30 +1,32 @@ =============================================================================== -= ӭ V I M 汾 1.5 = += ӭ V I M 汾 1.7 = =============================================================================== - vim һкܶĹܷdzǿı༭ƪڱ̵̳ + + Vim һкܶĹܷdzǿı༭ƪڱ̵̳ Ͳϸˡ̵̳ĿǽһЩҪĻպ - Щܹvimһͨõܱ༭ʹˡ + Щܹؽ Vim һͨñ༭ʹˡ ɱ̵̳ݴԼҪ25-30ӣȡѵʱ䡣 + ע⣺ ÿһڵıġƼƱĵһȻڸ ѵ(ͨ"vimtutor"̵̳ģôľѾǸ) - мһñ̵̳˼·ʹнѧϰġҲ˵Ҫͨ + мһ㣺̵̳˼·ʹнѧϰġҲ˵Ҫͨ ִѧϰDZȷ÷ֻĶô ܿЩģ ˣȷShift-Lock(Сд)ûа£Ȼ - ĸ j 㹻Ĵƶֱ꣬һڵܹȫĻ + ĸ j 㹻ƶֱ꣬һڵܹȫĻ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - һһڡƶ + һһڣƶ - Ҫƶ꣬˵ֱ hjkl + ** Ҫƶ꣬˵ֱ hjkl ** ^ - k ʾ h ļλߣÿΰ¾ͻƶ + k ʾ h ļλߣÿΰ¾ͻƶ < h l > l ļλұߣÿΰ¾ͻƶ j j һ֧˷µļͷ v @@ -35,43 +37,38 @@ ---> ӦѾѧƶһɡ - 3. ʹмƶڶ + 3. ʹмƶһڶڡ -ʾȷµĸ밴<ESC>ص(Normal)ģʽ +ʾȷµĸ밴<ESC>ص(Normal)ģʽ ȻٴδӼҪ -ʾùӦҲġʹhjklϰܹ֮ - ĻĴƶˡ +ʾӦҲġʹhjklϰܹ֮ + ĻĴƶꡣ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - һڶڡVIMĽ˳ - + һڶڣVIMĽ˳ - !! رʾþĶһڵݣȻִ - 1. 밴<ESC>(Ϊȷģʽ) + !! رʾĶһڵݣȻִ - 2. Ȼ :q! <س> + 1. <ESC>(Ϊȷģʽ) ----> ַʽ˳༭ᱣ༭ĸĶ - 뱣˳ - :wq <س> + 2. Ȼ룺 :q! <س> + ַʽ˳༭ᶪ༭ĸĶ - 3. ʾܹص̵̳Ǿǡ + 3. ʾܹص̵̳Ǿǣ + vimtutor <س> - vimtutor <س> + 4. ѾμסЩĻӲ1ִе3˳Ȼ + ٴν༭ - ͨҲַʽ +ʾ :q! <س> ᶪκθĶ֮ѧαĶļ - vim tutor <س> + 5. Ƶһڡ ----> 'vim' ʾvim༭ 'tutor'Ҫ༭ļ - - 4. ѾμסЩĻӲ1ִе3˳Ȼ - ٴν༭ŽƶһǵĽ̳̽⡣ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - һڡı༭֮ɾ + һڣı༭֮ɾ ** (Normal)ģʽ£ x ɾλõַ** @@ -86,89 +83,130 @@ ---> The ccow jumpedd ovverr thhe mooon. - 5. ˣѾˣһǵһĽڡ + 5. ˣѾˣǵһĽڡ -رʾ̳ʱҪǿм䡣סһʹѧϰ +رʾ̳ʱҪǿм䡣סһ㣺ʹѧϰ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - һĽڡı༭֮ + һĽڣı༭֮ ** ģʽ£ i ı** 1. 뽫ƶ ---> ĵһС - 2. ΪʹõһͬڵڶУ뽫ıһַ + 2. ΪʹõһͬڵڶУ뽫ıһַ λá 3. Ȼ i Ҫıַ - 4. ıϣ밴 <ESC> ģʽ + 4. ÿϺ밴 <ESC> ģʽ ظ24Աӡ ---> There is text misng this . ---> There is some text missing from this line. - 5. ıѾ⣬ĶСᡣ + 5. ıѾ⣬Ķĵһڡ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - һС + һڣı༭֮ - 1. ĻıеƶȿüͷҲʹ hjkl ĸ - h () j () k () l () + ** A ı ** + + 1. ƶ굽һ ---> һС + һеĸַϲҪ + + 2. A Ҫݡ + + 3. ıϺ <ESC> صģʽ + + 4. ƶ굽ڶ ---> һСظ2Ͳ3Ըӡ + +---> There is some text missing from th + There is some text missing from this line. +---> There is also some text miss + There is also some text missing here. + + 5. ıеʱѧϰһڡ - 2. vim༭(ʾ)vim ļ <س> +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + һڣ༭ļ + + ** ʹ :wq Աļ˳ ** + + رʾִ²֮ǰȶСڣ + + 1. ڵһڶ˳̳̣ :q! + ߣԷһնˣִ² + + 2. shell ʾ vim tutor <س> + 'vim' Vim ༭'tutor'ϣ༭ļ֡ + ʹһԸĶļ + + 3. ʹǰĽ̳ѧɾı + + 4. Ķļ˳ VimЩ :wq <س> - 3. ˳vim༭ġ + 5. ڲ1Ѿ˳ vimtutor vimtutor ƶСһڡ - <ESC> :q! <س> + 6. Ķϲ裬Ūǵ壬Ȼʵнϰ + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + һС + + + 1. ĻıеƶȿüͷҲʹ hjkl ĸ + h () j () k () l () - ġ + 2. Vim ༭(ʾ)룺vim ļ <س> - <ESC> :wq <س> + 3. ˳ Vim ༭ <ESC> :q! <س> иĶ + <ESC> :wq <س> Ķ - 4. ģʽɾλõַ밴 x + 4. ģʽɾλõַ밴 x - 5. ģʽҪڹλÿʼı밴 + 5. ı룺 - i Ҫı <ESC> + i ı <ESC> ڹǰı + A ı <ESC> һкı -رʾð <ESC> صģʽȡһ߲ +رʾ <ESC> صģʽ߳һ ˣһ˽ڶݡ + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - ڶһڡɾ + ڶһڣɾ - ** dw Դӹ괦ɾһ/ʵĩβ** + ** dw Դӹ괦ɾһʵĩβ** 1. 밴 <ESC> ȷģʽ 2. 뽫ƶ ---> һС - 3. 뽫ҪɾĵʵĿʼ + 3. 뽫Ҫɾĵʵʼ 4. dw ɾõʡ - رʾ dw ͬʱĻһС - 밴 <ESC> ȡȻ + رʾʱĸ d ͬʱĻһСVim ڵȴ + ĸ wdz d ַDZˣ밴 <ESC> + Ȼ ---> There are a some words fun that don't belong paper in this sentence. - 5. ظ34ֱϡżڶڶݡ - + 5. ظ3Ͳ4ֱϡżڶڶݡ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - ڶڶڡɾ + ڶڶڣɾ ** d$ ӵǰɾĩ** @@ -191,58 +229,102 @@ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - ڶڡùͶ + ڶڣͶ - ɾ d ĸʽ¡ + ııһһɡ + ʹɾ d ɾĸʽ£ - [number] d object d [number] object + d motion - ¡ - number - ִĴ(ѡȱʡΪ 1 ) - d - ɾ - object - ҪĶ(ؽ) + У + d - ɾ + motion - IJ(г) - һ̵Ķб - w - ӵǰ굱ǰλֱ/ĩβո - e - ӵǰ굱ǰλֱ/ĩβ ** ո + һ̵Ķб + w - ӵǰ굱ǰλֱһʼĵһַ + e - ӵǰ굱ǰλֱĩβһַ $ - ӵǰ굱ǰλֱǰĩ -رʾ - ̽ߣģʽӦļʹ + de ӵǰλɾĩβ + +رʾ + ̽ߣģʽӦļʹò ƶĶбһ +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ڶĽڣʹüָ + + + ** ڶǰֻʹظôΡ ** + + 1. ƶ굽 ---> һеĿʼ + + 2. 2w ʹǰƶʡ + + 3. 3e ʹǰƶʵĩβ + + 4. 0 () ƶ굽ס + + 5. ظ2Ͳ3Բͬ֡ + +---> This is just a line with words you can move around in. + + 6. ѧϰڶڡ + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ڶڣʹüɾ + + + ** ʹòʱֿʹظôΡ ** + + ѾᵽɾͶϣж֮ǰһ + ɾࣺ + d number() motion + + 1. ƶ굽 ---> һеһдĸϡ + + 2. d2w ɾдĸʡ + + 3. ظ1Ͳ2ʹòͬʹһɾȫڵĴдĸ + + +---> this ABC DE line FGHI JK LMN OP of words is Q RS TUV cleaned up. + + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - ڶĽڡö + ڶڣ - ** dd ɾһǰС ** + ** dd ɾһǰС ** - ɾĸƵȣVIM ߾ҪɾҪͬһ + ɾĸƵȣVi ߾ҪɾҪͬһ d Ϳɾڵˡ 1. 뽫ƶĶ̾еĵڶС 2. dd ɾС 3. ȻƶС - 4. 2dd (ǵǰ潲 number-command-object ) ɾС + 4. 2dd ɾС - 1) Roses are red, - 2) Mud is fun, - 3) Violets are blue, - 4) I have a car, - 5) Clocks tell time, - 6) Sugar is sweet - 7) And so are you. +---> 1) Roses are red, +---> 2) Mud is fun, +---> 3) Violets are blue, +---> 4) I have a car, +---> 5) Clocks tell time, +---> 6) Sugar is sweet +---> 7) And so are you. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - ڶڡó + ڶ߽ڣ - ** u ִе U С** + ** u ִе U еġ ** 1. 뽫ƶ ---> һУڵһ @@ -251,8 +333,8 @@ 4. Ҫʹ x ед 5. һд U ָеԭʼ״̬ 6. Ŷ u Գ U Լǰ - 7. Ȼ CTRL-R (Ȱ CTRL ſ R ) - ִлָҲdz + 7. Ȼ CTRL-R (Ȱ CTRL ſŰ R ) + Ҳdz ---> Fiix the errors oon thhis line and reeplace them witth undo. @@ -265,105 +347,105 @@ ڶС - 1. ӵǰɾ/ĩβdw - - 2. ӵǰɾǰĩβd$ - - 3. ɾУdd + 1. ӵǰɾһʣ룺dw + 2. ӵǰɾǰĩβ룺d$ + 3. ɾУ룺dd - 4. ģʽһĸʽǡ + 4. ظһǰһ֣2w + 5. ģʽĸʽǣ + operator [number] motion + У + operator - Ҫ飬 d ɾ + [number] - Ըӵ֣ظĴ + motion - ıϵƶ w (word) + $ ĩȵȡ - [number] command object command [number] object - ǡ - number - ִеĴ - command - Ҫ飬 d ɾ - object - ҪĶ w /ʣ$ ĩȵȡ - $ (to the end of line), etc. + 6. ƶ굽ף밴00 - 5. ǰIJu (Сдu) - һĸĶU (дU) - ǰijָǰIJCTRL-R + 7. ǰIJ룺u (Сдu) + һĸĶ룺U (дU) + ǰijָǰIJ룺CTRL-R ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - һڡ + һڣ - ** p һɾ֮ ** + ** p һɾ֮ ** - 1. 뽫ƶʾС + 1. 뽫ƶһ ---> һС - 2. dd ɾὫб浽vimĻС + 2. dd ɾὫб浽 Vim һĴС - 3. ŽƶλõϷסϷŶ + 3. Žƶ c) һУλõϷסϷŶ - 4. Ȼģʽ(<ESC>) p ճ롣 + 4. Ȼģʽ(<ESC>) p ճ롣 5. ظ24еõȷλϡ - d) Can you learn too? - b) Violets are blue, - c) Intelligence is learned, - a) Roses are red, +---> d) Can you learn too? +---> b) Violets are blue, +---> c) Intelligence is learned, +---> a) Roses are red, ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - ڶڡ滻 + ڶڣ滻 ** r һַ滻λõַ** 1. 뽫ƶ ---> ĵһС - 2. ƶ굽һʵλá + 2. ƶ굽һλá - 3. r ܽ滻ˡ + 3. r Ҫ滻ɵַܽ滻ˡ 4. ظ2Ͳ3ֱһѾϡ ---> Whan this lime was tuoed in, someone presswd some wrojg keys! ---> When this line was typed in, someone pressed some wrong keys! - 5. ȻǼѧУڡ + 5. ȻǼѧϰڡ -رʾмҪʹѧϰڼѧϰ +رʾмҪʹѧϰڼѧϰ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - ڡø + ڣ - ** Ҫıһ/ʵIJֻȫ cw ** + ** Ҫııֱһʵĩβ ce ** 1. 뽫ƶ ---> ĵһС 2. Űѹڵ lubw ĸ u λ - 3. Ȼ cw Ϳõ(ڱ ine ) + 3. Ȼ cw Լȷĵ(ڱ ine ) 4. <ESC> Ȼ궨λһһĵĸ 5. ظ3Ͳ4ֱһȫͬڶӡ ----> This lubw has a few wptfd that mrrf changing usf the change command. ----> This line has a few words that need changing using the change command. +---> This lubw has a few wptfd that mrrf changing usf the change operator. +---> This line has a few words that need changing using the change operator. -ʾע cw 滻һʣҲı״̬ˡ +ʾע ce ɾһʣҲģʽˡ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - Ľڡʹcָ + Ľڣʹcĸ - ** ָʹͬɾʹõĶ** + ** ɾʹõͬĶʹá ** - 1. ָĹʽɾһµġʽǡ + 1. Ĺʽɾһµġʽǣ - [number] c object c [number] object + c [number] motion - 2. Ҳһģ w /ʣ$ĩȵȡ + 2. (motion)Ҳһģ w ʣ$ĩȵȡ 3. 뽫ƶ ---> ĵһС @@ -377,55 +459,56 @@ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - С + С - 1. ҪѾɾıݣСдĸ pòԽɾ + 1. ҪѾɾıݣ밴Сдĸ p òԽɾ ıڹ֮һɾһУôн ڵǰеһС 2. Ҫ滻λõַСд r Ҫ滻ԭλַ ɡ - 3. ıָĶӵǰλֱĩβ - cw 滻ǰ굽ʵĩβݣ c$ 滻 + 3. ıӵǰλֱָʾλмı + ce 滻ǰ굽ʵĩβݣ c$ 滻 ǰ굽ĩݡ - 4. ĸʽǡ + 4. ĸʽǣ - [number] c object c [number] object + c [number] motion -Ǽѧϰһ +Ǽѧϰһ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - Ľһڡöλļ״̬ + Ľһڣλļ״̬ + ** CTRL-G ʾǰ༭ļеǰλԼļ״̬Ϣ + д G ֱתļеijһָС** - ** CTRL-g ʾǰ༭ļеǰλԼļ״̬Ϣ - SHIFT-G ֱתļеijһָС** + ʾмҪͨݣ֮ſִ²!!! - ʾмҪͨݣ֮ſִ²!!! + 1. CTRL ſȻ g dzΪ CTRL-G + ῴҳײһ״̬ϢУʾǵǰ༭ļ + ļйλáסкţڲ3õ - 1. CTRL ſȻ g Ȼͻῴҳײһ״̬ - ϢУʾǵǰ༭ļļס3кš +ʾҲĻ½ǿλã 'ruler' ѡʱ + (μ :help 'ruler') - 2. SHIFT-G ʹõǰֱתļһС - - 3. ͣкţȻ SHIFT-GͿԷصһΰ - CTRL-g ʱڵкˡעкʱкDzĻʾ - ġ - - 4. Ը⣬Լִв1 + 2. д G ʹõǰֱתļһС + gg ʹõǰֱתļһС + 3. ͣкţȻд GͿԷصһΰ + CTRL-G ʱڵˡ + 4. ûĻִв13IJϰ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - Ľڶڡ + Ľڶڣ - ** / ԼβַڵǰļвҸַ** + ** / һַڵǰļвҸַ** 1. ģʽ / ַʱעַ궼Ļ : һġ @@ -433,23 +516,22 @@ 2. errroor <س>ǸerrroorҪҵַ 3. ҪͬһεַֻҪ n Ҫ෴ͬһε - Shift-N ɡ + д N ɡ 4. ַʹ ? / С ----> When the search reaches the end of the file it will continue at the start. - - "errroor" is not the way to spell error; errroor is an error. - - ʾѾļĩβһԶļͷҡ - + 5. Ҫص֮ǰλð CTRL-O (ס Ctrl ͬʱĸ o)ظ + ˸ಽCTRL-I תµλá +---> "errroor" is not the way to spell error; errroor is an error. +ʾѾļĩβһԶļͷң + 'wrapscan' ѡλ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - ĽڡŵIJ + ĽڣŵIJ - ** % ԲԵ )]}** + ** % ԲԵ )]}** 1. ѹڱ --> һеκһ ([ { @@ -459,17 +541,17 @@ 4. ٴΰ % ͿԵĵһŴ ----> This ( is a test line with ('s, ['s ] and {'s } in it. )) - -ʾڳʱҲԵǺõġ + 5. ƶ굽һ ()[]{ } % 鿴Ϊ +---> This ( is a test line with ('s, ['s ] and {'s } in it. )) +ʾڳʱҲԵǺõġ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - ĽĽڡķ֮һ + ĽĽڣ滻 ** :s/old/new/g 滻 old Ϊ new** @@ -479,46 +561,48 @@ 2. :s/thee/the <س> עֻıеĵһƥ - 3. :s/thee/the/g 滻ȫеƥ䴮 - ----> the best time to see thee flowers is in thee spring. - - 4. Ҫ滻ֵ֮ÿƥ䴮 :#,#s/old/new/g (#,# - ек) :%s/old/new/g 滻ļеÿƥ䴮 - + 3. :s/thee/the/g 滻ȫеƥ䴮е "thee" ᱻ + ı䡣 +---> thee best time to see thee flowers is in thee spring. + 4. Ҫ滻ֵ֮ÿƥ䴮 + :#,#s/old/new/g #,# 滻 + βекš + :%s/old/new/g 滻ļеÿƥ䴮 + :%s/old/new/gc ҵļеÿƥ䴮Ҷÿƥ䴮 + ʾǷ滻 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ĽС - 1. Ctrl-g ʾǰλúļ״̬ϢShift-G ڽ - תļһСһкȻ Shift-G ǽƶ - ŴС + 1. CTRL-G ʾǰλúļ״̬Ϣ + G ڽתļһС + һкȻд G ǽƶкŴС + gg ڽתļһС - 2. / Ȼһַڵǰ༭ĵҸַ - ʺ ? Ȼһַڵǰ༭ĵǰҸ - һβ֮ n ظһεͬһϲ - һַڣ߰ Shift-N ෴¸ַڡ + 2. / Ȼһַڵǰ༭ĵҸַ + ? Ȼһַڵǰ༭ĵзҸַ + һβ֮ n ظһεͬһϲ + һƥַڣ߰д N ෴һƥַڡ + CTRL-O תؽϾɵλãCTRL-I µλá - 3. 굱ǰλ()[]{} % ԽƶԵ - ϡ + 3. 굱ǰλ()[]{} % ὫƶԵϡ 4. һ滻ͷһַ old Ϊµַ new :s/old/new һ滻еַ old Ϊµַ new :s/old/new/g 滻еַ old Ϊµַ new :#,#s/old/new/g ļ滻еַ old Ϊµַ new :%s/old/new/g - ȫ滻ʱѯûȷÿ滻 c ѡ :%s/old/new/gc - + ȫ滻ʱѯûȷÿ滻 c ־ :%s/old/new/gc ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 彲һڡ VIM ִⲿķ + 彲һڣ VIM ִⲿķ - ** :! Ȼһⲿִиⲿ** + ** :! Ȼһⲿִиⲿ** - 1. Ϥ : ù굽ĻײͿˡ + 1. Ϥ : ʹƶĻײͿһˡ 2. ̾ ! ִַⲿ shell ˡ @@ -526,15 +610,17 @@ ݣͬʾ ls Ľһ !ls û ã :!dir ----> ʾ еⲿַʽִС +ʾеⲿַʽִУвЩ + +ʾе : <س> ӽԺǾͲᵽһ + ˡ ----> ʾ е : <س> ա ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 彲ڶڡùڱļĸϢ + 彲ڶڣڱļĸϢ ** ҪļĸĶ浽ļУ :w FILENAME ** @@ -542,60 +628,63 @@ 1. :!dir :!ls ֪ǰĿ¼ݡӦ֪ <س> ɡ - 2. ѡһδļ TEST + 2. ѡһδõļ TEST 3. :w TEST (˴ TEST ѡļ) - 4. TEST Ϊļļ (VIM ̳)Ϊȷȷ棬 - ٴ :!dir 鿴Ŀ¼бݡ + 4. TEST Ϊļļ (Vim ̳)Ϊ֤һ㣬 + ٴ :!dir :!ls 鿴Ŀ¼бݡ ----> ע˳ VIM Ȼļ TEST Ϊ룬ôļ +ע⣺˳ Vim Ȼ vim TEST ٴ Vimôļ Ӧͬʱļȫһġ - 5. ͨ :!rm TEST ɾ TEST ļˡ - + 5. ɾ TEST ļˡ MS-DOS £룺 :!del TEST + Unix £룺 :!rm TEST ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 彲ڡһѡԵı + 彲ڣһѡԵı - ** ҪļIJݣ :#,# w FILENAME ** + ** ҪļIJݣ v motion :w FILENAME ** - 1. ִһ :!dir :!ls ֪ǰĿ¼ݣȻѡһʵ - ļ TEST + 1. ƶ굽С - 2. ŽƶҳˣȻ CTRL-g ҵекš - кŶ + 2. Ű v ƶĿϡע֮ıˡ - 3. Űѹƶҳˣٰһ CTRL-g ҲкŶ + 3. Ȼ : ַĻײ :'<,'> - 4. Ϊֻµij֣ :#,# w TEST #,# - Ҫסк(к,к) TEST ѡļ - - 5. :!dir ȷļǷȷ档ȱɾ + 4. w TEST TEST һδʹõļȷ + :'<,'>w TEST ֮ <س> + 5. ʱ Vim ѡед뵽 TEST ļȥʹ :!dir :!ls + ȷļȷ档ȱɾһлõ +ʾ v ʹ Vim ģʽѡȡĴƶʹѡȡ + Сʹһѡıв磬 d ɾ + ѡеıݡ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 彲Ľڡȡͺϲļ + 彲Ľڣȡͺϲļ ** Ҫǰļвļݣ :r FILENAME ** - 1. :!dir ȷǰ洴 TEST ļڡ + 1. ѹƶһС - 2. ȻƶǰҳĶˡ +رʾִв2֮彲ڵ֣ʱƶ + ٴοݡ -رʾ ִв3֮彲ڣʱƶص + 2. ͨ :r TEST ǰ洴Ϊ TEST ļȡ + ȡļӹλôʼ롣 - 3. ͨ :r TEST ǰ洴Ϊ TEST ļȡ + 3. ΪȷļѾȡɹƶصԭλþͿעݵ + 彲ڵݣһԭʼݣһļĸ -رʾȡļӹλôʼ롣 +ʾԶȡⲿ磬 :r !ls Զȡ ls + ڹ档 - 4. ΪȷļѾȡɹƶصԭλþͿעݵ - 彲ڣһԭһļĸ @@ -605,237 +694,293 @@ 1. :!command ִһⲿ command - 뿴һЩʵӡ - :!dir - ʾǰĿ¼ݡ - :!rm FILENAME - ɾΪ FILENAME ļ + 뿴һЩʵӣ + (MS-DOS) (Unix) + :!dir :!ls - ʾǰĿ¼ݡ + :!del FILENAME :!rm FILENAME - ɾΪ FILENAME ļ 2. :w FILENAME ɽǰ VIM ڱ༭ļ浽Ϊ FILENAME С - 3. :#,#w FILENAME ɽǰ༭ļ # # еݱ浽ļ + 3. v motion :w FILENAME ɽǰ༭ļпģʽѡеݱ浽ļ FILENAME С 4. :r FILENAME ȡļ FILENAME 뵽ǰļĹλ 档 - - - - + 5. :r !dir Զȡ dir õǰļĹλú档 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - һڡô + һڣ ** o ڹ·µһвģʽ** 1. 뽫ƶ ---> һС - 2. Сд o ڹ *·* µһвģʽ + 2. Сд o ڹ *·* µһУʹ + ģʽ - 3. ȻƱ ---> в <ESC> ˳ģʽģʽ + 3. ȻһЩ֣֮ <ESC> ˳ģʽģʽ ---> After typing o the cursor is placed on the open line in Insert mode. 4. Ϊڹ *Ϸ* µһУֻҪд O Сд o - Ϳˡвһ°ɡ괦ڸʱ Shift-O - ڸϷ¿һС - -Open up a line above this by typing Shift-O while the cursor is on this line. + Ϳˡвһ°ɡ +---> Open up a line above this by typing O while the cursor is on this line. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - ڶڡù + ڶڣ ** a ڹ֮ı ** - 1. ģʽͨ $ ƶ ---> ĵһ - ĩβ + 1. ģʽ½ƶ ---> ĵһеס + + 2. e ֱλ li ĩβ - 2. Сд a ڹ֮ıˡд A ֱ - ĩı + 3. Сд a ڹ֮ıˡ -ʾд A IJĩı i궨λ - һַı<ESC> ظģʽͷҼƶԼ - x ɾǰλַȵӵIJ + 4. ʲһе֮ <ESC> ˳ģʽص + ģʽ - 3. ֮һоͿԲˡעıģʽǻ - ȫһµģֻıλöλвͬˡ + 5. ʹ e ƶ굽һĵʣظ3Ͳ4 ----> This line will allow you to practice ----> This line will allow you to practice appending text to the end of a line. +---> This li will allow you to pract appendi text to a line. +---> This line will allow you to practice appending text to a line. +ʾai A ģʽΩһַλá ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - ڡһûİ汾 + ڣһûİ汾 ** д R 滻ַ** - 1. 뽫ƶ ---> ĵһС - - 2. ƶ굽һвͬڱ ---> ĵڶеĵһʵĿʼ - last + 1. 뽫ƶ ---> ĵһСƶ굽һ xxx + ʼλá - 3. Ȼд R ʼѵһеIJͬڵڶеʣַһ룬 + 2. Ȼд R ʼѵһеIJͬڵڶеʣַһ룬 ȫ滻ԭеַʹõһȫͬڶˡ ----> To make the first line the same as the last on this page use the keys. ----> To make the first line the same as the second, type R and the new text. + 3. Ű <ESC> ˳滻ģʽصģʽעδ滻ı + Ȼԭ״ - 4. ע <ESC> ˳ûģʽظģʽδ滻ı - Ȼԭ״ + 4. ظϲ裬ʣ xxx Ҳ滻 +---> Adding 123 to xxx gives you xxx. +---> Adding 123 to 456 gives you 579. +ʾ滻ģʽģʽƣÿַɾһеַ +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Ľڣճı -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - Ľڡѡ + ** ʹò y ıʹ p ճı ** + 1. λ ---> һУƶ "a)" ֮ - ** ÿʹһ滻ɺԴСдѡ ** + 2. ʹ v ģʽƶ굽 "first" ǰ档 + 3. y Գ()ı - 1. Ҫҵ ignore ģʽ /ignore ҪظҸôʣ - ظ n + 4. Ȼƶ굽һеĩβj$ - 2. Ȼ ic ѡ(icӢĺԴСдIgnore Caseĸд) - - :set ic + 5. p Է(ճ)˵ıȻ룺a second <ESC> - 3. ڿͨ n ٴβҵ ignoreظҿظ n + 6. ʹÿģʽѡ " item." y ƣ j$ ƶһĩβ + p ıճ - 4. Ȼ hlsearch incsearch ѡݡ - :set hls is +---> a) this is the first item. + b) - 5. ڿٴʲôЧ - /ignore + ʾ y ʹã yw һʡ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - С + ڣѡ - 1. Сд o ڹ·µһв¿ף - ģʽ - д O ڹϷµһв¿ף - ģʽ + ** ÿʹһ滻ɺԴСдѡ ** - 2. Сд a ڹλ֮ı - д A ڹеĩ֮ı + 1. Ҫҵ ignore ģʽ /ignore <س> + ҪظҸôʣظ n + + 2. Ȼ ic ѡ(Ignore CaseԴСд)룺 :set ic + + 3. ڿͨ n ٴβҵ ignoreע Ignore IGNORE + Ҳҵˡ - 3. д R 滻ģʽֱ <ESC> ˳滻ģʽ - ģʽ + 4. Ȼ hlsearch incsearch ѡ룺 :set hls is - 4. :set xxx xxx ѡ + 5. ڿٴʲôЧ /ignore <س> + 6. ҪúԴСд룺 :set noic + +ʾҪƳƥĸʾ룺 :nohlsearch +ʾҪһβʱĸСдʹ \c + /ignore\c <س> +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + С + 1. Сд o ڹ·µһвģʽ + д O ڹϷµһС + 2. Сд a ڹλ֮ı + д A ڹеĩ֮ı + 3. e ʹƶĩβ + 4. y ıp ճǰƵı + 5. д R 滻ģʽֱ <ESC> صģʽ + 6. :set xxx xxx ѡһЩõѡ£ + 'ic' 'ignorecase' ʱĸСд + 'is' 'incsearch' Ҷʱʾƥ + 'hls' 'hlsearch' ʾеƥ + ѡ汾Ҳ汾 + 7. ѡǰ no Թرѡ :set noic ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - ߽߰ + ߽һڣȡϢ + ** ʹ߰ϵͳ ** Vim ӵһϸȫ߰ϵͳҪðϵͳѡַ - ֮һ + ֮һ - <HELP> (еĻ) - <F1> (еĻ) - :help <س> + Ķе˽ιġ + CTRL-W CTRL-W ʹڴ֮ת :q <س> Թرհڡ ṩһȷIJ":help"ҵڸİ - ²(ɱ˰سŶ:) + ²(ɱ˰سŶ) + + :help w + :help c_CTRL-D + :help insert-index + :help user-manual +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ߽ڶڣű + - :help w <س> - :help c_<T <س> - :help insert-index <س> - :help user-manual <س> + ** Vim ** + Vim ĹҪ Vi ö࣬дֶûȱʡáΪʹø + ԣôһ vimrc ļ + 1. ʼ༭ vimrc ļȡʹõIJϵͳ + :edit ~/.vimrc Unix ϵͳʹõ + :edit $VIM/_vimrc MS-Windows ϵͳʹõ + 2. Ŷȡ vimrc ʾļݣ + :r $VIMRUNTIME/vimrc_example.vim + + 3. ļΪ + :write + + ´ Vim ʱ༭ͻĹܡ + ϲĸӵ vimrc ļС + Ҫ˽Ϣ :help vimrc-intro ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - ڰ˽ôһű + ߽ڣȫ - ** vimĹ ** - VimĹҪviöֹ࣬ܶûȱʡΪ - ܣôһvimrcļ + ** ʹ CTRL-D <TAB> Խвȫ ** - 1. ʼ༭vimrcļȡʹõIJϵͳ + 1. ȷ Vim ԼģʽУ :set nocp - :edit ~/.vimrc Unixϵͳʹõ - :edit $VIM/_vimrc Windowsϵͳʹõ + 2. 鿴һµǰĿ¼ѾЩļ룺 :!ls :!dir - 2. ŵvimrcļ + 3. һĿ¼ʼ֣룺 :e - :read $VIMRUNTIME/vimrc_example.vim + 4. Ű CTRL-D Vim ʾ e ʼб - 3. ļΪ + 5. Ȼ <TAB> Vim ᲹȫΪ :edit - :write + 6. һոԼһļļʼ֣磺 :edit FIL - ´vimʱ༭ͻĹܡԼϲ - ӵvimrcļС + 7. Ű <TAB> Vim Ჹȫļ(Ωһƥ) + +ʾȫЧֻ賢 CTRL-D <TAB> + :help dzá ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ߽С - vim ̵̳˽ֻ̳Ϊ˼ؽһvim༭ - ѧʹñ༭ˡӹɣvimк̳ܶܶ - ܵĻԶءҪͨĻŬŶһĶ - vimֲᣬʹõǡ - :help user-manual - Ϊ˸һIJοѧϰⱾֵƼ + 1. :help ߰ <F1> <Help> Դڡ - Vim - Vi Improved - ߡSteve Oualline - New Riders + 2. :help cmd ҵ cmd İ - ǵһȫvim鼮ڳѧرáлдʵ - ͼʾ֪飬 http://iccf-holland.org/click5.html + 3. CTRL-W CTRL-W ʹڴ֮ת - ⱾȽ˶ҪvivimҲֵƼ + 4. :q Թرհ - Learning the Vi Editor - ߡLinda Lamb - O'Reilly & Associates Inc. + 5. Դһ vimrc űļƫõá - һ飬ܹͨ˽ȫviܹ顣ĵ - 汾ҲһЩvimϢ + 6. : ʱ CTRL-D Բ鿴ܵIJȫ + <TAB> ʹһȫ - ̳Calorado School of MineseMichael C. PierceRobert K. - Ware дģColorado State UniversityCharles Smithṩ - ܶഴ⡣ͨŵַǡ - bware@mines.colorado.edu - ̳Bram MoolenaarרΪvim - ߸ԡ + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + + vim ̵̳˾ͽˡֻ̳Ϊ˼ؽһ Vim ༭ + ʹ༭ˡӹɣvimк̳ܶܶ + ܵľIJúԶҪͨĻŬŶһĶ + Vim ûֲᣬʹõǣ :help user-manual + + ⱾֵƼڸһĶѧϰ + Vim - Vi Improved - ߣSteve Oualline + 磺New Riders + ǵһȫ Vim 鼮ڳѧرáадʵ + ͼʾ + ֪飬 http://iccf-holland.org/click5.html + + ⱾȽ˶ݸǹ Vi VimҲֵƼ + Learning the Vi Editor - ߣLinda Lamb + 磺O'Reilly & Associates Inc. + һ飬ܹͨ˽κҪʹ Vi 顣 + ĵ汾ҲһЩ Vim Ϣ + + ̳ Calorado School of Mines Michael C. Pierce + Robert K. Ware дģкܶഴ Colorado State University + Charles Smith ṩߵĵǣbware@mines.colorado.edu + + ̳ Bram Moolenaar רΪ Vim + + ߸ԣ =========== Ľ̷̳֮Ϊ̩ <beos@turbolinux.com.cn> - һϵַlinuxrat@gnuchina.org + һϵַlinuxrat@gnuchina.org Ľ̳ǴӼĽ̷̳ʹ Debian GNU/Linux ĿС ڹдĺת autoconvert תɵģת ĽһЩϸڵĸĶ - ¼ + ¼ ========= + 20121001 <alick9188@gmail.com> + vimtutor 1.5 1.7 + 20020830 ̩ <beos@turbolinux.com.cn> л RMS@SMTH ָദ diff --git a/runtime/tutor/tutor.zh.utf-8 b/runtime/tutor/tutor.zh.utf-8 deleted file mode 100644 index 21d702051..000000000 --- a/runtime/tutor/tutor.zh.utf-8 +++ /dev/null @@ -1,852 +0,0 @@ -=============================================================================== -= 歡 迎 閱 讀 《 V I M 教 程 》 ── 版本 1.5 = -=============================================================================== - vim 是一個具有很多命令的功能非常強大的編輯器。限于篇幅,在本教程當中 - 不就詳細介紹了。本教程的設計目標是講述一些必要的基本命令,而掌握好這 - 些命令,您就能夠很容易將vim當作一個通用的萬能編輯器來使用了。 - - 完成本教程的內容大約需要25-30分鐘,取決于您訓練的時間。 - - 每一節的命令操作將會更改本文。推薦您復制本文的一個副本,然後在副本上 - 進行訓練(如果您是通過"vimtutor"來啟動教程的,那麼本文就已經是副本了)。 - - 切記一點︰本教程的設計思路是在使用中進行學習的。也就是說,您需要通過 - 執行命令來學習它們本身的正確用法。如果您只是閱讀而不操作,那麼您可能 - 會很快遺忘這些命令的! - - 好了,現在請確定您的Shift-Lock(大小寫鎖定鍵)還沒有按下,然後按鍵盤上 - 的字母鍵 j 足夠多的次數來移動光標,直到第一節的內容能夠完全充滿屏幕。 - -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 第一講第一節︰移動光標 - - - ※※ 要移動光標,請依照說明分別按下 h、j、k、l 鍵。 ※※ - - ^ - k 提示︰ h 的鍵位于左邊,每次按下就會向左移動。 - < h l > l 的鍵位于右邊,每次按下就會向右移動。 - j j 鍵看起來很象一支尖端方向朝下的箭頭。 - v - - 1. 請隨意在屏幕內移動光標,直至您覺得舒服為止。 - - 2. 按下下行鍵(j),直到出現光標重復下行。 - ----> 現在您應該已經學會如何移動到下一講吧。 - - 3. 現在請使用下行鍵,將光標移動到第二講。 - -提示︰如果您不敢確定您所按下的字母,請按下<ESC>鍵回到正常(Normal)模式。 - 然後再次從鍵盤輸入您想要的命令。 - -提示︰光標鍵應當也能正常工作的。但是使用hjkl鍵,在習慣之後您就能夠快速 - 地在屏幕內四處移動光標了。 - -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 第一講第二節︰VIM的進入和退出 - - - !! 特別提示︰敬請閱讀完整本一節的內容,然後才能執行以下所講解的命令。 - - 1. 請按<ESC>鍵(這是為了確保您處在正常模式)。 - - 2. 然後輸入︰ :q! <回車> - ----> 這種方式的退出編輯器絕不會保存您進入編輯器以來所做的改動。 - 如果您想保存更改再退出,請輸入︰ - :wq <回車> - - 3. 如果您看到了命令行提示符,請輸入能夠帶您回到本教程的命令,那就是︰ - - vimtutor <回車> - - 通常情況下您也可以用這種方式︰ - - vim tutor <回車> - ----> 這裡的 'vim' 表示進入vim編輯器,而 'tutor'則是您準備要編輯的文件。 - - 4. 如果您自信已經牢牢記住了這些步驟的話,請從步驟1執行到步驟3退出,然 - 後再次進入編輯器。接著將光標移動到第一講第三節來繼續我們的教程講解。 - -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 第一講第三節︰文本編輯之刪除 - - - ** 在正常(Normal)模式下,可以按下 x 鍵來刪除光標所在位置的字符。** - - 1. 請將光標移動到本節中下面標記有 ---> 的那一行。 - - 2. 為了修正輸入錯誤,請將光標移至準備刪除的字符的位置處。 - - 3. 然後按下 x 鍵將錯誤字符刪除掉。 - - 4. 重復步驟2到步驟4,直到句子修正為止。 - ----> The ccow jumpedd ovverr thhe mooon. - - 5. 好了,該行已經修正了,下一節內容是第一講第四節。 - -特別提示︰在您瀏覽本教程時,不要強行記憶。記住一點︰在使用中學習。 - - - -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 第一講第四節︰文本編輯之插入 - - - ** 在正常模式下,可以按下 i 鍵來插入文本。** - - 1. 請將光標移動到本節中下面標記有 ---> 的第一行。 - - 2. 為了使得第一行內容雷同于第二行,請將光標移至文本第一個字符準備插入 - 的位置。 - - 3. 然後按下 i 鍵,接著輸入必要的文本字符。 - - 4. 所有文本都修正完畢,請按下 <ESC> 鍵返回正常模式。 - 重復步驟2至步驟4以便修正句子。 - ----> There is text misng this . ----> There is some text missing from this line. - - 5. 如果您對文本插入操作已經很滿意,請接著閱讀下面的小結。 - - - -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 第一講小結 - - - 1. 光標在屏幕文本中的移動既可以用箭頭鍵,也可以使用 hjkl 字母鍵。 - h (左移) j (下行) k (上行) l (右移) - - 2. 欲進入vim編輯器(從命令行提示符),請輸入︰vim 文件名 <回車> - - 3. 欲退出vim編輯器,請輸入以下命令放棄所有修改︰ - - <ESC> :q! <回車> - - 或者輸入以下命令保存所有修改︰ - - <ESC> :wq <回車> - - 4. 在正常模式下刪除光標所在位置的字符,請按︰ x - - 5. 在正常模式下要在光標所在位置開始插入文本,請按︰ - - i 輸入必要文本 <ESC> - -特別提示︰按下 <ESC> 鍵會帶您回到正常模式或者取消一個不期望或者部分完成 -的命令。 - -好了,第一講到此結束。下面接下來繼續第二講的內容。 - - -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 第二講第一節︰刪除類命令 - - - ** 輸入 dw 可以從光標處刪除至一個單字/單詞的末尾。** - - 1. 請按下 <ESC> 鍵確保您處于正常模式。 - - 2. 請將光標移動到本節中下面標記有 ---> 的那一行。 - - 3. 請將光標移至準備要刪除的單詞的開始。 - - 4. 接著輸入 dw 刪除掉該單詞。 - - 特別提示︰您所輸入的 dw 會在您輸入的同時出現在屏幕的最後一行。如果您輸 - 入有誤,請按下 <ESC> 鍵取消,然後重新再來。 - ----> There are a some words fun that don't belong paper in this sentence. - - 5. 重復步驟3至步驟4,直至句子修正完畢。接著繼續第二講第二節內容。 - - - -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 第二講第二節︰其他刪除類命令 - - - ** 輸入 d$ 從當前光標刪除到行末。** - - 1. 請按下 <ESC> 鍵確保您處于正常模式。 - - 2. 請將光標移動到本節中下面標記有 ---> 的那一行。 - - 3. 請將光標移動到該行的尾部(也就是在第一個點號‘.’後面)。 - - 4. 然後輸入 d$ 從光標處刪至當前行尾部。 - ----> Somebody typed the end of this line twice. end of this line twice. - - - 5. 請繼續學習第二講第三節就知道是怎麼回事了。 - - - - - -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 第二講第三節︰關于命令和對象 - - - 刪除命令 d 的格式如下︰ - - [number] d object 或者 d [number] object - - 其意如下︰ - number - 代表執行命令的次數(可選項,缺省設置為 1 )。 - d - 代表刪除。 - object - 代表命令所要操作的對象(下面有相關介紹)。 - - 一個簡短的對象列表︰ - w - 從當前光標當前位置直到單字/單詞末尾,包括空格。 - e - 從當前光標當前位置直到單字/單詞末尾,但是 *不* 包括空格。 - $ - 從當前光標當前位置直到當前行末。 - -特別提示︰ - 對于勇于探索者,請在正常模式下面僅按代表相應對象的鍵而不使用命令,則 - 將看到光標的移動正如上面的對象列表所代表的一樣。 - - - - -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 第二講第四節︰對象命令的特殊情況 - - - ** 輸入 dd 可以刪除整一個當前行。 ** - - 鑒于整行刪除的高頻度,VIM 的設計者決定要簡化整行刪除,僅需要在同一行上 - 擊打兩次 d 就可以刪除掉光標所在的整行了。 - - 1. 請將光標移動到本節中下面的短句段落中的第二行。 - 2. 輸入 dd 刪除該行。 - 3. 然後移動到第四行。 - 4. 接著輸入 2dd (還記得前面講過的 number-command-object 嗎?) 刪除兩行。 - - 1) Roses are red, - 2) Mud is fun, - 3) Violets are blue, - 4) I have a car, - 5) Clocks tell time, - 6) Sugar is sweet - 7) And so are you. - - -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 第二講第五節︰撤消類命令 - - - ** 輸入 u 來撤消最後執行的命令,輸入 U 來修正整行。** - - 1. 請將光標移動到本節中下面標記有 ---> 的那一行,並將其置于第一個錯誤 - 處。 - 2. 輸入 x 刪除第一個不想保留的字母。 - 3. 然後輸入 u 撤消最後執行的(一次)命令。 - 4. 這次要使用 x 修正本行的所有錯誤。 - 5. 現在輸入一個大寫的 U ,恢復到該行的原始狀態。 - 6. 接著多次輸入 u 以撤消 U 以及更前的命令。 - 7. 然後多次輸入 CTRL-R (先按下 CTRL 鍵不放開,接著輸入 R 鍵) ,這樣就 - 可以執行恢復命令,也就是撤消掉撤消命令。 - ----> Fiix the errors oon thhis line and reeplace them witth undo. - - 8. 這些都是非常有用的命令。下面是第二講的小結了。 - - - - -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 第二講小結 - - - 1. 欲從當前光標刪除至單字/單詞末尾,請輸入︰dw - - 2. 欲從當前光標刪除至當前行末尾,請輸入︰d$ - - 3. 欲刪除整行,請輸入︰dd - - 4. 在正常模式下一個命令的格式是︰ - - [number] command object 或者 command [number] object - 其意是︰ - number - 代表的是命令執行的次數 - command - 代表要做的事情,比如 d 代表刪除 - object - 代表要操作的對象,比如 w 代表單字/單詞,$ 代表到行末等等。 - $ (to the end of line), etc. - - 5. 欲撤消以前的操作,請輸入︰u (小寫的u) - 欲撤消在一行中所做的改動,請輸入︰U (大寫的U) - 欲撤消以前的撤消命令,恢復以前的操作結果,請輸入︰CTRL-R - -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 第三講第一節︰置入類命令 - - - ** 輸入 p 將最後一次刪除的內容置入光標之後 ** - - 1. 請將光標移動到本節中下面示范段落的首行。 - - 2. 輸入 dd 將該行刪除,這樣會將該行保存到vim的緩沖區中。 - - 3. 接著將光標移動到準備置入的位置的上方。記住︰是上方哦。 - - 4. 然後在正常模式下(<ESC>鍵進入),輸入 p 將該行粘貼置入。 - - 5. 重復步驟2至步驟4,將所有的行依序放置到正確的位置上。 - - d) Can you learn too? - b) Violets are blue, - c) Intelligence is learned, - a) Roses are red, - - - -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 第三講第二節︰替換類命令 - - - ** 輸入 r 和一個字符替換光標所在位置的字符。** - - 1. 請將光標移動到本節中下面標記有 ---> 的第一行。 - - 2. 請移動光標到第一個錯誤的適當位置。 - - 3. 接著輸入 r ,這樣就能將錯誤替換掉了。 - - 4. 重復步驟2和步驟3,直到第一行已經修改完畢。 - ----> Whan this lime was tuoed in, someone presswd some wrojg keys! ----> When this line was typed in, someone pressed some wrong keys! - - 5. 然後我們繼續學校第三講第三節。 - -特別提示︰切記您要在使用中學習,而不是在記憶中學習。 - - - -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 第三講第三節︰更改類命令 - - - ** 要改變一個單字/單詞的部分或者全部,請輸入 cw ** - - 1. 請將光標移動到本節中下面標記有 ---> 的第一行。 - - 2. 接著把光標放在單詞 lubw 的字母 u 的位置那裡。 - - 3. 然後輸入 cw 就可以修正該單詞了(在本例這裡是輸入 ine 。) - - 4. 最後按 <ESC> 鍵,然後光標定位到下一個錯誤第一個準備更改的字母處。 - - 5. 重復步驟3和步驟4,直到第一個句子完全雷同第二個句子。 - ----> This lubw has a few wptfd that mrrf changing usf the change command. ----> This line has a few words that need changing using the change command. - -提示︰請注意 cw 命令不僅僅是替換了一個單詞,也讓您進入文本插入狀態了。 - - - -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 第三講第四節︰使用c指令的其他更改類命令 - - - ** 更改類指令可以使用同刪除類命令所使用的對象參數。** - - 1. 更改類指令的工作方式跟刪除類命令是一致的。操作格式是︰ - - [number] c object 或者 c [number] object - - 2. 對象參數也是一樣的,比如 w 代表單字/單詞,$代表行末等等。 - - 3. 請將光標移動到本節中下面標記有 ---> 的第一行。 - - 4. 接著將光標移動到第一個錯誤處。 - - 5. 然後輸入 c$ 使得該行剩下的部分更正得同第二行一樣。最後按 <ESC> 鍵。 - ----> The end of this line needs some help to make it like the second. ----> The end of this line needs to be corrected using the c$ command. - - - -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 第三講小結 - - - 1. 要重新置入已經刪除的文本內容,請輸入小寫字母 p。該操作可以將已刪除 - 的文本內容置于光標之後。如果最後一次刪除的是一個整行,那麼該行將置 - 于當前光標所在行的下一行。 - - 2. 要替換光標所在位置的字符,請輸入小寫的 r 和要替換掉原位置字符的新字 - 符即可。 - - 3. 更改類命令允許您改變指定的對象,從當前光標所在位置直到對象的末尾。 - 比如輸入 cw 可以替換當前光標到單詞的末尾的內容;輸入 c$ 可以替換當 - 前光標到行末的內容。 - - 4. 更改類命令的格式是︰ - - [number] c object 或者 c [number] object - -下面我們繼續學習下一講。 - - - -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 第四講第一節︰定位及文件狀態 - - - ** 輸入 CTRL-g 顯示當前編輯文件中當前光標所在行位置以及文件狀態信息。 - 輸入 SHIFT-G 則直接跳轉到文件中的某一指定行。** - - 提示︰切記要先通讀本節內容,之後才可以執行以下步驟!!! - - 1. 按下 CTRL 鍵不放開然後按 g 鍵。然後就會看到頁面最底部出現一個狀態信 - 息行,顯示的內容是當前編輯的文件名和文件的總行數。請記住步驟3的行號。 - - 2. 按下 SHIFT-G 鍵可以使得當前光標直接跳轉到文件最後一行。 - - 3. 輸入您曾停留的行號,然後按下 SHIFT-G。這樣就可以返回到您第一次按下 - CTRL-g 時所在的行好了。注意︰輸入行號時,行號是不會在屏幕上顯示出來 - 的。 - - 4. 如果願意,您可以繼續執行步驟1至步驟三。 - - - -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 第四講第二節︰搜索類命令 - - - ** 輸入 / 以及尾隨的字符串可以用以在當前文件中查找該字符串。** - - 1. 在正常模式下輸入 / 字符。您此時會注意到該字符和光標都會出現在屏幕底 - 部,這跟 : 命令是一樣的。 - - 2. 接著輸入 errroor <回車>。那個errroor就是您要查找的字符串。 - - 3. 要查找同上一次的字符串,只需要按 n 鍵。要向相反方向查找同上一次的字 - 符串,請輸入 Shift-N 即可。 - - 4. 如果您想逆向查找字符串,請使用 ? 代替 / 進行。 - ----> When the search reaches the end of the file it will continue at the start. - - "errroor" is not the way to spell error; errroor is an error. - - 提示︰如果查找已經到達文件末尾,查找會自動從文件頭部繼續查找。 - - - -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 第四講第三節︰配對括號的查找 - - - ** 按 % 可以查找配對的括號 )、]、}。** - - 1. 把光標放在本節下面標記有 --> 那一行中的任何一個 (、[ 或 { 處。 - - 2. 接著按 % 字符。 - - 3. 此時光標的位置應當是在配對的括號處。 - - 4. 再次按 % 就可以跳回配對的第一個括號處。 - ----> This ( is a test line with ('s, ['s ] and {'s } in it. )) - -提示︰在程序調試時,這個功能用來查找不配對的括號是很有用的。 - - - - - - -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 第四講第四節︰修正錯誤的方法之一 - - - ** 輸入 :s/old/new/g 可以替換 old 為 new。** - - 1. 請將光標移動到本節中下面標記有 ---> 的那一行。 - - 2. 輸入 :s/thee/the <回車> 。請注意該命令只改變光標所在行的第一個匹配 - 串。 - - 3. 輸入 :s/thee/the/g 則是替換全行的匹配串。 - ----> the best time to see thee flowers is in thee spring. - - 4. 要替換兩行之間出現的每個匹配串,請輸入 :#,#s/old/new/g (#,#代表的是 - 兩行的行號)。輸入 :%s/old/new/g 則是替換整個文件中的每個匹配串。 - - - - -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 第四講小結 - - - 1. Ctrl-g 用于顯示當前光標所在位置和文件狀態信息。Shift-G 用于將光標跳 - 轉至文件最後一行。先敲入一個行號然後按 Shift-G 則是將光標移動至該行 - 號代表的行。 - - 2. 輸入 / 然後緊隨一個字符串是則是在當前所編輯的文檔中向後查找該字符串。 - 輸入問號 ? 然後緊隨一個字符串是則是在當前所編輯的文檔中向前查找該字 - 符串。完成一次查找之後按 n 鍵則是重復上一次的命令,可在同一方向上查 - 找下一個字符串所在;或者按 Shift-N 向相反方向查找下該字符串所在。 - - 3. 如果光標當前位置是括號(、)、[、]、{、},按 % 可以將光標移動到配對的 - 括號上。 - - 4. 在一行內替換頭一個字符串 old 為新的字符串 new,請輸入 :s/old/new - 在一行內替換所有的字符串 old 為新的字符串 new,請輸入 :s/old/new/g - 在兩行內替換所有的字符串 old 為新的字符串 new,請輸入 :#,#s/old/new/g - 在文件內替換所有的字符串 old 為新的字符串 new,請輸入 :%s/old/new/g - 進行全文替換時詢問用戶確認每個替換需添加 c 選項,請輸入 :%s/old/new/gc - - -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 第五講第一節︰在 VIM 內執行外部命令的方法 - - - ** 輸入 :! 然後緊隨著輸入一個外部命令可以執行該外部命令。** - - 1. 按下我們所熟悉的 : 命令設置光標到屏幕底部。這樣就可以讓您輸入命令了。 - - 2. 接著輸入感嘆號 ! 這個字符,這樣就允許您執行外部的 shell 命令了。 - - 3. 我們以 ls 命令為例。輸入 !ls <回車> 。該命令就會列舉出您當前目錄的 - 內容,就如同您在命令行提示符下輸入 ls 命令的結果一樣。如果 !ls 沒起 - 作用,您可以試試 :!dir 看看。 - ----> 提示︰ 所有的外部命令都可以以這種方式執行。 - ----> 提示︰ 所有的 : 命令都必須以 <回車> 告終。 - - - - -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 第五講第二節︰關于保存文件的更多信息 - - - ** 要將對文件的改動保存到文件中,請輸入 :w FILENAME ** - - 1. 輸入 :!dir 或者 :!ls 獲知當前目錄的內容。您應當已知道最後還得敲 - <回車> 吧。 - - 2. 選擇一個尚未存在文件名,比如 TEST 。 - - 3. 接著輸入 :w TEST (此處 TEST 是您所選擇的文件名。) - - 4. 該命令會以 TEST 為文件名保存整個文件 (VIM 教程)。為了確保正確保存, - 請再次輸入 :!dir 查看您的目錄列表內容。 - ----> 請注意︰如果您退出 VIM 然後在以文件名 TEST 為參數進入,那麼該文件內 - 容應該同您保存時的文件內容是完全一樣的。 - - 5. 現在您可以通過輸入 :!rm TEST 來刪除 TEST 文件了。 - - - -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 第五講第三節︰一個具有選擇性的保存命令 - - - ** 要保存文件的部分內容,請輸入 :#,# w FILENAME ** - - 1. 再來執行一次 :!dir 或者 :!ls 獲知當前目錄的內容,然後選擇一個合適的 - 不重名的文件名,比如 TEST 。 - - 2. 接著將光標移動至本頁的最頂端,然後按 CTRL-g 找到該行的行號。別忘了 - 行號哦。 - - 3. 接著把光標移動至本頁的最底端,再按一次 CTRL-g 。也別忘了這個行好哦。 - - 4. 為了只保存文章的某個部分,請輸入 :#,# w TEST 。這裡的 #,# 就是上面 - 要求您記住的行號(頂端行號,底端行號),而 TEST 就是選定的文件名。 - - 5. 最後,用 :!dir 確認文件是否正確保存。但是這次先別刪除掉。 - - - - -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 第五講第四節︰提取和合並文件 - - - ** 要向當前文件中插入另外的文件的內容,請輸入 :r FILENAME ** - - 1. 請鍵入 :!dir 確認您前面創建的 TEST 文件還在。 - - 2. 然後將光標移動至當前頁面的頂端。 - -特別提示︰ 執行步驟3之後您將看到第五講第三節,請屆時再往下移動回到這裡來。 - - 3. 接著通過 :r TEST 將前面創建的名為 TEST 的文件提取進來。 - -特別提示︰您所提取進來的文件將從光標所在位置處開始置入。 - - 4. 為了確認文件已經提取成功,移動光標回到原來的位置就可以注意有兩份第 - 五講第三節,一份是原本,另外一份是來自文件的副本。 - - - -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 第五講小結 - - - 1. :!command 用于執行一個外部命令 command。 - - 請看一些實際例子︰ - :!dir - 用于顯示當前目錄的內容。 - :!rm FILENAME - 用于刪除名為 FILENAME 的文件。 - - 2. :w FILENAME 可將當前 VIM 中正在編輯的文件保存到名為 FILENAME - 的文件中。 - - 3. :#,#w FILENAME 可將當前編輯文件第 # 行至第 # 行的內容保存到文件 - FILENAME 中。 - - 4. :r FILENAME 可提取磁盤文件 FILENAME 並將其插入到當前文件的光標位置 - 後面。 - - - - - - - -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 第六講第一節︰打開類命令 - - - ** 輸入 o 將在光標的下方打開新的一行並進入插入模式。** - - 1. 請將光標移動到本節中下面標記有 ---> 的那一行。 - - 2. 接著輸入小寫的 o 在光標 *下方* 打開新的一行並進入插入模式。 - - 3. 然後復制標記有 ---> 的行並按 <ESC> 鍵退出插入模式而進入正常模式。 - ----> After typing o the cursor is placed on the open line in Insert mode. - - 4. 為了在光標 *上方* 打開新的一行,只需要輸入大寫的 O 而不是小寫的 o - 就可以了。請在下行測試一下吧。當光標處在在該行上時,按 Shift-O可以 - 在該行上方新開一行。 - -Open up a line above this by typing Shift-O while the cursor is on this line. - - - - - -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 第六講第二節︰光標後插入類命令 - - - ** 輸入 a 將可在光標之後插入文本。 ** - - 1. 請在正常模式下通過輸入 $ 將光標移動到本節中下面標記有 ---> 的第一行 - 的末尾。 - - 2. 接著輸入小寫的 a 則可在光標之後插入文本了。大寫的 A 則可以直接在行 - 末插入文本。 - -提示︰輸入大寫 A 的操作方法可以在行末插入文本,避免了輸入 i,光標定位到 - 最後一個字符,輸入的文本,<ESC> 回復正常模式,箭頭右鍵移動光標以及 - x 刪除當前光標所在位置字符等等諸多繁雜的操作。 - - 3. 操作之後第一行就可以補充完整了。請注意光標後插入文本與插入模式是基 - 本完全一致的,只是文本插入的位置定位稍有不同罷了。 - ----> This line will allow you to practice ----> This line will allow you to practice appending text to the end of a line. - - - -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 第六講第三節︰另外一個置換類命令的版本 - - - ** 輸入大寫的 R 可連續替換多個字符。** - - 1. 請將光標移動到本節中下面標記有 ---> 的第一行。 - - 2. 移動光標到第一行中不同于標有 ---> 的第二行的第一個單詞的開始,即單 - 詞 last 處。 - - 3. 然後輸入大寫的 R 開始把第一行中的不同于第二行的剩余字符逐一輸入,就 - 可以全部替換掉原有的字符而使得第一行完全雷同第二行了。 - ----> To make the first line the same as the last on this page use the keys. ----> To make the first line the same as the second, type R and the new text. - - 4. 請注意︰如果您按 <ESC> 退出置換模式回復正常模式,尚未替換的文本將仍 - 然保持原狀。 - - - - - -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 第六講第四節︰設置類命令的選項 - - - ** 設置可使查找或者替換可忽略大小寫的選項 ** - - - 1. 要查找單詞 ignore 可在正常模式下輸入 /ignore 。要重復查找該詞,可以 - 重復按 n 鍵。 - - 2. 然後設置 ic 選項(ic就是英文忽略大小寫Ignore Case的首字母縮寫詞),即 - 輸入︰ - :set ic - - 3. 現在可以通過鍵入 n 鍵再次查找單詞 ignore。重復查找可以重復鍵入 n 鍵。 - - 4. 然後設置 hlsearch 和 incsearch 這兩個選項,輸入以下內容︰ - :set hls is - - 5. 現在可以再次輸入查找命令,看看會有什麼效果︰ - /ignore - -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 第六講小結 - - - 1. 輸入小寫的 o 可以在光標下方打開新的一行並將光標置于新開的行首,進入 - 插入模式。 - 輸入大寫的 O 可以在光標上方打開新的一行並將光標置于新開的行首,進入 - 插入模式。 - - 2. 輸入小寫的 a 可以在光標所在位置之後插入文本。 - 輸入大寫的 A 可以在光標所在行的行末之後插入文本。 - - 3. 輸入大寫的 R 將進入替換模式,直至按 <ESC> 鍵退出替換模式而進入正常 - 模式。 - - 4. 輸入 :set xxx 可以設置 xxx 選項。 - - - - - - - - - -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 第七講︰在線幫助命令 - - ** 使用在線幫助系統 ** - - Vim 擁有一個細致全面的在線幫助系統。要啟動該幫助系統,請選擇如下三種方 - 法之一︰ - - 按下 <HELP> 鍵 (如果鍵盤上有的話) - - 按下 <F1> 鍵 (如果鍵盤上有的話) - - 輸入 :help <回車> - - 輸入 :q <回車> 可以關閉幫助窗口。 - - 提供一個正確的參數給":help"命令,您可以找到關于該主題的幫助。請試驗以 - 下參數(可別忘了按回車鍵哦。:)︰ - - :help w <回車> - :help c_<T <回車> - :help insert-index <回車> - :help user-manual <回車> - - - - -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 第八講︰創建一個啟動腳本 - - ** 啟用vim的功能 ** - - Vim的功能特性要比vi多得多,但大部分功能都沒有缺省激活。為了啟動更多的 - 功能,您得創建一個vimrc文件。 - - 1. 開始編輯vimrc文件,這取決于您所使用的操作系統︰ - - :edit ~/.vimrc 這是Unix系統所使用的命令 - :edit $VIM/_vimrc 這是Windows系統所使用的命令 - - 2. 接著導入vimrc范例文件︰ - - :read $VIMRUNTIME/vimrc_example.vim - - 3. 保存文件,命令為︰ - - :write - - 在下次您啟動vim的時候,編輯器就會有了語法高亮的功能。您可以繼續把您喜 - 歡的其它功能設置添加到這個vimrc文件中。 - -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - - vim 教程到此結束。本教程只是為了簡明地介紹一下vim編輯器,但已足以讓您 - 很容易學會使用本編輯器了。毋庸質疑,vim還有很多很多的命令,本教程所介 - 紹的還差得遠著呢。所以您要精通的話,還望繼續努力哦。下一步您可以閱讀 - vim手冊,使用的命令是︰ - :help user-manual - - 為了更進一步的參考和學習,以下這本書值得推薦︰ - - Vim - Vi Improved - 作者︰Steve Oualline - 出版社︰New Riders - - 這是第一本完全講解vim的書籍。對于初學者特別有用。其中還包含有大量實例 - 和圖示。欲知詳情,請訪問 http://iccf-holland.org/click5.html - - 以下這本書比較老了而且內容主要是vi而不是vim,但是也值得推薦︰ - - Learning the Vi Editor - 作者︰Linda Lamb - 出版社︰O'Reilly & Associates Inc. - - 這是一本不錯的書,通過它您幾乎能夠了解到全部vi能夠做到的事情。此書的第 - 六個版本也包含了一些關于vim的信息。 - - 本教程是由來自Calorado School of Minese的Michael C. Pierce、Robert K. - Ware 所編寫的,其中來自Colorado State University的Charles Smith提供了 - 很多創意。編者通信地址是︰ - - bware@mines.colorado.edu - - 本教程已由Bram Moolenaar專為vim進行修訂。 - - - - 譯制者附言︰ - =========== - 簡體中文教程翻譯版之譯制者為梁昌泰 <beos@turbolinux.com.cn>,還有 - 另外一個聯系地址︰linuxrat@gnuchina.org。 - - 繁體中文教程是從簡體中文教程翻譯版使用 Debian GNU/Linux 中文項目小 - 組的于廣輝先生編寫的中文漢字轉碼器 autoconvert 轉換而成的,並對轉 - 換的結果做了一些細節的改動。 - - 變更記錄︰ - ========= - 2002年08月30日 梁昌泰 <beos@turbolinux.com.cn> - 感謝 RMS@SMTH 的指正,將多處錯誤修正。 - - 2002年04月22日 梁昌泰 <linuxrat@gnuchina.org> - 感謝 xuandong@sh163.net 的指正,將兩處錯別字修正。 - - 2002年03月18日 梁昌泰 <linuxrat@gnuchina.org> - 根據Bram Molenaar先生在2002年03月16日的來信要求,將vimtutor1.4中譯 - 版升級到vimtutor1.5。 - - 2001年11月15日 梁昌泰 <linuxrat@gnuchina.org> - 將vimtutor1.4中譯版提交給Bram Molenaar和Sven Guckes。 - -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ diff --git a/runtime/tutor/tutor.zh_cn.utf-8 b/runtime/tutor/tutor.zh_cn.utf-8 index 0821ef6e4..3ff031f7c 100644 --- a/runtime/tutor/tutor.zh_cn.utf-8 +++ b/runtime/tutor/tutor.zh_cn.utf-8 @@ -1,30 +1,32 @@ =============================================================================== -= 欢 迎 阅 读 《 V I M 教 程 》 —— 版本 1.5 = += 欢 迎 阅 读 《 V I M 教 程 》 —— 版本 1.7 = =============================================================================== - vim 是一个具有很多命令的功能非常强大的编辑器。限于篇幅,在本教程当中 + + Vim 是一个具有很多命令的功能非常强大的编辑器。限于篇幅,在本教程当中 就不详细介绍了。本教程的设计目标是讲述一些必要的基本命令,而掌握好这 - 些命令,您就能够很容易将vim当作一个通用的万能编辑器来使用了。 + 些命令,您就能够很容易地将 Vim 当作一个通用编辑器来使用了。 完成本教程的内容大约需要25-30分钟,取决于您训练的时间。 + 注意: 每一节的命令操作将会更改本文。推荐您复制本文的一个副本,然后在副本上 进行训练(如果您是通过"vimtutor"来启动教程的,那么本文就已经是副本了)。 - 切记一点∶本教程的设计思路是在使用中进行学习的。也就是说,您需要通过 + 切记一点:本教程的设计思路是在使用中进行学习的。也就是说,您需要通过 执行命令来学习它们本身的正确用法。如果您只是阅读而不操作,那么您可能 会很快遗忘这些命令的! 好了,现在请确定您的Shift-Lock(大小写锁定键)还没有按下,然后按键盘上 - 的字母键 j 足够多的次数来移动光标,直到第一节的内容能够完全充满屏幕。 + 的字母键 j 足够多次来移动光标,直到第一节的内容能够完全充满屏幕。 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 第一讲第一节∶移动光标 + 第一讲第一节:移动光标 - ※※ 要移动光标,请依照说明分别按下 h、j、k、l 键。 ※※ + ** 要移动光标,请依照说明分别按下 h、j、k、l 键。 ** ^ - k 提示∶ h 的键位于左边,每次按下就会向左移动。 + k 提示: h 的键位于左边,每次按下就会向左移动。 < h l > l 的键位于右边,每次按下就会向右移动。 j j 键看起来很象一支尖端方向朝下的箭头。 v @@ -35,43 +37,38 @@ ---> 现在您应该已经学会如何移动到下一讲吧。 - 3. 现在请使用下行键,将光标移动到第二讲。 + 3. 现在请使用下行键,将光标移动到第一讲第二节。 -提示∶如果您不敢确定您所按下的字母,请按下<ESC>键回到正常(Normal)模式。 +提示:如果您不敢确定您所按下的字母,请按下<ESC>键回到正常(Normal)模式。 然后再次从键盘输入您想要的命令。 -提示∶光标键应当也能正常工作的。但是使用hjkl键,在习惯之后您就能够快速 - 地在屏幕内四处移动光标了。 +提示:光标键应当也能正常工作的。但是使用hjkl键,在习惯之后您就能够更快 + 地在屏幕内四处移动光标。真的是这样! ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 第一讲第二节∶VIM的进入和退出 - + 第一讲第二节:VIM的进入和退出 - !! 特别提示∶敬请阅读完整本一节的内容,然后才能执行以下所讲解的命令。 - 1. 请按<ESC>键(这是为了确保您处在正常模式)。 + !! 特别提示:敬请阅读本一节的完整内容,然后再执行以下所讲解的命令。 - 2. 然后输入∶ :q! <回车> + 1. 按<ESC>键(这是为了确保您处在正常模式)。 ----> 这种方式的退出编辑器绝不会保存您进入编辑器以来所做的改动。 - 如果您想保存更改再退出,请输入∶ - :wq <回车> + 2. 然后输入: :q! <回车> + 这种方式的退出编辑器会丢弃您进入编辑器以来所做的改动。 - 3. 如果您看到了命令行提示符,请输入能够带您回到本教程的命令,那就是∶ + 3. 如果您看到了命令行提示符,请输入能够带您回到本教程的命令,那就是: + vimtutor <回车> - vimtutor <回车> + 4. 如果您自信已经牢牢记住了这些步骤的话,请从步骤1执行到步骤3退出,然 + 后再次进入编辑器。 - 通常情况下您也可以用这种方式∶ +提示: :q! <回车> 会丢弃您所做的任何改动。几讲之后您将学会如何保存改动到文件。 - vim tutor <回车> + 5. 将光标下移到第一讲第三节。 ----> 这里的 'vim' 表示进入vim编辑器,而 'tutor'则是您准备要编辑的文件。 - - 4. 如果您自信已经牢牢记住了这些步骤的话,请从步骤1执行到步骤3退出,然 - 后再次进入编辑器。接着将光标移动到第一讲第三节来继续我们的教程讲解。 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 第一讲第三节∶文本编辑之删除 + 第一讲第三节:文本编辑之删除 ** 在正常(Normal)模式下,可以按下 x 键来删除光标所在位置的字符。** @@ -86,89 +83,130 @@ ---> The ccow jumpedd ovverr thhe mooon. - 5. 好了,该行已经修正了,下一节内容是第一讲第四节。 + 5. 好了,该行已经修正了,下面是第一讲第四节。 -特别提示∶在您浏览本教程时,不要强行记忆。记住一点∶在使用中学习。 +特别提示:在浏览本教程时,不要强行记忆。记住一点:在使用中学习。 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 第一讲第四节∶文本编辑之插入 + 第一讲第四节:文本编辑之插入 ** 在正常模式下,可以按下 i 键来插入文本。** 1. 请将光标移动到本节中下面标记有 ---> 的第一行。 - 2. 为了使得第一行内容雷同于第二行,请将光标移至文本第一个字符准备插入 + 2. 为了使得第一行内容雷同于第二行,请将光标移至文本第一个准备插入字符 的位置。 3. 然后按下 i 键,接着输入必要的文本字符。 - 4. 所有文本都修正完毕,请按下 <ESC> 键返回正常模式。 + 4. 每个错误修正完毕后,请按下 <ESC> 键返回正常模式。 重复步骤2至步骤4以便修正句子。 ---> There is text misng this . ---> There is some text missing from this line. - 5. 如果您对文本插入操作已经很满意,请接着阅读下面的小结。 + 5. 如果您对文本插入操作已经很满意,请接着阅读下面的第一讲第五节。 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 第一讲小结 + 第一讲第五节:文本编辑之添加 - 1. 光标在屏幕文本中的移动既可以用箭头键,也可以使用 hjkl 字母键。 - h (左移) j (下行) k (上行) l (右移) + ** 按 A 键以添加文本。 ** + + 1. 移动光标到下面第一个标记有 ---> 的一行。 + 光标放在那一行的哪个字符上并不重要。 + + 2. 按 A 键输入必要的添加内容。 + + 3. 文本添加完毕后,按 <ESC> 键回到正常模式。 + + 4. 移动光标到下面第二个标记有 ---> 的一行。重复步骤2和步骤3以改正这个句子。 + +---> There is some text missing from th + There is some text missing from this line. +---> There is also some text miss + There is also some text missing here. + + 5. 当您对添加文本操作感到满意时,请继续学习第一讲第六节。 - 2. 欲进入vim编辑器(从命令行提示符),请输入∶vim 文件名 <回车> +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 第一讲第六节:编辑文件 + + ** 使用 :wq 以保存文件并退出。 ** + + 特别提示:在执行以下步骤之前,请先读完整个小节! + + 1. 如您在第一讲第二节中所做的那样退出本教程: :q! + 或者,如果您可以访问另一个终端,请在那里执行以下操作。 + + 2. 在 shell 的提示符下输入命令: vim tutor <回车> + 'vim'是启动 Vim 编辑器的命令,'tutor'是您希望编辑的文件的名字。 + 请使用一个可以改动的文件。 + + 3. 使用您在前面的教程中学到的命令插入删除文本。 + + 4. 保存改动过的文件并退出 Vim,按这些键: :wq <回车> - 3. 欲退出vim编辑器,请输入以下命令放弃所有修改∶ + 5. 如果您在步骤1中已经退出 vimtutor,请重启 vimtutor 移动到下面的小结一节。 - <ESC> :q! <回车> + 6. 阅读完以上步骤,弄懂它们的意义,然后在实践中进行练习。 + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 第一讲小结 + + + 1. 光标在屏幕文本中的移动既可以用箭头键,也可以使用 hjkl 字母键。 + h (左移) j (下行) k (上行) l (右移) - 或者输入以下命令保存所有修改∶ + 2. 欲进入 Vim 编辑器(从命令行提示符),请输入:vim 文件名 <回车> - <ESC> :wq <回车> + 3. 欲退出 Vim 编辑器,请输入 <ESC> :q! <回车> 放弃所有改动。 + 或者输入 <ESC> :wq <回车> 保存改动。 - 4. 在正常模式下删除光标所在位置的字符,请按∶ x + 4. 在正常模式下删除光标所在位置的字符,请按: x - 5. 在正常模式下要在光标所在位置开始插入文本,请按∶ + 5. 欲插入或添加文本,请输入: - i 输入必要文本 <ESC> + i 输入欲插入文本 <ESC> 在光标前插入文本 + A 输入欲添加文本 <ESC> 在一行后添加文本 -特别提示∶按下 <ESC> 键会带您回到正常模式或者取消一个不期望或者部分完成 +特别提示:按下 <ESC> 键会带您回到正常模式或者撤消一个不想输入或部分完整 的命令。 好了,第一讲到此结束。下面接下来继续第二讲的内容。 + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 第二讲第一节∶删除类命令 + 第二讲第一节:删除类命令 - ** 输入 dw 可以从光标处删除至一个单字/单词的末尾。** + ** 输入 dw 可以从光标处删除至一个单词的末尾。** 1. 请按下 <ESC> 键确保您处于正常模式。 2. 请将光标移动到本节中下面标记有 ---> 的那一行。 - 3. 请将光标移至准备要删除的单词的开始。 + 3. 请将光标移至准备要删除的单词的起始处。 4. 接着输入 dw 删除掉该单词。 - 特别提示∶您所输入的 dw 会在您输入的同时出现在屏幕的最后一行。如果您输 - 入有误,请按下 <ESC> 键取消,然后重新再来。 + 特别提示:当您输入时,字母 d 会同时出现在屏幕的最后一行。Vim 在等待您输入 + 字母 w。如果您看到的是除 d 外的其他字符,那表明您按错了;请按下 <ESC> 键, + 然后重新再来。 ---> There are a some words fun that don't belong paper in this sentence. - 5. 重复步骤3至步骤4,直至句子修正完毕。接着继续第二讲第二节内容。 - + 5. 重复步骤3和步骤4,直至句子修正完毕。接着继续第二讲第二节内容。 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 第二讲第二节∶其他删除类命令 + 第二讲第二节:更多删除类命令 ** 输入 d$ 从当前光标删除到行末。** @@ -191,58 +229,102 @@ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 第二讲第三节∶关于命令和对象 + 第二讲第三节:关于命令和对象 - 删除命令 d 的格式如下∶ + 许多改变文本的命令都由一个操作符和一个动作构成。 + 使用删除操作符 d 的删除命令的格式如下: - [number] d object 或者 d [number] object + d motion - 其意如下∶ - number - 代表执行命令的次数(可选项,缺省设置为 1 )。 - d - 代表删除。 - object - 代表命令所要操作的对象(下面有相关介绍)。 + 其中: + d - 删除操作符。 + motion - 操作符的操作对象(在下面列出)。 - 一个简短的对象列表∶ - w - 从当前光标当前位置直到单字/单词末尾,包括空格。 - e - 从当前光标当前位置直到单字/单词末尾,但是 *不* 包括空格。 + 一个简短的动作列表: + w - 从当前光标当前位置直到下一个单词起始处,不包括它的第一个字符。 + e - 从当前光标当前位置直到单词末尾,包括最后一个字符。 $ - 从当前光标当前位置直到当前行末。 -特别提示∶ - 对于勇于探索者,请在正常模式下面仅按代表相应对象的键而不使用命令,则 + 因此输入 de 会从当前光标位置删除到单词末尾。 + +特别提示: + 对于勇于探索者,请在正常模式下面仅按代表相应动作的键而不使用操作符,您 将看到光标的移动正如上面的对象列表所代表的一样。 +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 第二讲第四节:使用计数指定动作 + + + ** 在动作前输入数字会使它重复那么多次。 ** + + 1. 移动光标到下面标记有 ---> 的一行的开始。 + + 2. 输入 2w 使光标向前移动两个单词。 + + 3. 输入 3e 使光标向前移动到第三个单词的末尾。 + + 4. 输入 0 (数字零) 移动光标到行首。 + + 5. 重复步骤2和步骤3,尝试不同的数字。 + +---> This is just a line with words you can move around in. + + 6. 请继续学习第二讲第五节。 + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 第二讲第五节:使用计数以删除更多 + + + ** 使用操作符时输入数字可以使它重复那么多次。 ** + + 上面已经提到过删除操作符和动作的组合,您可以在组合中动作之前插入一个数字以 + 删除更多: + d number(数字) motion + + 1. 移动光标到下面标记有 ---> 的一行中第一个大写字母单词上。 + + 2. 输入 d2w 以删除两个大写字母单词。 + + 3. 重复步骤1和步骤2,使用不同的数字使得用一个命令就能删除全部相邻的大写字母 + 单词 + +---> this ABC DE line FGHI JK LMN OP of words is Q RS TUV cleaned up. + + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 第二讲第四节∶对象命令的特殊情况 + 第二讲第六节:操作整行 - ** 输入 dd 可以删除整一个当前行。 ** + ** 输入 dd 可以删除整一个当前行。 ** - 鉴于整行删除的高频度,VIM 的设计者决定要简化整行删除,仅需要在同一行上 + 鉴于整行删除的高频度,Vi 的设计者决定要简化整行删除操作,您仅需要在同一行上 击打两次 d 就可以删除掉光标所在的整行了。 1. 请将光标移动到本节中下面的短句段落中的第二行。 2. 输入 dd 删除该行。 3. 然后移动到第四行。 - 4. 接着输入 2dd (还记得前面讲过的 number-command-object 吗?) 删除两行。 + 4. 接着输入 2dd 删除两行。 - 1) Roses are red, - 2) Mud is fun, - 3) Violets are blue, - 4) I have a car, - 5) Clocks tell time, - 6) Sugar is sweet - 7) And so are you. +---> 1) Roses are red, +---> 2) Mud is fun, +---> 3) Violets are blue, +---> 4) I have a car, +---> 5) Clocks tell time, +---> 6) Sugar is sweet +---> 7) And so are you. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 第二讲第五节∶撤消类命令 + 第二讲第七节:撤消类命令 - ** 输入 u 来撤消最后执行的命令,输入 U 来修正整行。** + ** 输入 u 来撤消最后执行的命令,输入 U 来撤消对整行的修改。 ** 1. 请将光标移动到本节中下面标记有 ---> 的那一行,并将其置于第一个错误 处。 @@ -251,8 +333,8 @@ 4. 这次要使用 x 修正本行的所有错误。 5. 现在输入一个大写的 U ,恢复到该行的原始状态。 6. 接着多次输入 u 以撤消 U 以及更前的命令。 - 7. 然后多次输入 CTRL-R (先按下 CTRL 键不放开,接着输入 R 键) ,这样就 - 可以执行恢复命令,也就是撤消掉撤消命令。 + 7. 然后多次输入 CTRL-R (先按下 CTRL 键不放开,接着按 R 键),这样就 + 可以重做被撤消的命令,也就是撤消掉撤消命令。 ---> Fiix the errors oon thhis line and reeplace them witth undo. @@ -265,105 +347,105 @@ 第二讲小结 - 1. 欲从当前光标删除至单字/单词末尾,请输入∶dw - - 2. 欲从当前光标删除至当前行末尾,请输入∶d$ - - 3. 欲删除整行,请输入∶dd + 1. 欲从当前光标删除至下一个单词,请输入:dw + 2. 欲从当前光标删除至当前行末尾,请输入:d$ + 3. 欲删除整行,请输入:dd - 4. 在正常模式下一个命令的格式是∶ + 4. 欲重复一个动作,请在它前面加上一个数字:2w + 5. 在正常模式下修改命令的格式是: + operator [number] motion + 其中: + operator - 操作符,代表要做的事情,比如 d 代表删除 + [number] - 可以附加的数字,代表动作重复的次数 + motion - 动作,代表在所操作的文本上的移动,例如 w 代表单词(word), + $ 代表行末等等。 - [number] command object 或者 command [number] object - 其意是∶ - number - 代表的是命令执行的次数 - command - 代表要做的事情,比如 d 代表删除 - object - 代表要操作的对象,比如 w 代表单字/单词,$ 代表到行末等等。 - $ (to the end of line), etc. + 6. 欲移动光标到行首,请按数字0键:0 - 5. 欲撤消以前的操作,请输入∶u (小写的u) - 欲撤消在一行中所做的改动,请输入∶U (大写的U) - 欲撤消以前的撤消命令,恢复以前的操作结果,请输入∶CTRL-R + 7. 欲撤消以前的操作,请输入:u (小写的u) + 欲撤消在一行中所做的改动,请输入:U (大写的U) + 欲撤消以前的撤消命令,恢复以前的操作结果,请输入:CTRL-R ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 第三讲第一节∶置入类命令 + 第三讲第一节:置入类命令 - ** 输入 p 将最后一次删除的内容置入光标之后 ** + ** 输入 p 将最后一次删除的内容置入光标之后。 ** - 1. 请将光标移动到本节中下面示范段落的首行。 + 1. 请将光标移动到本节中下面第一个标记有 ---> 的一行。 - 2. 输入 dd 将该行删除,这样会将该行保存到vim的缓冲区中。 + 2. 输入 dd 将该行删除,这样会将该行保存到 Vim 的一个寄存器中。 - 3. 接着将光标移动到准备置入的位置的上方。记住∶是上方哦。 + 3. 接着将光标移动到 c) 一行,即准备置入的位置的上方。记住:是上方哦。 - 4. 然后在正常模式下(<ESC>键进入),输入 p 将该行粘贴置入。 + 4. 然后在正常模式下(<ESC>键进入)输入 p 将该行粘贴置入。 5. 重复步骤2至步骤4,将所有的行依序放置到正确的位置上。 - d) Can you learn too? - b) Violets are blue, - c) Intelligence is learned, - a) Roses are red, +---> d) Can you learn too? +---> b) Violets are blue, +---> c) Intelligence is learned, +---> a) Roses are red, ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 第三讲第二节∶替换类命令 + 第三讲第二节:替换类命令 ** 输入 r 和一个字符替换光标所在位置的字符。** 1. 请将光标移动到本节中下面标记有 ---> 的第一行。 - 2. 请移动光标到第一个错误的适当位置。 + 2. 请移动光标到第一个出错的位置。 - 3. 接着输入 r ,这样就能将错误替换掉了。 + 3. 接着输入 r 和要替换成的字符,这样就能将错误替换掉了。 4. 重复步骤2和步骤3,直到第一行已经修改完毕。 ---> Whan this lime was tuoed in, someone presswd some wrojg keys! ---> When this line was typed in, someone pressed some wrong keys! - 5. 然后我们继续学校第三讲第三节。 + 5. 然后我们继续学习第三讲第三节。 -特别提示∶切记您要在使用中学习,而不是在记忆中学习。 +特别提示:切记您要在使用中学习,而不是在记忆中学习。 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 第三讲第三节∶更改类命令 + 第三讲第三节:更改类命令 - ** 要改变一个单字/单词的部分或者全部,请输入 cw ** + ** 要改变文本直到一个单词的末尾,请输入 ce ** 1. 请将光标移动到本节中下面标记有 ---> 的第一行。 2. 接着把光标放在单词 lubw 的字母 u 的位置那里。 - 3. 然后输入 cw 就可以修正该单词了(在本例这里是输入 ine 。) + 3. 然后输入 cw 以及正确的单词(在本例中是输入 ine )。 4. 最后按 <ESC> 键,然后光标定位到下一个错误第一个准备更改的字母处。 5. 重复步骤3和步骤4,直到第一个句子完全雷同第二个句子。 ----> This lubw has a few wptfd that mrrf changing usf the change command. ----> This line has a few words that need changing using the change command. +---> This lubw has a few wptfd that mrrf changing usf the change operator. +---> This line has a few words that need changing using the change operator. -提示∶请注意 cw 命令不仅仅是替换了一个单词,也让您进入文本插入状态了。 +提示:请注意 ce 命令不仅仅是删除了一个单词,它也让您进入插入模式了。 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 第三讲第四节∶使用c指令的其他更改类命令 + 第三讲第四节:使用c更改更多 - ** 更改类指令可以使用同删除类命令所使用的对象参数。** + ** 更改类操作符可以与删除中使用的同样的动作配合使用。 ** - 1. 更改类指令的工作方式跟删除类命令是一致的。操作格式是∶ + 1. 更改类操作符的工作方式跟删除类是一致的。操作格式是: - [number] c object 或者 c [number] object + c [number] motion - 2. 对象参数也是一样的,比如 w 代表单字/单词,$代表行末等等。 + 2. 动作参数(motion)也是一样的,比如 w 代表单词,$代表行末等等。 3. 请将光标移动到本节中下面标记有 ---> 的第一行。 @@ -377,55 +459,56 @@ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 第三讲小结 + 第三讲小结 - 1. 要重新置入已经删除的文本内容,请输入小写字母 p。该操作可以将已删除 + 1. 要重新置入已经删除的文本内容,请按小写字母 p 键。该操作可以将已删除 的文本内容置于光标之后。如果最后一次删除的是一个整行,那么该行将置 于当前光标所在行的下一行。 2. 要替换光标所在位置的字符,请输入小写的 r 和要替换掉原位置字符的新字 符即可。 - 3. 更改类命令允许您改变指定的对象,从当前光标所在位置直到对象的末尾。 - 比如输入 cw 可以替换当前光标到单词的末尾的内容;输入 c$ 可以替换当 + 3. 更改类命令允许您改变从当前光标所在位置直到动作指示的位置中间的文本。 + 比如输入 ce 可以替换当前光标到单词的末尾的内容;输入 c$ 可以替换当 前光标到行末的内容。 - 4. 更改类命令的格式是∶ + 4. 更改类命令的格式是: - [number] c object 或者 c [number] object + c [number] motion -下面我们继续学习下一讲。 +现在我们继续学习下一讲。 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 第四讲第一节∶定位及文件状态 + 第四讲第一节:定位及文件状态 + ** 输入 CTRL-G 显示当前编辑文件中当前光标所在行位置以及文件状态信息。 + 输入大写 G 则直接跳转到文件中的某一指定行。** - ** 输入 CTRL-g 显示当前编辑文件中当前光标所在行位置以及文件状态信息。 - 输入 SHIFT-G 则直接跳转到文件中的某一指定行。** + 提示:切记要先通读本节内容,之后才可以执行以下步骤!!! - 提示∶切记要先通读本节内容,之后才可以执行以下步骤!!! + 1. 按下 CTRL 键不放开然后按 g 键。我们称这个键组合为 CTRL-G。 + 您会看到页面最底部出现一个状态信息行,显示的内容是当前编辑的文件名 + 和文件中光标位置。请记住行号,它会在步骤3中用到。 - 1. 按下 CTRL 键不放开然后按 g 键。然后就会看到页面最底部出现一个状态信 - 息行,显示的内容是当前编辑的文件名和文件的总行数。请记住步骤3的行号。 +提示:您也许会在屏幕的右下角看到光标位置,这会在 'ruler' 选项设置时发生 + (参见 :help 'ruler') - 2. 按下 SHIFT-G 键可以使得当前光标直接跳转到文件最后一行。 - - 3. 输入您曾停留的行号,然后按下 SHIFT-G。这样就可以返回到您第一次按下 - CTRL-g 时所在的行好了。注意∶输入行号时,行号是不会在屏幕上显示出来 - 的。 - - 4. 如果愿意,您可以继续执行步骤1至步骤三。 + 2. 输入大写 G 可以使得当前光标直接跳转到文件最后一行。 + 输入 gg 可以使得当前光标直接跳转到文件第一行。 + 3. 输入您曾停留的行号,然后输入大写 G。这样就可以返回到您第一次按下 + CTRL-G 时所在的行了。 + 4. 如果您觉得没问题的话,请执行步骤1至步骤3的操作进行练习。 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 第四讲第二节∶搜索类命令 + 第四讲第二节:搜索类命令 - ** 输入 / 以及尾随的字符串可以用以在当前文件中查找该字符串。** + ** 输入 / 加上一个字符串可以用以在当前文件中查找该字符串。** 1. 在正常模式下输入 / 字符。您此时会注意到该字符和光标都会出现在屏幕底 部,这跟 : 命令是一样的。 @@ -433,23 +516,22 @@ 2. 接着输入 errroor <回车>。那个errroor就是您要查找的字符串。 3. 要查找同上一次的字符串,只需要按 n 键。要向相反方向查找同上一次的字 - 符串,请输入 Shift-N 即可。 + 符串,请输入大写 N 即可。 4. 如果您想逆向查找字符串,请使用 ? 代替 / 进行。 ----> When the search reaches the end of the file it will continue at the start. - - "errroor" is not the way to spell error; errroor is an error. - - 提示∶如果查找已经到达文件末尾,查找会自动从文件头部继续查找。 - + 5. 要回到您之前的位置按 CTRL-O (按住 Ctrl 键不放同时按下字母 o)。重复按可以 + 回退更多步。CTRL-I 会跳转到较新的位置。 +---> "errroor" is not the way to spell error; errroor is an error. +提示:如果查找已经到达文件末尾,查找会自动从文件头部继续查找,除非 + 'wrapscan' 选项被复位。 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 第四讲第三节∶配对括号的查找 + 第四讲第三节:配对括号的查找 - ** 按 % 可以查找配对的括号 )、]、}。** + ** 输入 % 可以查找配对的括号 )、]、}。** 1. 把光标放在本节下面标记有 --> 那一行中的任何一个 (、[ 或 { 处。 @@ -459,17 +541,17 @@ 4. 再次按 % 就可以跳回配对的第一个括号处。 ----> This ( is a test line with ('s, ['s ] and {'s } in it. )) - -提示∶在程序调试时,这个功能用来查找不配对的括号是很有用的。 + 5. 移动光标到另一个 (、)、[、]、{ 或 } 处,按 % 查看其所作所为。 +---> This ( is a test line with ('s, ['s ] and {'s } in it. )) +提示:在程序调试时,这个功能用来查找不配对的括号是很有用的。 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 第四讲第四节∶修正错误的方法之一 + 第四讲第四节:替换命令 ** 输入 :s/old/new/g 可以替换 old 为 new。** @@ -479,46 +561,48 @@ 2. 输入 :s/thee/the <回车> 。请注意该命令只改变光标所在行的第一个匹配 串。 - 3. 输入 :s/thee/the/g 则是替换全行的匹配串。 - ----> the best time to see thee flowers is in thee spring. - - 4. 要替换两行之间出现的每个匹配串,请输入 :#,#s/old/new/g (#,#代表的是 - 两行的行号)。输入 :%s/old/new/g 则是替换整个文件中的每个匹配串。 - + 3. 输入 :s/thee/the/g 则是替换全行的匹配串,该行中所有的 "thee" 都会被 + 改变。 +---> thee best time to see thee flowers is in thee spring. + 4. 要替换两行之间出现的每个匹配串,请 + 输入 :#,#s/old/new/g 其中 #,# 代表的是替换操作的若干行中 + 首尾两行的行号。 + 输入 :%s/old/new/g 则是替换整个文件中的每个匹配串。 + 输入 :%s/old/new/gc 会找到整个文件中的每个匹配串,并且对每个匹配串 + 提示是否进行替换。 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 第四讲小结 - 1. Ctrl-g 用于显示当前光标所在位置和文件状态信息。Shift-G 用于将光标跳 - 转至文件最后一行。先敲入一个行号然后按 Shift-G 则是将光标移动至该行 - 号代表的行。 + 1. CTRL-G 用于显示当前光标所在位置和文件状态信息。 + G 用于将光标跳转至文件最后一行。 + 先敲入一个行号然后输入大写 G 则是将光标移动至该行号代表的行。 + gg 用于将光标跳转至文件第一行。 - 2. 输入 / 然后紧随一个字符串是则是在当前所编辑的文档中向后查找该字符串。 - 输入问号 ? 然后紧随一个字符串是则是在当前所编辑的文档中向前查找该字 - 符串。完成一次查找之后按 n 键则是重复上一次的命令,可在同一方向上查 - 找下一个字符串所在;或者按 Shift-N 向相反方向查找下该字符串所在。 + 2. 输入 / 然后紧随一个字符串是在当前所编辑的文档中正向查找该字符串。 + 输入 ? 然后紧随一个字符串则是在当前所编辑的文档中反向查找该字符串。 + 完成一次查找之后按 n 键是重复上一次的命令,可在同一方向上查 + 找下一个匹配字符串所在;或者按大写 N 向相反方向查找下一匹配字符串所在。 + CTRL-O 带您跳转回较旧的位置,CTRL-I 则带您到较新的位置。 - 3. 如果光标当前位置是括号(、)、[、]、{、},按 % 可以将光标移动到配对的 - 括号上。 + 3. 如果光标当前位置是括号(、)、[、]、{、},按 % 会将光标移动到配对的括号上。 4. 在一行内替换头一个字符串 old 为新的字符串 new,请输入 :s/old/new 在一行内替换所有的字符串 old 为新的字符串 new,请输入 :s/old/new/g 在两行内替换所有的字符串 old 为新的字符串 new,请输入 :#,#s/old/new/g 在文件内替换所有的字符串 old 为新的字符串 new,请输入 :%s/old/new/g - 进行全文替换时询问用户确认每个替换需添加 c 选项,请输入 :%s/old/new/gc - + 进行全文替换时询问用户确认每个替换需添加 c 标志 :%s/old/new/gc ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 第五讲第一节∶在 VIM 内执行外部命令的方法 + 第五讲第一节:在 VIM 内执行外部命令的方法 - ** 输入 :! 然后紧随著输入一个外部命令可以执行该外部命令。** + ** 输入 :! 然后紧接着输入一个外部命令可以执行该外部命令。** - 1. 按下我们所熟悉的 : 命令设置光标到屏幕底部。这样就可以让您输入命令了。 + 1. 按下我们所熟悉的 : 命令使光标移动到屏幕底部。这样您就可以输入一行命令了。 2. 接着输入感叹号 ! 这个字符,这样就允许您执行外部的 shell 命令了。 @@ -526,15 +610,17 @@ 内容,就如同您在命令行提示符下输入 ls 命令的结果一样。如果 !ls 没起 作用,您可以试试 :!dir 看看。 ----> 提示∶ 所有的外部命令都可以以这种方式执行。 +提示:所有的外部命令都可以以这种方式执行,包括带命令行参数的那些。 + +提示:所有的 : 命令都必须以敲 <回车> 键结束。从今以后我们就不会总是提到这一点 + 了。 ----> 提示∶ 所有的 : 命令都必须以 <回车> 告终。 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 第五讲第二节∶关于保存文件的更多信息 + 第五讲第二节:关于保存文件的更多信息 ** 要将对文件的改动保存到文件中,请输入 :w FILENAME 。** @@ -542,60 +628,63 @@ 1. 输入 :!dir 或者 :!ls 获知当前目录的内容。您应当已知道最后还得敲 <回车> 吧。 - 2. 选择一个尚未存在文件名,比如 TEST 。 + 2. 选择一个未被用到的文件名,比如 TEST。 3. 接着输入 :w TEST (此处 TEST 是您所选择的文件名。) - 4. 该命令会以 TEST 为文件名保存整个文件 (VIM 教程)。为了确保正确保存, - 请再次输入 :!dir 查看您的目录列表内容。 + 4. 该命令会以 TEST 为文件名保存整个文件 (Vim 教程)。为了验证这一点, + 请再次输入 :!dir 或 :!ls 查看您的目录列表内容。 ----> 请注意∶如果您退出 VIM 然后在以文件名 TEST 为参数进入,那么该文件内 +请注意:如果您退出 Vim 然后在以命令 vim TEST 再次启动 Vim,那么该文件内 容应该同您保存时的文件内容是完全一样的。 - 5. 现在您可以通过输入 :!rm TEST 来删除 TEST 文件了。 - + 5. 现在您可以删除 TEST 文件了。在 MS-DOS 下,请输入: :!del TEST + 在 Unix 下,请输入: :!rm TEST ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 第五讲第三节∶一个具有选择性的保存命令 + 第五讲第三节:一个具有选择性的保存命令 - ** 要保存文件的部分内容,请输入 :#,# w FILENAME ** + ** 要保存文件的部分内容,请输入 v motion :w FILENAME ** - 1. 再来执行一次 :!dir 或者 :!ls 获知当前目录的内容,然后选择一个合适的 - 不重名的文件名,比如 TEST 。 + 1. 移动光标到本行。 - 2. 接着将光标移动至本页的最顶端,然后按 CTRL-g 找到该行的行号。别忘了 - 行号哦。 + 2. 接着按 v 键,将光标移动至下面第五个条目上。您会注意到之间的文本被高亮了。 - 3. 接着把光标移动至本页的最底端,再按一次 CTRL-g 。也别忘了这个行好哦。 + 3. 然后按 : 字符。您将看到屏幕底部会出现 :'<,'> 。 - 4. 为了只保存文章的某个部分,请输入 :#,# w TEST 。这里的 #,# 就是上面 - 要求您记住的行号(顶端行号,底端行号),而 TEST 就是选定的文件名。 - - 5. 最后,用 :!dir 确认文件是否正确保存。但是这次先别删除掉。 + 4. 现在请输入 w TEST,其中 TEST 是一个未被使用的文件名。确认您看到了 + :'<,'>w TEST 之后按 <回车> 键。 + 5. 这时 Vim 会把选中的行写入到以 TEST 命名的文件中去。使用 :!dir 或 :!ls + 确认文件被正确保存。这次先别删除它!我们在下一讲中会用到它。 +提示:按 v 键使 Vim 进入可视模式进行选取。您可以四处移动光标使选取区域变大或 + 变小。接着您可以使用一个操作符对选中文本进行操作。例如,按 d 键会删除 + 选中的文本内容。 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 第五讲第四节∶提取和合并文件 + 第五讲第四节:提取和合并文件 ** 要向当前文件中插入另外的文件的内容,请输入 :r FILENAME ** - 1. 请键入 :!dir 确认您前面创建的 TEST 文件还在。 + 1. 请把光标移动到本行上面一行。 - 2. 然后将光标移动至当前页面的顶端。 +特别提示:执行步骤2之后您将看到第五讲第三节的文字,请届时往下移动 + 以再次看到本讲内容。 -特别提示∶ 执行步骤3之后您将看到第五讲第三节,请届时再往下移动回到这里来。 + 2. 接着通过命令 :r TEST 将前面创建的名为 TEST 的文件提取进来。 + 您所提取进来的文件将从光标所在位置处开始置入。 - 3. 接着通过 :r TEST 将前面创建的名为 TEST 的文件提取进来。 + 3. 为了确认文件已经提取成功,移动光标回到原来的位置就可以注意有两份第 + 五讲第三节的内容,一份是原始内容,另外一份是来自文件的副本。 -特别提示∶您所提取进来的文件将从光标所在位置处开始置入。 +提示:您还可以读取外部命令的输出。例如, :r !ls 可以读取 ls 命令的输出,并 + 把它放置在光标下面。 - 4. 为了确认文件已经提取成功,移动光标回到原来的位置就可以注意有两份第 - 五讲第三节,一份是原本,另外一份是来自文件的副本。 @@ -605,237 +694,293 @@ 1. :!command 用于执行一个外部命令 command。 - 请看一些实际例子∶ - :!dir - 用于显示当前目录的内容。 - :!rm FILENAME - 用于删除名为 FILENAME 的文件。 + 请看一些实际例子: + (MS-DOS) (Unix) + :!dir :!ls - 用于显示当前目录的内容。 + :!del FILENAME :!rm FILENAME - 用于删除名为 FILENAME 的文件。 2. :w FILENAME 可将当前 VIM 中正在编辑的文件保存到名为 FILENAME 的文 件中。 - 3. :#,#w FILENAME 可将当前编辑文件第 # 行至第 # 行的内容保存到文件 + 3. v motion :w FILENAME 可将当前编辑文件中可视模式下选中的内容保存到文件 FILENAME 中。 4. :r FILENAME 可提取磁盘文件 FILENAME 并将其插入到当前文件的光标位置 后面。 - - - - + 5. :r !dir 可以读取 dir 命令的输出并将其放置到当前文件的光标位置后面。 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 第六讲第一节∶打开类命令 + 第六讲第一节:打开类命令 ** 输入 o 将在光标的下方打开新的一行并进入插入模式。** 1. 请将光标移动到本节中下面标记有 ---> 的那一行。 - 2. 接着输入小写的 o 在光标 *下方* 打开新的一行并进入插入模式。 + 2. 接着输入小写的 o 在光标 *下方* 打开新的一行,这个命令会使您 + 进入插入模式。 - 3. 然后复制标记有 ---> 的行并按 <ESC> 键退出插入模式而进入正常模式。 + 3. 然后输入一些文字,之后按 <ESC> 键退出插入模式而进入正常模式。 ---> After typing o the cursor is placed on the open line in Insert mode. 4. 为了在光标 *上方* 打开新的一行,只需要输入大写的 O 而不是小写的 o - 就可以了。请在下行测试一下吧。当光标处在在该行上时,按 Shift-O可以 - 在该行上方新开一行。 - -Open up a line above this by typing Shift-O while the cursor is on this line. + 就可以了。请在下行测试一下吧。 +---> Open up a line above this by typing O while the cursor is on this line. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 第六讲第二节∶光标后插入类命令 + 第六讲第二节:附加类命令 ** 输入 a 将可在光标之后插入文本。 ** - 1. 请在正常模式下通过输入 $ 将光标移动到本节中下面标记有 ---> 的第一行 - 的末尾。 + 1. 请在正常模式下将光标移动到本节中下面标记有 ---> 的第一行的行首。 + + 2. 接着输入 e 直到光标位于 li 的末尾。 - 2. 接着输入小写的 a 则可在光标之后插入文本了。大写的 A 则可以直接在行 - 末插入文本。 + 3. 输入小写的 a 则可在光标之后插入文本了。 -提示∶输入大写 A 的操作方法可以在行末插入文本,避免了输入 i,光标定位到 - 最后一个字符,输入的文本,<ESC> 回复正常模式,箭头右键移动光标以及 - x 删除当前光标所在位置字符等等诸多繁杂的操作。 + 4. 将单词补充完整,就像下一行中的那样。之后按 <ESC> 键退出插入模式回到 + 正常模式。 - 3. 操作之后第一行就可以补充完整了。请注意光标后插入文本与插入模式是基 - 本完全一致的,只是文本插入的位置定位稍有不同罢了。 + 5. 使用 e 移动光标到下一步不完整的单词,重复步骤3和步骤4。 ----> This line will allow you to practice ----> This line will allow you to practice appending text to the end of a line. +---> This li will allow you to pract appendi text to a line. +---> This line will allow you to practice appending text to a line. +提示:a、i 和 A 都会带您进入插入模式,惟一的区别在于字符插入的位置。 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 第六讲第三节∶另外一个置换类命令的版本 + 第六讲第三节:另外一个置换类命令的版本 ** 输入大写的 R 可连续替换多个字符。** - 1. 请将光标移动到本节中下面标记有 ---> 的第一行。 - - 2. 移动光标到第一行中不同于标有 ---> 的第二行的第一个单词的开始,即单 - 词 last 处。 + 1. 请将光标移动到本节中下面标记有 ---> 的第一行。移动光标到第一个 xxx 的 + 起始位置。 - 3. 然后输入大写的 R 开始把第一行中的不同于第二行的剩余字符逐一输入,就 + 2. 然后输入大写的 R 开始把第一行中的不同于第二行的剩余字符逐一输入,就 可以全部替换掉原有的字符而使得第一行完全雷同第二行了。 ----> To make the first line the same as the last on this page use the keys. ----> To make the first line the same as the second, type R and the new text. + 3. 接着按 <ESC> 键退出替换模式回到正常模式。您可以注意到尚未替换的文本 + 仍然保持原状。 - 4. 请注意∶如果您按 <ESC> 退出置换模式回复正常模式,尚未替换的文本将仍 - 然保持原状。 + 4. 重复以上步骤,将剩余的 xxx 也替换掉。 +---> Adding 123 to xxx gives you xxx. +---> Adding 123 to 456 gives you 579. +提示:替换模式与插入模式相似,不过每个输入的字符都会删除一个已有的字符。 +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 第六讲第四节:复制粘贴文本 -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 第六讲第四节∶设置类命令的选项 + ** 使用操作符 y 复制文本,使用 p 粘贴文本 ** + 1. 定位到下面标记有 ---> 的一行,将光标移动到 "a)" 之后。 - ** 设置可使查找或者替换可忽略大小写的选项 ** + 2. 接着使用 v 进入可视模式,移动光标到 "first" 的前面。 + 3. 现在输入 y 以抽出(复制)高亮的文本。 - 1. 要查找单词 ignore 可在正常模式下输入 /ignore 。要重复查找该词,可以 - 重复按 n 键。 + 4. 然后移动光标到下一行的末尾:j$ - 2. 然后设置 ic 选项(ic就是英文忽略大小写Ignore Case的首字母缩写词),即 - 输入∶ - :set ic + 5. 接着输入 p 以放置(粘贴)复制了的文本。然后输入:a second <ESC>。 - 3. 现在可以通过键入 n 键再次查找单词 ignore。重复查找可以重复键入 n 键。 + 6. 使用可视模式选中 " item.",用 y 复制,再用 j$ 将光标移动到下一行末尾, + 用 p 将文本粘贴到那里。 - 4. 然后设置 hlsearch 和 incsearch 这两个选项,输入以下内容∶ - :set hls is +---> a) this is the first item. + b) - 5. 现在可以再次输入查找命令,看看会有什么效果∶ - /ignore + 提示:您还可以把 y 当作操作符来使用;例如 yw 可以用来复制一个单词。 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 第六讲小结 + 第六讲第五节:设置类命令的选项 - 1. 输入小写的 o 可以在光标下方打开新的一行并将光标置于新开的行首,进入 - 插入模式。 - 输入大写的 O 可以在光标上方打开新的一行并将光标置于新开的行首,进入 - 插入模式。 + ** 设置可使查找或者替换可忽略大小写的选项 ** - 2. 输入小写的 a 可以在光标所在位置之后插入文本。 - 输入大写的 A 可以在光标所在行的行末之后插入文本。 + 1. 要查找单词 ignore 可在正常模式下输入 /ignore <回车>。 + 要重复查找该词,可以重复按 n 键。 + + 2. 然后设置 ic 选项(Ignore Case,忽略大小写),请输入: :set ic + + 3. 现在可以通过键入 n 键再次查找单词 ignore。注意到 Ignore 和 IGNORE 现在 + 也被找到了。 - 3. 输入大写的 R 将进入替换模式,直至按 <ESC> 键退出替换模式而进入正常 - 模式。 + 4. 然后设置 hlsearch 和 incsearch 这两个选项,请输入: :set hls is - 4. 输入 :set xxx 可以设置 xxx 选项。 + 5. 现在可以再次输入查找命令,看看会有什么效果: /ignore <回车> + 6. 要禁用忽略大小写,请输入: :set noic + +提示:要移除匹配项的高亮显示,请输入: :nohlsearch +提示:如果您想要仅在一次查找时忽略字母大小写,您可以使用 \c: + /ignore\c <回车> +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 第六讲小结 + 1. 输入小写的 o 可以在光标下方打开新的一行并进入插入模式。 + 输入大写的 O 可以在光标上方打开新的一行。 + 2. 输入小写的 a 可以在光标所在位置之后插入文本。 + 输入大写的 A 可以在光标所在行的行末之后插入文本。 + 3. e 命令可以使光标移动到单词末尾。 + 4. 操作符 y 复制文本,p 粘贴先前复制的文本。 + 5. 输入大写的 R 将进入替换模式,直至按 <ESC> 键回到正常模式。 + 6. 输入 :set xxx 可以设置 xxx 选项。一些有用的选项如下: + 'ic' 'ignorecase' 查找时忽略字母大小写 + 'is' 'incsearch' 查找短语时显示部分匹配 + 'hls' 'hlsearch' 高亮显示所有的匹配短语 + 选项名可以用完整版本,也可以用缩略版本。 + 7. 在选项前加上 no 可以关闭选项: :set noic ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 第七讲∶在线帮助命令 + 第七讲第一节:获取帮助信息 + ** 使用在线帮助系统 ** Vim 拥有一个细致全面的在线帮助系统。要启动该帮助系统,请选择如下三种方 - 法之一∶ + 法之一: - 按下 <HELP> 键 (如果键盘上有的话) - 按下 <F1> 键 (如果键盘上有的话) - 输入 :help <回车> + 请阅读帮助窗口中的文字以了解帮助是如何工作的。 + 输入 CTRL-W CTRL-W 可以使您在窗口之间跳转。 输入 :q <回车> 可以关闭帮助窗口。 提供一个正确的参数给":help"命令,您可以找到关于该主题的帮助。请试验以 - 下参数(可别忘了按回车键哦。:)∶ + 下参数(可别忘了按回车键哦): + + :help w + :help c_CTRL-D + :help insert-index + :help user-manual +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 第七讲第二节:创建启动脚本 + - :help w <回车> - :help c_<T <回车> - :help insert-index <回车> - :help user-manual <回车> + ** 启用 Vim 的特性 ** + Vim 的功能特性要比 Vi 多得多,但其中大部分都没有缺省启用。为了使用更多的 + 特性,您得创建一个 vimrc 文件。 + 1. 开始编辑 vimrc 文件,具体命令取决于您所使用的操作系统: + :edit ~/.vimrc 这是 Unix 系统所使用的命令 + :edit $VIM/_vimrc 这是 MS-Windows 系统所使用的命令 + 2. 接着读取 vimrc 示例文件的内容: + :r $VIMRUNTIME/vimrc_example.vim + + 3. 保存文件,命令为: + :write + + 下次您启动 Vim 时,编辑器就会有了语法高亮的功能。 + 您可以把您喜欢的各种设置添加到这个 vimrc 文件中。 + 要了解更多信息请输入 :help vimrc-intro ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 第八讲∶创建一个启动脚本 + 第七讲第三节:补全功能 - ** 启用vim的功能 ** - Vim的功能特性要比vi多得多,但大部分功能都没有缺省激活。为了启动更多的 - 功能,您得创建一个vimrc文件。 + ** 使用 CTRL-D 和 <TAB> 可以进行命令行补全 ** - 1. 开始编辑vimrc文件,这取决于您所使用的操作系统∶ + 1. 请确保 Vim 不是在以兼容模式运行: :set nocp - :edit ~/.vimrc 这是Unix系统所使用的命令 - :edit $VIM/_vimrc 这是Windows系统所使用的命令 + 2. 查看一下当前目录下已经存在哪些文件,输入: :!ls 或者 :!dir - 2. 接着导入vimrc范例文件∶ + 3. 现在输入一个目录的起始部分,例如输入: :e - :read $VIMRUNTIME/vimrc_example.vim + 4. 接着按 CTRL-D 键,Vim 会显示以 e 开始的命令的列表。 - 3. 保存文件,命令为∶ + 5. 然后按 <TAB> 键,Vim 会补全命令为 :edit 。 - :write + 6. 现在添加一个空格,以及一个已有文件的文件名的起始部分,例如: :edit FIL - 在下次您启动vim的时候,编辑器就会有了语法高亮的功能。您可以继续把您喜 - 欢的其它功能设置添加到这个vimrc文件中。 + 7. 接着按 <TAB> 键,Vim 会补全文件名(如果它是惟一匹配的)。 + +提示:补全对于许多命令都有效。您只需尝试按 CTRL-D 和 <TAB>。 + 它对于 :help 命令非常有用。 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 第七讲小结 - vim 教程到此结束。本教程只是为了简明地介绍一下vim编辑器,但已足以让您 - 很容易学会使用本编辑器了。毋庸质疑,vim还有很多很多的命令,本教程所介 - 绍的还差得远著呢。所以您要精通的话,还望继续努力哦。下一步您可以阅读 - vim手册,使用的命令是∶ - :help user-manual - 为了更进一步的参考和学习,以下这本书值得推荐∶ + 1. 输入 :help 或者按 <F1> 键或 <Help> 键可以打开帮助窗口。 - Vim - Vi Improved - 作者∶Steve Oualline - 出版社∶New Riders + 2. 输入 :help cmd 可以找到关于 cmd 命令的帮助。 - 这是第一本完全讲解vim的书籍。对于初学者特别有用。其中还包含有大量实例 - 和图示。欲知详情,请访问 http://iccf-holland.org/click5.html + 3. 输入 CTRL-W CTRL-W 可以使您在窗口之间跳转。 - 以下这本书比较老了而且内容主要是vi而不是vim,但是也值得推荐∶ + 4. 输入 :q 以关闭帮助窗口 - Learning the Vi Editor - 作者∶Linda Lamb - 出版社∶O'Reilly & Associates Inc. + 5. 您可以创建一个 vimrc 启动脚本文件用来保存您偏好的设置。 - 这是一本不错的书,通过它您几乎能够了解到全部vi能够做到的事情。此书的第 - 六个版本也包含了一些关于vim的信息。 + 6. 当输入 : 命令时,按 CTRL-D 可以查看可能的补全结果。 + 按 <TAB> 可以使用一个补全。 - 本教程是由来自Calorado School of Minese的Michael C. Pierce、Robert K. - Ware 所编写的,其中来自Colorado State University的Charles Smith提供了 - 很多创意。编者通信地址是∶ - bware@mines.colorado.edu - 本教程已由Bram Moolenaar专为vim进行修订。 - 译制者附言∶ + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + + vim 教程到此就结束了。本教程只是为了简明地介绍一下 Vim 编辑器,但已足以让您 + 很容易使用这个编辑器了。毋庸质疑,vim还有很多很多的命令,本教程所介 + 绍的距离完整的差得很远。所以您要精通的话,还望继续努力哦。下一步您可以阅读 + Vim 的用户手册,使用的命令是: :help user-manual + + 下面这本书值得推荐用于更进一步的阅读和学习: + Vim - Vi Improved - 作者:Steve Oualline + 出版社:New Riders + 这是第一本完全讲解 Vim 的书籍。它对于初学者特别有用。其中包含有大量实例 + 和图示。 + 欲知详情,请访问 http://iccf-holland.org/click5.html + + 以下这本书比较老了而且内容更多是关于 Vi 而非 Vim,但是也值得推荐: + Learning the Vi Editor - 作者:Linda Lamb + 出版社:O'Reilly & Associates Inc. + 这是一本不错的书,通过它您几乎能够了解到任何您想要使用 Vi 做的事情。 + 此书的第六个版本也包含了一些关于 Vim 的信息。 + + 本教程是由来自 Calorado School of Mines 的 Michael C. Pierce 和 + Robert K. Ware 所编写的,其中很多创意由来自 Colorado State University 的 + Charles Smith 提供。编者的电子邮箱是:bware@mines.colorado.edu + + 本教程已由 Bram Moolenaar 专为 Vim 进行修订。 + + 译制者附言: =========== 简体中文教程翻译版之译制者为梁昌泰 <beos@turbolinux.com.cn>,还有 - 另外一个联系地址∶linuxrat@gnuchina.org。 + 另外一个联系地址:linuxrat@gnuchina.org。 繁体中文教程是从简体中文教程翻译版使用 Debian GNU/Linux 中文项目小 组的于广辉先生编写的中文汉字转码器 autoconvert 转换而成的,并对转 换的结果做了一些细节的改动。 - 变更记录∶ + 变更记录: ========= + 2012年10月01日 赵涛 <alick9188@gmail.com> + 将 vimtutor 中译版从 1.5 升级到 1.7。 + 2002年08月30日 梁昌泰 <beos@turbolinux.com.cn> 感谢 RMS@SMTH 的指正,将多处错误修正。 |