java Source

            BlogJava :: 首頁(yè) :: 聯(lián)系 :: 聚合  :: 管理
            14 Posts :: 24 Stories :: 8 Comments :: 0 Trackbacks
          VIM
           什么人適合使用 VIM ?
          追 求編 輯 效 率的 程序員
          VIM 的作者是程序員
          他為程序員開(kāi)發(fā)了許多有用的功能
          其 它經(jīng) 常 處 理純 文本的 人 員
          中小型企業(yè) Web 開(kāi)發(fā)人員
          編寫(xiě) LaTeX 文檔的研究人員
          Unix / Linux 系統(tǒng)管理員

          什么人不適合使用 VIM ?
          生 活、 工 作 和學(xué) 習(xí)無(wú)需 和 純 文本 打 交道 的 人
          處理其它類(lèi)型的文件有專門(mén)的工具
          打 字速 度 慢 于智 能感知 運(yùn) 行 速度 的 人
          VIM 目前暫不支持智能感知
          被強(qiáng)大的 IDE 慣壞了的人
          強(qiáng)大順手的 IDE 比方便快捷的編輯器更重要


          Linux 下中文處理
          編 輯時(shí) 不 能 輸入 中文
          :set encoding=cp936
          菜 單顯 示 是 亂碼
          :so $VIMRUNTIME/delmenu.vim
          :so $VIMRUNTIME/menu.vim


          選擇喜歡的字體
          通 過(guò)菜 單 與 對(duì)話 框選擇 字 體
          編輯 --> 選擇字體
          只有等寬字體可以被選中
          適合程序員使用的字體基本原則
          Bitstream Vera Sans Mono
          0Oo 1Il
          記 住選 中 的 字體 名稱
          :set guifont?
          將顯示結(jié)果抄下來(lái)備用


          VIM 基本操作
          VIM 是一個(gè)有模式的編輯器
          Normal 模式下按鍵序列對(duì)應(yīng)命令
          按 i 鍵進(jìn)入 Insert 模式
          按 : 進(jìn)入 command 模式
          Insert 模式下可以輸入文本
          按 ESC 回到 Normal 模式
          Command 模式下輸入命令
          有模式導(dǎo)致 VIM 快捷鍵長(zhǎng)度較短


          使用 hjkl
          VIM 支持使用方向鍵移動(dòng)光標(biāo)
          在 insert 狀態(tài)下移動(dòng)光標(biāo)會(huì)比較方便
          使 用 h jk l 移 動(dòng) 光 標(biāo) 編 輯 效 率 更 高
          距離近,按鍵方便,眼睛無(wú)需離開(kāi)屏幕


          vimtutor
          vimtutor 是 VIM 入門(mén)非常好的學(xué)習(xí)材料
          Linux 用戶
          在終端中輸入 vimtutor
          啟動(dòng)字符界面的 vimtutor
          W in d o ws 用 戶
          在開(kāi)始菜單中找 vimtutor 快捷方式
          啟動(dòng)后出現(xiàn)亂碼,重新選擇一個(gè)中文字體即可


          查找替換
          準(zhǔn) 備工 作
          打開(kāi) VIM ,按 i ,輸入:
          this is a test
          查 找替 換
          按 ESC 回到 normal 狀態(tài),輸入:
          :%s/ /^M/g
          其中 ^M 使用 Ctrl-v Ctrl-m 的方式輸入
          將所有空格替換為回車(chē),文本變?yōu)?4 行


          行的拼接
          查 找 \n 替 換 為 空 格 可 以 實(shí) 現(xiàn) 拼 接
          這 里使 用 j 命 令拼 接 行
          按 ggVG ,全選
          按 : ,此時(shí)命令行顯示為:
          :'<,'>
          在其后輸入 j ,回車(chē)
          拼接完畢


          復(fù)制粘貼與重復(fù)動(dòng)作
          在 normal 狀態(tài)下按 yy ,復(fù)制當(dāng)前行
          按 1 2 p , 屏幕 上 即 出現(xiàn) 1 3 行 上述 字 樣
          12 表示將其后的命令執(zhí)行 12 次
          p 表示粘貼到當(dāng)前行之后
          VIM 里大部分命令都可以加上數(shù)字表明執(zhí)行次數(shù)


          列操作
          選 中全 文 第 一列
          按 gg 跳到開(kāi)頭
          按 Ctrl-v 進(jìn)入列選擇狀態(tài)
          按 G 跳到末尾
          將 每行 第 一 列變 為大寫(xiě)
          按 U 表示把選中內(nèi)容變大寫(xiě)
          按 u 表示把選中內(nèi)容變小寫(xiě)
          按 ~ 表示翻轉(zhuǎn)原有大小寫(xiě)
          在 每行 前 面 加一 個(gè)星號(hào) 和 一 個(gè)空 格
          選中第一列
          按 I 進(jìn)入插入狀態(tài)
          輸入 * ,按 ESC
          選 中前 兩 列 后按 x , 可以 進(jìn) 行 列刪 除
          編程時(shí)可以用于批量注釋和批量解注釋


          宏的錄制
          將 所 有 偶 數(shù) 行 的 a 改 成 an o th er
          錄 制宏
          按 gg 進(jìn)入第一行
          按 qm 進(jìn)入宏錄制狀態(tài),錄制到寄存器 m
          按 j 進(jìn)入第二行,按 $ 跳到行末
          按 2b ,光標(biāo)停在字母 a 上
          按 caw ,輸入 another ,按 ESC ,按 j 進(jìn)入下一行
          按 q 結(jié)束宏的錄制


          宏的播放
          單 次播 放
          按下 @m ,執(zhí)行 m 寄存器中的宏
          可以發(fā)現(xiàn)第 4 行的 a 也變成了 another
          多 次播 放
          輸入 1000@m
          可以發(fā)現(xiàn)所有偶數(shù)行的 a 都變成了 another
          到達(dá)文件底部時(shí)宏執(zhí)行出錯(cuò),會(huì)自動(dòng)停止
          最終并沒(méi)有真的執(zhí)行 1000 次


          點(diǎn)命令
          在 每行 末 尾 添加 一個(gè)感 嘆 號(hào)
          執(zhí) 行次 數(shù) 不 多的 簡(jiǎn)單操 作 無(wú) 需使 用 宏
          按 gg 進(jìn)入第一行,按 A 進(jìn)入行尾添加狀態(tài)
          輸入 ! ,按 ESC ,按 j 進(jìn)入第二行
          按 . 表示重復(fù)前一個(gè)操作,即行尾添加 !
          反復(fù)按 j.j.j.j.
          推薦大家左手鼠標(biāo)
          :%s/$/!/g


          VIM 入門(mén)
          2 1 天 學(xué)習(xí) 計(jì) 劃
          多讀文檔,少走彎路
          第一周:每天一遍 vimtutor
          熟悉基本操作,做到隨心所欲
          第 二周 、 第 三周 :通讀 用 戶 手冊(cè)
          讀用戶手冊(cè)的同時(shí)修訂出適合自己的 .vimrc
          目前手冊(cè)有中文版譯本可供下載

          posted on 2005-11-15 14:18 JustinLei 閱讀(602) 評(píng)論(0)  編輯  收藏 所屬分類(lèi): Linux
          主站蜘蛛池模板: 额尔古纳市| 泰宁县| 鄂尔多斯市| 海兴县| 休宁县| 轮台县| 双城市| 温泉县| SHOW| 巴彦淖尔市| 永嘉县| 正安县| 静宁县| 报价| 化州市| 红原县| 通山县| 正阳县| 樟树市| 长海县| 栾城县| 耒阳市| 广昌县| 民和| 昂仁县| 龙海市| 云龙县| 常德市| 油尖旺区| 来凤县| 西和县| 威远县| 馆陶县| 苍山县| 宁南县| 志丹县| 宜川县| 禄劝| 长海县| 井冈山市| 武陟县|