軟件是對質量的不懈追求

          vim 的一些高級用法

          說明:如果你準備把本文中的命令放到配置文件(比如 .vimrc)中而不是在命令行執行,那么請去掉開頭的冒號。

          ★ 鍵映射

          :maptype key command

          其中,key 是要映射的鍵(序列),command 是所要映射的命令,maptype 包括如下幾種:

          map  命令,可視和命令追加模式下的鍵映射

          vmap 可視模式下的鍵映射

          nmap 命令模式下的鍵映射

          omap 命令追加模式下的鍵映射

          map! 插入和命令行模式下的鍵映射

          imap 插入模式下的鍵映射

          cmap 命令行模式下的鍵映射

          說明:命令追加模式指的是命令輸入中的狀態,也就是在輸入一個需要多個按鍵的命令時,已經開始輸入但未完成的狀態。

          舉個例子,

          :map <F2> gg

          的意思是在命令,可視和命令追加模式把 F2 鍵映射為命令 gg,也就是說,當在這三種模式下時,按下 F2 鍵,就相當于按下了鍵序列 gg,其作用是定位到第一行。

          要想避免 vim 把你映射的 command 中的內容再次映射的話,應該使用 noremap,其格式與 map 時相同。這時候,上面的各種 maptype 分別對應如下:

          noremap  命令,可視和命令追加模式下的鍵映射(無二次映射的)

          vnoremap 可視模式下的鍵映射(無二次映射的)

          nnoremap 命令模式下的鍵映射(無二次映射的)

          onoremap 命令追加模式下的鍵映射(無二次映射的)

          noremap! 插入和命令行模式下的鍵映射(無二次映射的)

          inoremap 插入模式下的鍵映射(無二次映射的)

          cnoremap 命令行模式下的鍵映射(無二次映射的)

          取消一個鍵映射用 unmap,格式為 unmap key。其中 key 為之前定義了映射的鍵,unmap 可以換為如下幾種之一:

          unmap  取消命令,可視和命令追加模式下的鍵映射

          vunmap 取消可視模式下的鍵映射

          nunmap 取消命令模式下的鍵映射

          ounmap 取消命令追加模式下的鍵映射

          unmap! 取消插入和命令行模式下的鍵映射

          iunmap 取消插入模式下的鍵映射

          cunmap 取消命令行模式下的鍵映射

          ★ 把當前目錄設為正在編輯的文件所在的目錄

          :cd %:p:h

          說明:只在類 Unix 操作系統下可用。

          :lcd %:p:h

          說明:在所有操作系統下可用。

          ★ 打開文件的時候自動將當前目錄設為該文件所在的目錄

          在 .vimrc 中加入如下行:

          :au BufEnter * :cd! %:p:h

          ★ 轉換文件格式

          由于 Unix、Window 和 MacOS 的換行符的內部表示不一樣,因此有時候需要轉換文件格式。

          將文件格式轉換為 Unix 格式:

          :set fileformat=unix

          將文件格式轉換為 Windows 格式:

          :set fileformat=dos

          ★ 讓 gvim 啟動時窗口最大化(只在 Windows 下可用)

          在 _vimrc 中加入如下行

          autocmd GUIEnter * simalt ~x

          posted on 2009-11-14 14:08 BlakeSu 閱讀(294) 評論(0)  編輯  收藏


          只有注冊用戶登錄后才能發表評論。


          網站導航:
          博客園   IT新聞   Chat2DB   C++博客   博問  
           
          主站蜘蛛池模板: 徐闻县| 德昌县| 盐津县| 宣恩县| 大渡口区| 安平县| 大石桥市| 大化| 普宁市| 林西县| 香河县| 梁山县| 云阳县| 民丰县| 敖汉旗| 阳城县| 正镶白旗| 虹口区| 封丘县| 桐梓县| 通海县| 宣恩县| 彭泽县| 武冈市| 三门县| 榆社县| 临洮县| 青州市| 闵行区| 涿鹿县| 筠连县| 沧州市| 醴陵市| 卢湾区| 永胜县| 新绛县| 广宁县| 昌宁县| 健康| 平原县| 饶平县|