<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    耐心無止境 成功一瞬間

    BlogJava 聯(lián)系 聚合 管理
      31 Posts :: 5 Stories :: 25 Comments :: 0 Trackbacks
    VIM 簡介FecLinux聯(lián)盟
      VIM 是 Unix 世界里極為普遍的全螢幕文書編輯器,幾乎可以說任何一臺 Unix 機器都會提供這套軟體。熟悉 DOS 下的文書處理後,也許會感到 VIM 并不好用;Unix 上也已經(jīng)發(fā)展出許多更新、更好用的文書編輯器,但是并不一定每一臺 Unix 機器上都會安裝這些額外的軟體。所以,學習 VIM 的基本操作還是有好處,讓你在各個不同的機器上得心應手。
    VIM 基本觀念FecLinux聯(lián)盟
      Unix 提供一系列的 ex 編輯器,包括 ex, edit 和 VIM 。相對於全螢幕編輯器,現(xiàn)在可能很難想像如何使用 ex, edit 這種行列編輯器(有人用過 DOS 3.3 版以前所附的 EDLIN 嗎?)。 VIM 的原意是 "Vi IMproved",它是一個所見所得的編輯程式,也就是說可以立刻看到操作結(jié)果。FecLinux聯(lián)盟
      FecLinux聯(lián)盟
      也由於 VIM 是全螢幕編輯器,所以它必須控制整個終端屏幕哪里該顯示些什麼。而終端的種類有許多種,特性又不盡相同,所以 VIM 有必要知道現(xiàn)在所使用的是哪一種終端。這是由 TERM 這個環(huán)境變數(shù)來設定,設定環(huán)境變數(shù)方面請查看所使用 shell 的說明。(除非執(zhí)行 VIM 的時候回應 unknow terminal type ,否則可以不用設定。)FecLinux聯(lián)盟
      FecLinux聯(lián)盟
      只要簡單的執(zhí)行 VIM 就可以進入 VIM 的編輯環(huán)境。在實際操作之前先對它有個概略的了解會比較好。VIM 有兩種模式,輸入模式以及指令模式。輸入模式即是用來輸入文字資料,而指令模式則是用來下達一些編排文件、存檔、以及離開 VIM 等等的操作指令。當執(zhí)行 VIM 後,會先進入指令模式,此時輸入的任何字元都視為指令。
    進入與離開FecLinux聯(lián)盟
      要 進入 VIM 可以直接在系統(tǒng)提示下鍵入 VIM <檔案名稱>,VIM 可以自動幫你載入所要編輯的文件或是開啟一個新文件。進入 VIM 后屏幕左方會出現(xiàn)波浪符號,凡是行首有該符號就代表此列目前是空的。要離開 VIM 可以在指令模式下鍵入 :q, :wq 指令則是存檔後再離開(注意冒號)。要切換到指令模式下則是用 [ESC] 鍵,如果不曉得現(xiàn)在是處於什麼模式, 可以多按幾次 [ESC],系統(tǒng)會發(fā)出嗶嗶聲以確定進入指令模式。
    VIM 輸入模式FecLinux聯(lián)盟
      要如何輸入資料呢?有好幾個指令可以進入輸入模式:FecLinux聯(lián)盟
      新增 (append)FecLinux聯(lián)盟
        a 從光標所在位置后面開始新增資料,光標后的資料隨新增資料向后移動。FecLinux聯(lián)盟
        A 從光標所在列最后面的地方開始新增資料。
      FecLinux聯(lián)盟
      插入 (insert)
        i 從光標所在位置前面開始插入資料,光標后的資料隨新增資料向后移動。FecLinux聯(lián)盟
        I 從光標所在列的第一個非空白字元前面開始插入資料。
      FecLinux聯(lián)盟
      開始 (open)
        o 在光標所在列下新增一列并進入輸入模式。FecLinux聯(lián)盟
        O 在光標所在列上方新增一列并進入輸入模式。
      也許文字敘述看起來有點繁雜,但是只要實際操作一下馬上可以了解這些操作方式。實務很重要,尤其是電腦方面的東西隨時可以嘗試及驗證結(jié)果。極力建議實際去 使用它而不要只是猛 K 文件,才有事半功倍的效用。(注:此段為廢話。)FecLinux聯(lián)盟
    VIM 基本編輯FecLinux聯(lián)盟
      配合一般鍵盤上的功能鍵,像是方向鍵、[Insert] 、[Delete] 等等,現(xiàn)在你應該已經(jīng)可以利用 VIM 來處理文字資料了。當然 VIM 還提供其他許許多多功能讓文字的處理更形方便,有興趣的看倌請繼續(xù)。FecLinux聯(lián)盟
      FecLinux聯(lián)盟
      在繼續(xù)下去之前先來點 BCC 吧。電腦有許多廠牌,不同的硬體及作業(yè)系統(tǒng)。PC 也不是僅僅只有 IBM PC 及其相容品而已。事實上,包括鍵盤,終端機等等往往都有不同的規(guī)格。這代表什麼?FecLinux聯(lián)盟
      FecLinux聯(lián)盟
      在文書編輯軟體上會遇這樣的問題,某些電腦的鍵盤上沒有特定的幾個功能鍵!那麼不就有某些功能不能用了?這個問題在 Unix 系統(tǒng)上也一樣,幾乎各大電腦廠商都有自己的 Unix 系統(tǒng),而 VIM 的操作方法也會隨之有點出入。我們固然可以用 PC 的鍵盤來說明 VIM 的操作,但是還是得提一下這個問題。FecLinux聯(lián)盟
      FecLinux聯(lián)盟
      刪除與修改
        何 謂編輯?在這里我們認為是文字的新增修改以及刪除,甚至包括文字區(qū)塊的搬移、復制等等。這里先介紹 VIM 的如何做刪除與修改。(注意:在 VIM 的原始觀念里,輸入跟編輯是兩碼子事。編輯是在指令模式下操作的,先利用指令移動光標來定位要進行編輯的地方,然后才下指令做編輯。)FecLinux聯(lián)盟
        FecLinux聯(lián)盟
        x 刪除光標所在字元。FecLinux聯(lián)盟
        dd 刪除光標所在的列。FecLinux聯(lián)盟
        r 修改光標所在字元,r 后接著要修正的字元。FecLinux聯(lián)盟
        R 進入取代狀態(tài),新增資料會覆蓋原先資料,直到按 [ESC] 回到指令模式下為止。FecLinux聯(lián)盟
        s 刪除光標所在字元,并進入輸入模式。FecLinux聯(lián)盟
        S 刪除光標所在的列,并進入輸入模式。
      其實呢,在 PC 上根本沒有這麼麻煩!輸入跟編輯都可以在輸入模式下完成。例如要刪除字元,直接按 [Delete] 不就得了。而插入狀態(tài)與取代狀態(tài)可以直接用 [Insert] 切換,犯不著用什麼指令模式的編輯指令。不過就如前面所提到的,這些指令幾乎是每臺終端機都能用,而不是僅僅在 PC 上。FecLinux聯(lián)盟
      FecLinux聯(lián)盟
      在指令模式下移動光標的基本指令是 h, j, k, l 。想來各位現(xiàn)在也應該能猜到只要直接用 PC 的方向鍵就可以了,而且無論在指令模式或輸入模式下都可以。多容易不是。 FecLinux聯(lián)盟
      當然 PC 鍵盤也有不足之處。有個很好用的指令 u 可以恢復被刪除的資料,而 U 指令則可以恢復光標所在列的所有改變。這與某些電腦上的 [Undo] 按鍵功能相同。 FecLinux聯(lián)盟
    VIM 進階應用
      相信現(xiàn)在對於 VIM 應該已經(jīng)有相當?shù)恼J識。處理文字也不會有什麼麻煩才對。如果有興趣善用 VIM 的其它功能進一步簡化操作過程,不妨繼續(xù)看下去。FecLinux聯(lián)盟
      FecLinux聯(lián)盟
      移動光標FecLinux聯(lián)盟
        由於許多編輯工作是藉由光標來定位,所以 VIM 提供許多移動光標的方式,這個我們列幾張簡表來說明(這些當然是指令模式下的指令):FecLinux聯(lián)盟
        FecLinux聯(lián)盟
        指令 說明 功能鍵
        0 移動到光標所在列的最前面 HOME
        $ 移動到光標所在列的最后面 END
        ^d 向下半頁
        ^f 向下一頁 PageDown
        ^u 向上半頁
        ^b 向上一頁 PageUp
        指令 說明
        H 移動到視窗的第一列
        M 移動到視窗的中間列
        L 移動到視窗的最后列
        b 移動到下個字的第一個字母
        w 移動到上個字的第一個字母
        e 移動到下個字的最后一個字母
        ^ 移動到光標所在列的第一個非空白字元
        指令 說明
        n- 減號移動到上一列的第一個非空白字元
        n+ 加號移動到下一列的第一個非空白字元
        nG 直接用數(shù)字 n 加上大寫 G 移動到第 n 列
        指令 說明
        fx 往右移動到 x 字元上
        Fx 往左移動到 x 字元上
        tx 往右移動到 x 字元前
        Tx 往左移動到 x 字元前
        ; 配合 f&t 使用,重復一次
        , 配合 f&t 使用,反方向重復一次
        /string 往右移動到有 string 的地方
        ?string 往左移動到有 string 的地方
        n 配合 /&? 使用,重復一次
        N 配合 /&? 使用,反方向重復一次
        指令 說明 備注
        n( 左括號移動到句子的最前面,前面加上數(shù)字可以指定往前移動 n 個句子 句子是以 ! . ? 三種符號來界定
        n) 右括號移動到下個句子的最前面,前面加上數(shù)字可以指定往后移動 n 個句子
        n{ 左括弧移動到段落的最前面 ,前面加上數(shù)字可以指定往前移動 n 個段落 段落是以,段落間的空白列界定
        n} 右括弧移動到下個段落的最前面,前面加上數(shù)字可以指定往后移動 n 個段落
        FecLinux聯(lián)盟
        不要嘗試背誦這些指令,否則后果自行負責。它們看起來又多又雜亂,事實上這是文字敘述本身的障礙。再強調(diào)一次,實際去使用它只要幾次就可以不經(jīng)大腦直接下 達這些奇奇怪怪的指令,遠比死記活背搞得模模糊糊強多了。(注:若真的不經(jīng)大腦而誤刪資料與我無關。另,此段為廢話。)FecLinux聯(lián)盟
        FecLinux聯(lián)盟
      進階編輯指令FecLinux聯(lián)盟
      FecLinux聯(lián)盟
      這些編輯指令非常有彈性,基本上可以說是由指令與范圍所構(gòu)成。例如 dw 是由刪除指令 d 與范圍 w 所組成,代表刪除一個字 d(elete) w(ord) 。FecLinux聯(lián)盟
      FecLinux聯(lián)盟
      指令列表如下:FecLinux聯(lián)盟
        d 刪除(delete)FecLinux聯(lián)盟
        y 復制(yank)FecLinux聯(lián)盟
        p 放置(put)FecLinux聯(lián)盟
        c 修改(change)FecLinux聯(lián)盟
      范圍可以是下列幾個:FecLinux聯(lián)盟
        e 光標所在位置到該字的最后一個字母FecLinux聯(lián)盟
        w 光標所在位置到下個字的第一個字母FecLinux聯(lián)盟
        b 光標所在位置到上個字的第一個字母FecLinux聯(lián)盟
        $ 光標所在位置到該列的最后一個字母FecLinux聯(lián)盟
        0 光標所在位置到該列的第一個字母FecLinux聯(lián)盟
        ) 光標所在位置到下個句子的第一個字母FecLinux聯(lián)盟
        ( 光標所在位置到該句子的第一個字母FecLinux聯(lián)盟
        } 光標所在位置到該段落的最后一個字母FecLinux聯(lián)盟
        { 光標所在位置到該段落的第一個字母FecLinux聯(lián)盟
      說實在的,組合這些指令來編輯文件有一點點藝術氣息。不管怎麼樣,它們提供更多編輯文字的能力。值得注意的一點是刪除與復制都會將指定范圍的內(nèi)容放到暫存 區(qū)里,然后就可以用指令 p 貼到其它地方去,這是 VIM 用來處理區(qū)段拷貝與搬移的辦法。FecLinux聯(lián)盟
      FecLinux聯(lián)盟
      某些 VIM 版本,例如 Linux 所用的 elVIMs 可以大幅簡化這一坨指令。如果稍微觀察一下這些編輯指令就會發(fā)現(xiàn)問題其實是定范圍的方式有點雜,實際上只有四個指令罷了。指令 v 非常好用,只要按下 v 鍵,光標所在的位置就會反白,然后就可以移動光標來設定范圍,接著再直接下指令進行編輯即可。FecLinux聯(lián)盟
      FecLinux聯(lián)盟
      對於整列操作, VIM 另外提供了更方便的編輯指令。前面曾經(jīng)提到過刪除整列文字的指令 dd 就是其中一個;cc 可以修改整列文字;而 yy 則是復制整列文字;指令 D 則可以刪除光標到該列結(jié)束為止所有的文字。FecLinux聯(lián)盟
      FecLinux聯(lián)盟
      檔案指令FecLinux聯(lián)盟
      FecLinux聯(lián)盟
      檔案指令多以 : 開頭,跟編輯指令有點區(qū)別。例如前面提到結(jié)束編輯的指令就是 :q。現(xiàn)在就簡單說明一下作為本篇故事的結(jié)尾:FecLinux聯(lián)盟
        :q 結(jié)束編輯(quit)FecLinux聯(lián)盟
        如果不想存檔而要放棄編輯過的檔案則用 :q! 強制離開。FecLinux聯(lián)盟
        :w 存檔(write)FecLinux聯(lián)盟
        其后可加所要存檔的檔名。FecLinux聯(lián)盟
        可以將檔案指令合在一起,例如 :wq 即存檔后離開。FecLinux聯(lián)盟
        zz 功能與 :wq 相同。FecLinux聯(lián)盟
      另外值得一提的是 VIM 的部份存檔功能。可以用 :n,mw filename 將第 n 行到第 m 行的文字存放的所指定的 filename 里去哩。時代在變,世界在變, VIM 也在變,不過大致上就這樣。好了,但愿從此以后王子跟公主過著幸福快樂的生活。

    出處: http://hi.baidu.com/ps3108/blog/item/f85ae80efe0789ce7acbe116.html

    posted on 2008-05-17 13:21 Joshua Yan 閱讀(475) 評論(0)  編輯  收藏 所屬分類: Linux
    主站蜘蛛池模板: 国产亚洲精品看片在线观看 | 成年人视频在线观看免费| 久久亚洲高清观看| 国产精品hd免费观看| 日产乱码一卡二卡三免费| 亚洲精品自偷自拍无码| 24小时免费直播在线观看| 国产精品亚洲专区在线观看 | 精品无码免费专区毛片| 亚洲综合久久久久久中文字幕| 99久热只有精品视频免费看| 青娱分类视频精品免费2| 亚洲理论精品午夜电影| 噼里啪啦免费观看高清动漫4| 久久国产亚洲精品| 女性自慰aⅴ片高清免费| 美女一级毛片免费观看| 亚洲w码欧洲s码免费| 亚洲中文字幕久久久一区| 一二三四在线观看免费高清中文在线观看| 精品日韩99亚洲的在线发布| 免费毛片在线视频| 久久亚洲AV无码精品色午夜| 动漫黄网站免费永久在线观看| 亚洲日本va一区二区三区| 国产一级淫片a视频免费观看| 思思久久99热免费精品6| 久久亚洲精品中文字幕无码 | 免费a在线观看播放| 中国一级毛片免费看视频| 日本免费福利视频| 大妹子影视剧在线观看全集免费| 亚洲午夜精品久久久久久人妖| 欧洲乱码伦视频免费| 男女作爱免费网站| 亚洲色欲www综合网| 亚洲成人影院在线观看| 在免费jizzjizz在线播| 国产成人 亚洲欧洲| 日韩中文字幕免费| 国产在线精品免费aaa片|