VimTutor(上)

柚子翻譯,如有理解錯誤或翻譯錯誤,請指正!

VimTutor

Vim是一款強大的文本編輯器,擁有多命令的特性,tutor解釋了其中大多數命令。

tutor是為了描述足夠多的Vim命令幫助你輕松使用Vim而被制作的,使Vim能成為一個可完成你所有工作意圖的編輯器。

完成tutor的內容大概需要25-30分鐘,所完成時間取決于你通過時間積累的經驗。

注意:

1.課程中所使用的命令會修改當前的text文檔,所以請復制一份文檔再進行練習(如果以vimtutor命令啟動,它會事先做好備份)。

2.要記住完成這個tutor,要通過練習并使用命令來驅動學習,意味著你必須知道執行命令才是學習tutor的正確方式,如果僅僅閱讀的話,呵呵,那么你懂得。

3.現在,確保你的Shift-Lock鍵沒有處于depressed的狀態,并且按下<j鍵>數次讓光標移動使得Lesson1.1的內容能夠顯示于整個屏幕。

    

Lesson 1.1 移動光標

    ** 為了移動光標,按指示鍵入h,j,k,l鍵 **

     h鍵位于最左邊表示向左移動。

     l鍵位于最右邊表示向右移動。

     j鍵有點像向下箭頭,表示向下移動。

     k鍵,你懂得。

    1.在屏幕內移動光標直到你爽了~

    2.按住下鍵<j>使他多次重復,現在你已經知道如何翻閱至下一Lesson。

    3.使用向下移動,移動光標至Lesson1.2。

    #注釋:如果你不知道你輸入的都是什么玩意,按<ESC>鍵使你處于標準模式(編輯模式),然后再鍵入你想使用的命令。

    #注釋:光標也應當是正常的,此外一旦你習慣使用hjkl,你可以很快的移動光標。

Lesson 1.2 關閉Vim

    !!注釋:在你執行下列步驟以前,要閱讀完接下來的整個內容。

    1.按<ESC>鍵確保你處于標準模式(編輯模式)。

    2.輸入: :q!<ENTER> 這條命令用于關閉編輯器,并且忽略修改的內容。

    3.當你看見shell時,輸入 vimtutor <ENTER> 來進入tutor。

    4.如果你理解并記住了以上步驟,試著執行1-3步驟去關閉并打開tutor。

    #注釋: :q! <ENTER> 忽略了你所做的改變,在后續課程中你將會學到如何對一個文本保留其變化。

    5.移動光標至Lesson1.3

    

Lesson 1.3 文本編輯(有關刪除操作)

    ** 按<x>鍵刪除光標覆蓋的字符 **

    1.把光標移動至"—>"標記的內容。

    2.為了處理錯誤,移動光標直到覆蓋到字符,使字符能夠被刪除。

    3.按<x>鍵刪除不想要的字符。

    4.重復步驟2-4直到所有句子都正確。

    —> The ccow jumpedd ovverr thhe mooon.

    5.既然這一行已經正確了,那么楞著干啥呢?趕緊進入Lesson1.4。

    #注釋:當你向tutor取經時,不要去試著記憶,通過使用來學習。

    

Lesson 1.4 文本編輯(有關插入操作)

    ** 按<i>去插入文本。 **

    1.移動光標至"—>"所標記的第一行下。

    2.為了使第一行和第二行內容相同,移動光標至第一行的首部使得文本能夠被插入。

    3.按<i>鍵,并輸入必要的添加信息。

    4.當每個錯誤被修正后,按<ESC>返回標準模式,重復步驟2-4使句子內容正確。

    —> There is text misng this .

    —> There is some text missing from this line.

    5.當你舒服的插入文本后,那么繼續來看Lesson1.5吧。

Lesson 1.5 文本編輯 (追加操作)

    1.移動光標至"—>"指向的第一行。

    2.按下A并輸入必要的添加信息。

    3.當文本內容被追加完畢,按<ESC>返回標準模式。

    4.動光標至"—>"指向的第二行并且重復2,3操作使該句子正確。

    —> There is some text missing from this line.

      There is some text missing from this line.

    —> There is also some text missing here.

      There is also some text missing here.

    5.當你熟悉追加操作后繼續進行Lesson1.6吧。

    

Lesson 1.6 編輯一個文件

    ** 使用 :wq 去保存一個文件并且退出 **

    #注釋:在執行任何步驟之前,請先閱讀完該節課!!

    1.關閉vimtutor就像你在Lesson1.2所做的: :q!

    或者,如果你還通過其他終端進行訪問,可以直接進行以下操作,不用關閉vimtutor.

    2.在shell命令行中輸入命令:vim tutor <ENTER>

    'vim'使一個啟動VIM編輯器的命令,'tutor'是你將要去編輯的文件的名稱。(使用一個可以被修改的文件)

    3.插入并且刪除文本內容就像你在先前的課程學到的一樣。

    4.保存文件并退出 使用: :wq <ENTER>

    5.如果你已經關閉vimtutor,重新打開vimtutor到當下一節內容。

    6.在閱讀上述步驟之后,試著去理解它們(do it!)。

    

Lesson 1 總結

    1.移動光標使用hjkl鍵。

    2.啟動VIM編輯器使用 vim FILENAME <ENTER>。

    3.關閉Vim的兩種方式。

       :q! <ENTER> 強制關閉,忽略所有改變。

       :wq <ENTER> 保存關閉,保存所有改變。

    4.刪除光標上的字符,輸入<x>鍵。

    5.插入或追加文本內容輸入:

       i 從光標后插入并切換至插入模式。

       A 在光標所在行后追加內容。

    #注釋:<ESC>鍵可以從插入模式回到標準模式(編輯模式),或者取消已經輸入的不期望的命令。

    現在,繼續Lesson2!

    

Lesson 2.1 刪除命令

    ** 輸入 dw 刪除一個字 **

    1.按下<ESC>確保你處于標準模式。

    2.移動光標至標記"—>"處。

    3.移動光標至需要刪除的字。

    4.輸入 dw 使得字消失. # dw (delete word)

    #注釋:當你輸入d時,d子母將會出現在屏幕下方最后一行,此時Vim正等待你輸入 w 。

    :如果屏幕下方不是d字母表示輸入錯了點什么東西,按<ESC>重來吧,騷年。

    —> There are a some words fun that don't belong paper in this sentence.

    5.重復3,4步驟直到句子正確然后進行lesson2.2吧!

Lesson 2.2 更多的刪除命令

    ** 輸入 d$ 去刪除光標到行尾內容 **

    1.按下<ESC>確保你處于標準模式。

    2.移動光標至標記"—>"處。

    3.移動光標至正確行后 (字符"."后)。

    4.輸入 d$ 刪除之后的內容

    —> Somebody typed the end of this line twice. end of this line twice.

    5.繼續Lesson2.3去理解正在發生的一切。

Lesson 2.3 關于操作以及意向

    1.許多命令通過一個操作和一個意向來改變文本內容

      刪除命令的格式: d <motion> 

      d    是一個刪除操作

    motion 是一個意向,表示將要進行什么樣的操作(刪除操作)

    2.一個簡單的意向列表

      w 直到下一個word開始,包含光標指向字符,不包含下一個word首字符

      e   直到當前word結束,包含光標指向字符及word最后一個字符

      $   直到行結束,包含光標指向的字符及最后匹配到的字符

      所以,輸入de將會刪除光標到word結束。

#注釋:僅僅輸入意向而不輸入操作將會移動光標

Lesson 2.4 使用數字來作為意向

    ** 輸入一個數字在意向之前表示重復意向相應次數 **

    1.移動光標至標記"—>"。

    2.輸入 2w 移動光標向后2-word。

    3.輸入 3e 移動光標到第三個word之后。

    4.輸入 0 移動光標到行首。

    5.重復2,3步驟使用不同的數字。

    —> This is just a line with words you can move around in.

    6. 繼續Lesson2.5

Lesson 2.5 使用數字刪除更多內容

    ** 輸入一個數字和一個操作使操作重復多次 **

    通過組合刪除操作,數字,意向來刪除更多內容

    d [number] motion

    1.移動光標到標記行的第一個大寫字母。

    2.輸入 d2w 刪除兩個大寫的word。

    3.重復1,2步驟,使用不同數字試試。

    —>  this ABC DE line FGHI JK LMN OP of words is Q RS TUV cleaned up.

Lesson 2.6 對行進行操作

    ** 輸入 dd 刪除整個行 **

    由于整行刪除的使用頻率較高,Vi的作者決定用dd這種簡單的輸入來刪除整行

    1.移動光標到第二段標記行。

    2.輸入 dd 刪除整行。

    3.移動到第四行。

    4.輸入 2dd 刪除2行。

    —>  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.

lesson 2.7 撤銷命令

    ** 按 u 可撤銷上一個命令, 按 U 可復原整行內容 **

    1.移動光標到—>下的錯誤處。

    2.按<x>鍵刪除不期望的字符。 

    3.按<u>撤銷上一個命令的執行。

    4.然后根據前面所學知識改正所有錯誤(w h j l),然后按<U>復原整行內容

    5.按<u>多次撤銷U操作和先前的命令。

    6.按<ctrl+r>多次使已撤銷的命令再次執行(撤銷上一次撤銷的行為)。

    —> Fiix the errors oon thhis line and reeplace them witth undo.

    7.這些都是非常有用的命令。

 

Lesson 2 總結

    1.刪除光標開始到下一個word之前 dw

    2.刪除從光標開始到光標所在行結束 d$

    3.刪除從光標所在行     dd

    4.重復一個意向多次,數字加意向 2w

    5.一個完整命令的格式:  操作 [次數] 意向

    操作: 將要執行的操作,比如 d 刪除操作

    [number]: 意向重復的次數 3w 三個word

    意向: 操作的意向(范圍),比如 w(word) $(直到行尾)

    6.移動光標到行首 <0>鍵

    7.撤銷先前的動作      <u>

      撤銷先前整行的動作 <U>

      撤銷上一次撤銷的行為 <ctrl+r>

Lesson 3.1 放置命令

    ** 輸入 p 將之前刪除的文本內容放置在光標之后 **

    1.移動光標到第一個"—>"標記下。

    2.輸入 dd 刪除整行(刪除的內容會被存放至Vim寄存器)。

    3.移動光標到c)行 (剛剛刪除的行需要放置的地方)。

    4.輸入 p 將刪除的內容放置在光標之后。

    5.重復2-4步驟 把所有行按照正確的順序排列。

    —> a) Roses are red,

    —> b) Violets are blue,

    —> c) Intelligence is learned,

            —> d) Can you learn too?

Lesson 3.2 替換命令

    **  輸入 rx 將光標處的字符替換為x **

    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.接著進行 Lesson 3.3吧,不要憑記憶,動手做~

Lesson 3.3 "改變"操作

    ** 輸入 ce 改變一個word直到word最后 **

    1.移動光標到第一個"—>"標記下。

    2.移動光標在lubw的u下。

    3.輸入ce和正確的word。

    4.按<ESC>并且移動到下一個出錯字符。

    5.重復3,4步驟直到第一行和第二行相同。

    —> 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.

Lesson 3.4 使用c做更多的"改變"操作

    ** 改變操作和刪除操作使用相同的意向motions **

    1.改變操作的格式與刪除操作相同

      c [number] motion

    2.意向也完全相同

      w  : word

      $  : 行結尾

    3.移動光標到第一個"—>"標記下。

    4.移動光標到錯誤處。

    5.輸入 c$ 并且輸入和第二段相同的后半段內容。

    —> 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.

Lesson 3 總結

    1.放置剛剛被刪除的內容,輸入 p。放置的位置位于光標后(如果內容是整行則放在光標所在行的下一行)

    2.替換當前光標上的字符,輸入 r ,然后輸入要替換字符。

    3.改變操作根據你的意向,對光標所在處至一定范圍進行文本編輯(切換至插入模式)。比如ce是改變當前word c$是改變光標到行尾。

    4.改變操作的格式  c [number] motion。

Lesson 4.1 光標位置和文件狀態

    ** 輸入 <ctrl+g> 顯示當前光標在整個文件中的位置和文件狀態 **

    ** 輸入 <G> 移動到中的一行 **

    注釋: 讀完整個Lesson然后再執行相應步驟

    1.按<ctrl+g> 一條信息會出現在頁面底部,信息包含文件名,當前頁面在文件中的位置。

    #注釋:光標所在位置顯示在屏幕底部偏右(ruler選項開啟時顯示,查看幫助 :help 'ruler')

    2.按<G>移動到文本最后一行,按<gg>移動到文本第一行。

    3.<number>+<G> 跳轉到number行。

    4.執行步驟1-3。

Lesson 4.2 搜索命令

    ** 輸入</> 后,跟著輸入一個短句來查找這個短句在文本內容中的所在位置。 **

    1.在標準模式中輸入 </> ,注意這個'/'字符會出現在屏幕底部。

    2.然后再輸入 'errroor'<ENTER>。'errroor'是將要搜索的內容。

    3.向后搜索相同的內容,只需按<n>,向前搜索相同內容按<N>。

    4.如果要凸出顯示搜索內容,使用<?>代替</>。

    5.按<ctrl+o>返回搜索前所在位置。

    —>  "errroor" is not the way to spell error;  errroor is an error.

    #注釋,當搜索至文本結尾,將會從文件開頭繼續搜索。

Lesson 4.3 匹配括號搜索

    ** 輸入<%> 去查找 ),],}匹配到的內容。 **

    1.移動光標到"—>"標記下任意一個括號('(' '{' '[')下。

    2.然后輸入<%>,光標會移動到與之匹配的(')' '{' '[')下。

    3.移動光標到其他括號,看看%的作用吧。

    —> This ( is a test line with ('s, ['s ] and {'s } in it. ))

    #注釋:這個功能在調試程序時很有用,比如括號不匹配。

Lesson 4.4 替換命令

    ** 輸入 :s/old/new/g 將 'old' 替換為 'new' *

    1.移動光標到"—>"標記下。

    2.輸入 :s/thee/the <ENTER>. 注意這個命令只替換文本中第一個thee。

    3.然后輸入 :s/thee/the/g <ENTER>. 添加g標志意味著全局替換,替換光標所在行中所有的thee。

    —> thee best time to see thee flowers is in thee spring.

    4.輸入 :#,#s/old/new/g #,#代表起始與結束行號,表示對文本中的起始行到結束行進行old=》new替換。

      輸入 :%s/old/new/g 代表對文本所有內容進行old=》new替換。

      輸入 :%s/odl/new/gc 代表對文本所有內容進行old=》new替換,并且進行交互詢問是否替換。

Lesson 4 總結

    1.<ctrl+g> 顯示光標所處文件位置及文件狀態。

       G 移動到文本結尾。

    [number]G 移動到number行。

       gg 移動到文本第一行。

    2.輸入 / 緊跟短句 在文本內容中對短句進行查找。

       輸入 ? 緊跟短句 在文本中凸顯短句。

       在查找短句后,按<n>跳轉到下一個查找到的短句,按<N>跳轉到上一個查找到的短句。

       <ctrl+o> 跳轉到查找命令之前光標所在的位置。

    3.輸入 % 當光標停留在括號("(,)","{,}","[,]")上,跳轉到對應括號上。

    4.僅替換文本內容第一個old為new   :s/old/new/

        替換文本光標所在行中所有old為new :s/old/new/g

        替換文本內容所有old為new   :%s/old/new/g

        替換lineM-lineN中的old為new   :lineM,lineN%s/old/new/g

        替換前進行交互詢問 :%s/old/new/gc

原創文章,作者:EatPomelo,如若轉載,請注明出處:http://www.www58058.com/8720

(0)
EatPomeloEatPomelo
上一篇 2015-10-18
下一篇 2015-10-18

相關推薦

  • 【招聘福利】上海/北京/深圳丨 云絡科技丨招募linux系統運維工程師

    崗位要求: 1,安裝服務器 – Linux CentOS + netinstall 2.服務器安全 – 用戶、權限、iptables、sudo 3.計劃部署Linux?高可用性,包括HA,LB 4.協助Leader完成復雜的網絡設計 (完全冗余/故障遷移/高可用性) 5.用linux命令查看服務器(top/iostat/vmstat/sar/等) 6.安裝、…

    Linux干貨 2016-04-05
  • 網絡管理之基礎知識

    Linux的網絡配置 IP地址 ?  它們可唯一標識 IP 網絡中的每臺設備 ? 每臺主機(計算機、網絡設備、外圍設備)必須具有唯 一的地址 ? IP地址由兩部分組成: ? 網絡ID: ? 標識網絡 ? 每個網段分配一個網絡ID ? 主機 ID: ? 標識單個主機 ? 由組織分配給各設備   IPv4地址格式:點分十進制記法  …

    Linux干貨 2016-09-10
  • linux歷史命令history詳解

    history命令 history命令用于顯示指定數目的指令命令,讀取歷史命令文件中的目錄到歷史命令緩沖區和將歷史命令緩沖區中的目錄寫入命令文件。 該命令單獨使用時,僅顯示歷史命令,在命令行中,可以使用符號!執行指定序號的歷史命令。例如,要執行第2個歷史命令,則輸入!2。  128  ls  129  history[…

    Linux干貨 2016-09-05
  • 文本處理工具

    文本處理工具 文件查看命令:cat  cat [OPTION]… [FILE]…  -E: 顯示行結束符$  -n: 對顯示出的每一行進行編號  -A:顯示所有控制符  -b:非空行編號  -s:壓縮連續的空行成一行 [root@centous1 soft]#&nb…

    Linux干貨 2016-08-08
  • 第三周作業

    第三周作業

    Linux干貨 2017-12-19
  • 網絡管理之配置文件及一些命令的應用

    IP配置、信息、相關命令    IP地址     它們可唯一標識 IP 網絡中的每臺設備     每臺主機(計算機、網絡設備、外圍設備)必須具有唯一的地址     IP 地址由兩部分組成:   &nb…

    Linux干貨 2016-09-22

評論列表(1條)

  • stanley
    stanley 2015-10-18 19:25

    是自己翻譯的嗎?翻譯功底非常深厚,用詞準確,用語專業

欧美性久久久久