Vim编辑器学习笔记
前言
有一個有趣的說法,說世界上的程序員分三種,一種使用 Emacs,一種使用 vim,剩余的使用其它編輯器——完全無視 Ultraedit / Notepad++ 等編輯器的存在。今天,我懷著朝圣的心態,嘗試了一下 vim 這個神器,發現它不像傳說中那么深奧神秘和枯燥,也還算較為容易上手。先把學習過程記錄在此,和各位同學共享共勉。
Vim的前世今生
Long long ago(上世紀70甚至80年代之前),UNIX 用戶都是用廉價的終端機通過電話線連到 UNIX 服務器上的,因為傳輸速率慢,所以當時的編輯器都是行模式編輯——每次只能顯示操作一行。ed 是 UNIX 上最古老最基本的行模式編輯器,ex 是ed 的擴展,而 vi 構建在 ex 之上,并且引入了大家所熟悉的全屏編輯模式。發展至今,vi 已成為 Linux 最常用的編輯器,很多 Linux 發行版都默認安裝了 vi。
vi 是 visual interface 的縮寫,vim 是 vi IMproved (增強版的 vi ),但最初,vim 是 vi IMitation(冒牌的 vi )。VIM 是一個超級超級強大的文本編輯器,和 Emacs 一起,被業界視為宇宙中最強大的兩個編輯器。
關于Vim,你必須知道的概念
和 Notepad++ 不同,vi(vim) 是有模式的。有人總結了很多模式,比如低行模式、normal 模式、編輯模式、選擇模式、鼠標模式等。我個人覺得,倒不如簡單地分為命令模式和編輯模式,而在命令模式下可以把命令分為很多類型。編輯模式下,使用 vi(vim) 和使用 Notepad++ 幾乎一樣。當需要設置、保存、查找、替換、定位等操作時,可以切換至命令模式,直接輸入命令。任何情況下,按 Esc 鍵退回到命令模式;在命令模式下,按 i 或 a 鍵即可進入編輯模式。
除了有模式這個特色之外,vim還有很多高級功能,比如寄存器、宏、書簽、映射等。在這里,我們只說一下寄存器。vim 里面的寄存器可以用來保存拷貝的文本、記錄的宏、設置的書簽等等,一般的編輯器都只有一個剪切板(MS Office 加入了多個剪切板),而 vim 和 Emacs 編輯器中的多寄存器可以實現多個剪切板的功能。vim 中有九類寄存器:
在windows環境下體驗vim
去 vim.org 下載 windows 平臺的 gvim 安裝程序(最新版本大概是8.0),安裝后運行 gvim,估計你會被這樣一個界面丑哭(要是你不小心少按了一個字母 g,運行了 vim,你可能永遠都不想再看到它了)。
但是,千萬不要輕易放棄,盡管這是一個追求顏值的時代。試試在鍵盤輸入:
:colo murphy看起來是不是舒服一點了呢?除了murphy,還有很多種風格可選,輸入colo按空格,再按Tab,可顯示全部風格。繼續操作,只需要幾行命令,就會讓gvim變成這個樣子
如果再按裝上常用的插件,比如,可以從代碼中提取類結構的taglist插件,gvim瞬間就成了這個樣子:
vi(vim)常用命令
- 打開文件、保存、關閉文件
- 插入文本或行
- 移動光標
- 刪除、恢復字符或行
- 搜索
- 跳轉至指定行
- 復制、粘貼
- 替換
配置vim
來吧,就用gvim編輯gvim的配置文件C:\Program Files (x86)\Vim_vimrc(操作系統或許會保護這個文件的讀寫權限,建議使用系統管理權限運行C:\Program Files (x86)\Vim\vim80\gvim.exe),在后面追加:
"處理文本中顯示亂碼 set encoding=utf-8 set fileencodings=utf-8,chinese,latin-1 if has("win32")set fileencoding=chinese elseset fileencoding=utf-8 endif"處理菜單及右鍵菜單亂碼 source $VIMRUNTIME/delmenu.vim source $VIMRUNTIME/menu.vim"處理consle輸出亂碼 language messages zh_CN.utf-8"配色方案:koehler/murphy colo murphy"字體設置 "set guifont=courier_new:h12"總是顯示標簽。0:不顯示;1:多于1個時顯示" set showtabline=2"開啟行號 set nu!"setnumber"開啟自動縮進, 7.3以上版本已自動開啟" set autoindent"縮進寬度為4個字符" set shiftwidth=4"tab寬度為4個字符" set tabstop=4"編輯時將所有tab替換為空格" set et"按一次Backspace就刪除4個空格" set smarttab"Gvim啟動后窗口最大化 autocmd GUIEnter * simalt ~x保存退出,再次打開gvim,你會發現世界變得如此美好!
安裝taglist插件
第一步,從 https://sourceforge.net/projects/ctags/files/ctags/5.8/ctags58.zip/download 下載ctags,解壓后將其中的ctags.exe 復制到gvim.exe 所在的目錄,在我這里是C:\Program Files (x86)\Vim\vim80
第二步,從 http://www.vim.org/scripts/script.php?script_id=273 下載taglist.zip文件,解壓,將doc\taglist.txt 文件復制到 C:\Program Files\Vim\vimfiles\doc下,
將plugin\taglist.vim 文件復制到 C:\Program Files\Vim\vimfiles\plugin下。
第三步,以管理員身份運行cmd,cd至C:\Program Files\Vim\vim80目錄,運行gvim.exe,命令模式下輸入":helptags C:\Program Files\Vim\vimfiles\doc",就會在C:\Program Files\Vim\vimfiles\doc下生成tags文件。
第四步,重啟gvim.exe,打開一個源碼文件,執行命令:Tlist,大功告成。
總結
以上是生活随笔為你收集整理的Vim编辑器学习笔记的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 高一学生计算机知识现状分析,关于高中信息
- 下一篇: python3交互模式下 按上翻箭头显示