.TH VIM 1 "2006-04-11" .SH "名稱" vim \- Vi IMproved, 一個程式設計師的文字編輯器 .SH "概述" .br .B vim [options] [file ..] .br .B vim [options] - .br .B vim [options] \-t tag .br .B vim [options] \-q [errorfile] .PP .br .B ex .br .B view .br .B gvim .B gview .B evim .B eview .br .B rvim .B rview .B rgvim .B rgview .SH "描述" .B Vim 是一個同 Vi 向上相容的文字編輯器。 它可以用來編輯任何純文字。 它特別適合用來編輯程式。 .PP 它對 Vi 作了許多增強:多層撤銷、多視窗、多緩衝區(buffer)、 高亮語法顯示、命令列編輯、檔名補全、線上幫助、可視選擇等等。 請用 ":help vi_diff.txt" 檢視 .B Vim 和 Vi 之間差別的摘要。 .PP 在執行 .B Vim 的時候,可以用 ":help" 命令獲得很多幫助資訊。 請參考下面的“線上幫助”一節。 .PP 通常情況下, .B vim 使用直接把檔名作為引數的方法來編輯檔案: .PP vim 檔名 .PP 更通用地來說, .B Vim 使用下述方式從命令列啟動: .PP vim [選項] [檔案列表] .PP 如果沒有給定檔案,則編輯器會開啟一個空的緩衝區。 否則就會用下面四個中的一個方式來選擇要編輯的檔案。 .TP 12 檔案 .. 檔名列表。 第一個會作為當前檔案讀入緩衝區。 游標會停在緩衝區的第一行。 您可以使用 ":next" 命令轉到其它的檔案。 如果要編輯一個以 "-" 開頭的檔案,請在檔案列表前面加上 "\-\-"。 .TP \- 從標準輸入讀取要編輯的檔案。命令從標準錯誤讀取,此時標準錯誤應當是一個 TTY。 .TP -t {tag} 被 編輯的 檔案 和 游標的 初始位置 由 標記 (tag) 決定, 標記 有點像 一種 goto 標籤 (goto label). 在 標記檔案中 找到 標記, 相應的 檔案 成為 當前檔案, 相應的 命令 被執行. 這種方式 常用於 C 程式, 標記 就是 函式名, 當前檔案 就是 包含 那個函式的 檔案, 游標 停留在 函式的 開始處. 見 ":help tag-commands"。 .TP -q [errorfile] 執行時 進入 快速修復模式. 讀取 [errorfile] 檔案 並顯示 第一個 錯誤. 如果 沒有 [errorfile] 檔案, 檔名 由 'errorfile' 選項 決定 (在 Amiga 為 "AztecC.Err", 在 其他系統中 為 "errors.vim"). 可以 用 ":cn" 命令 跳到 其它錯誤處. 見 ":help quickfix"。 .PP .B Vim 會 根據 不同命令 有 不同的 表現, 儘管 它們 可能 是 一個 可執行 檔案. .TP 10 vim 正常 模式, 所有 都是 預設狀態. .TP ex 以 Ex 模式 執行. 用 ":vi" 命令 進入 正常模式. 也可以 加上 "-e" 選項 進入 此模式. .TP view 以 只讀模式 執行. 你被禁止 寫檔案. 也可以 加上 "-R" 選項 進入 此模式. .TP gvim gview GUI 版本。 開啟 一個 新的視窗. 也可以 加上 "-g" 選項 進入 此模式. .TP rvim rview rgvim rgview 同 上面的 相同, 只是 加上了 限制, 不能執行 shell 程式, 也 不能 暫停 .B Vim . 也 可以 加上 "-Z" 選項 進入 此模式. .SH "選項 (OPTIONS)" 所有選項 都可以 以 任何順序 出現, 可以 在檔名前, 也可以 在檔名後. 沒有 引數的 選項 可以 出現在 一個 "-" 後面. .TP 12 +[num] 對於 第一個 檔案, 游標 會停在 第 "num" 行. 如果 沒有 "num" , 則 游標 會停在 最後一行. .TP +/{pat} 對於 第一個檔案, 游標 會停在 {pat} 第一次 出現的 地方. 搜尋 模式 見 ":help search-pattern"。 .TP +{command} .TP -c {command} 讀入 第一個 檔案後 會 執行 {command} 命令. {command} 應為 Ex 命令. 如果 {command} 中 包含有 空格, 必須 用雙引號 括住 (這個取決於所用的 shell). 例: Vim "+set si" main.c .br 注意: 你 最多 可以用 10 個 "+" 或者 "-c" 命令. .TP -b 二進位制模式. 設定 一些選項, 這樣 就可以 用來 編輯 二進位制 和 可執行 檔案 了. .TP -C 相容. 設定 'compatible' 選項. 這樣 就算 存在 .vimrc 檔案 .B Vim 也會 基本上 象 Vi 一樣了. .TP -d {device} 開啟 {device} 用作終端, 只在 Amiga 下。 例: "\-d con:20/30/600/150". .TP -e 以 Ex 模式 執行 .B Vim , 就像 執行 "ex" 一樣。 .TP -f 前臺 執行。 對於 GUI 版本, .B Vim 不會 同執行它的 shell 分離。 在 Amiga 中, .B Vim 不會 重新啟動 來 開啟一個 新視窗. 這個選項 會用在當 .B Vim 被 另外一個 程式執行, 並且 這個程式 想等編輯動作 結束後 再執行 的 時候 (如 mail). 在 Amiga 上 ":sh" 和 ":!" 不會起作用. .TP -F 如果 .B Vim 編譯時 加入了 對 從右到左 書寫的 檔案 FKMAP 以及 Farsi 鍵盤對映 的支援, .B Vim 會 以 Farsi 模式 執行, 比如 設定 'fkmap' 和 'rightleft' 選項.不然 .B Vim 會 顯示 一條 錯誤資訊 並 終止. .TP -g 如果 .B Vim 編譯時 加入 GUI 支援, 會開啟 GUI, 不然 .B Vim 會 顯示 一條 錯誤資訊 並 終止. .TP -h .B Vim 顯示 命令列 引數 和 選項的 幫助, 然後 終止. .TP -H 如果 .B Vim 編譯時 加入了 對 從右到左 書寫的 檔案 RIGHTLEFT 以及 Hebrew 鍵盤對映 的支援, .B Vim 會以 Hebrew 模式 執行, 比如 設定 'hkmap' 和 'rightleft' 選項. 不然 .B Vim 會 顯示 一條 錯誤資訊 並 終止. .TP -i {viminfo} 准許 使用 viminfo 檔案, 這個 選項 設定 使用的 檔名, 預設的 是 "~/.viminfo". 用 "NONE" 檔名 也可以 跳過 使用 .viminfo 檔案. .TP -L 同 -r 一樣. .TP -l Lisp 模式. 開啟 'lisp' 和 'showmatch' 選項. .TP -m 禁止 修改檔案. 設定 'write' 選項, 這樣 就不能 寫檔案了. .TP -N 非相容 模式. 設定 'compatible' 選項. 這樣 .B Vim 會 表現得 更好, 就算 .vimrc 檔案 不存在 也會 同 Vi 不相容. .TP -n 禁止 交換檔案, 這樣 在崩潰後 就 不能 恢復 檔案了. 對於 編輯 在很慢的 媒體中的 檔案 很有好處 (比如軟盤), 也可以 用 ":set uc=0" 禁止交換, 用 ":set uc=200" 開啟 交換. .TP -o[N] 開啟 N 個視窗. 如果沒有 N, 為 每個檔案 開一個 視窗. .TP -R 只讀 模式. 設定 'readonly' 選項. 你 仍然 可以 編輯 緩衝區, 但是 不能 重寫檔案. 如果 你要 重寫檔案, 必須在 Ex 命令中 用驚歎號, 比如 ":w!". -R 選項 隱含了 -n 選項 (見下). 'readonly' 選項 可以 用 ":set noro" 設定. 見 ":help 'readonly'". .TP -r 列出 交換檔案, 顯示 關於 恢復檔案的 資訊. .TP -r {file} 恢復 模式. 交換檔案 是 用來 恢復 在 編輯過程中 崩潰了的 檔案. 交換 檔名 是 被編輯檔名 後面 加上 ".swp". 見 ":help recovery". .TP -s 安靜 模式. 只在 用 "Ex" 啟動 或者 用了 "-e" 選項 才有用. .TP -s {scriptin} 讀入 指令碼檔案 {scriptin}. 檔案裡的 字元 就像 你 直接 輸入 一樣的, 也 可以 用 ":source! {scriptin}" 命令 實現 這個功能. 如果 在 編輯器 結束前 就 讀到了 檔案尾, 就 接著 從鍵盤 讀入. .TP -T {terminal} 告訴 .B Vim 你 用的 終端的 名字, 只有 當 不能 自動確定 的時候 才這樣. 它 必須是 .B Vim (builtin) 能辨認的 終端 或者是 在 termcap 或者 terminfo 檔案中 定義了的. .TP -u {vimrc} 用 {vimrc} 檔案 裡的 命令 來初始化, 跳過 所有 其它的 初始化, 用 這個 來編輯 特殊型別的 檔案. 也可以 用 "NONE" 來 跳過 所有初始化. 在 vim 中 用 ":help initialization" 檢視 更多資訊. .TP -U {gvimrc} 用 {gvimrc} 檔案 裡的 命令 來初始化 GUI, 跳過 所有 其它的 GUI 初始化, 也 可以 用 "NONE" 來跳過 所有 GUI 初始化. 在 vim 中 用 ":help gui-init" 檢視 更多資訊. .TP -V 冗長 顯示. 顯示 執行 初始化程式碼 和 讀入的 檔案, 並且 寫 viminfo 檔案. .TP -v 以 Vi 模式執行 .B Vim , 就像 執行 "vi" 一樣, 只有 執行 "ex" 時 才有用. .TP -w {scriptout} 所有 在 .B Vim 退出前 你鍵入的 字元 都會被 存入 {scriptout} 檔案. 這 用來 建立一個 指令碼檔案, 你 可以用 "vim -s" 和 ":source!" 來使用. 如果 {scriptout} 存在, 會 把 字元 追加到 後面. .TP -W {scriptout} 同 -w 一樣, 但是 是覆蓋 原來的檔案. .TP -x 寫檔案時 加密. 會提示你 輸入密碼. .TP -Z 受限 模式. 同執行 以 "r" 開頭的 程式 同效. .TP -- 表明 選項結束. 在此之後的 引數 都會被認為 是 檔名, 可以 用這個 來編輯 一個 以 '-' 開頭 的檔案. .SH "線上幫助 (ON-LINE HELP)" 在 .B Vim 中鍵入 ":help" 來 獲得 幫助. 用 ":help subject" 來 獲得 關於 一個 特定主題的 幫助. 例如 用 ":help ZZ" 來 獲得 關於 "ZZ" 的幫助. 用 和 CTRL-D 來 完成 幫助主題 (":help cmdline-completion"). 可以 用 標記 從 一個地方 跳到 另一個 地方 (有點像 超文字連線, 見 ":help"). 所有的 文件 都可以 這樣 來瀏覽, 比如 ":help syntax.txt". .SH "檔案" .TP 15 /usr/share/vim/vim80/doc/*.txt .B Vim 的文件檔案。 請使用 ":help doc\-file\-list" 獲得完整的列表。 .TP /usr/share/vim/vim80/doc/tags 在文件檔案中查詢資訊用的標籤檔案。 .TP /usr/share/vim/vim80/syntax/syntax.vim 系統層面的語法初始化檔案。 .TP /usr/share/vim/vim80/syntax/*.vim 各種語言的語法檔案。 .TP /usr/share/vim/vimrc 系統層面的 .B Vim 初始化檔案。 .TP ~/.vimrc 您的個人 .B Vim 初始化檔案。 .TP /usr/share/vim/gvimrc 系統層面的 gvim 初始化檔案。 .TP ~/.gvimrc 您的個人 gvim 初始化檔案。 .TP /usr/share/vim/vim80/optwin.vim ":options" 命令所用的指令碼檔案,這是個檢視和設定選項的好方法。 .TP /usr/share/vim/vim80/menu.vim 系統層面的 gvim 選單初始化檔案。 .TP /usr/share/vim/vim80/bugreport.vim 用來生成錯誤報告的指令碼檔案。詳見 ":help bugs"。 .TP /usr/share/vim/vim80/filetype.vim 根據檔名來判定檔案型別的指令碼檔案。詳見 ":help 'filetype'"。 .TP /usr/share/vim/vim80/scripts.vim 根據檔案內容來判定檔案型別的指令碼檔案。詳見 ":help 'filetype'"。 .TP /usr/share/vim/vim80/print/*.ps 用於 PostScript 列印的檔案。 .PP 要了解最新資訊,請檢視 VIM 主頁: .br \ .SH "參見" vimtutor(1) .SH "作者" .B Vim 的大部分都是 Bram Moolenaar 在很多人的幫助下完成的。 請見 .B vim 下的 ":help credits"。 .br 雖然不大可能還有原始的程式碼存在, 但是 .B Vim 仍然是基於 Stevie 寫的程式碼,之後被 Tim Thompson、 Tony Andrews 和 G.R. (Fred) Walter 修改而成的。 .SH "缺陷" 也許有吧。 請用 ":help todo" 檢視已知問題的列表。 .PP 請留意,有不少地方可能被其他人視為缺陷與錯誤, 但實際上這只是因為程式忠實地還原了 Vi 的行為操作。 如果你覺得有些地方“因為和 Vi 的行為不一樣”而應該是錯誤的, 也許你應該再仔細閱讀一下 vi_diff.txt 檔案(或者在 Vim 中輸入 "help vi_diff.txt")。 您也應該查一查“compatible”和“cpoptions”選項的用法。 .SH "[中文版原維護人]" .B 唐友 \ .SH "[中文版原最新更新]" .BR 2001/8/30 .SH "[原中國Linux論壇man手冊頁翻譯計劃]" .BI http://cmpp.linuxforum.net .SH "跋" .br 本頁面中文版由中文 man 手冊頁計劃提供。 .PP 獲取日期:2016-12-14 .br 翻譯日期:2016-12-18 .br .br 中文 man 手冊頁計劃:\fBhttps://github.com/man-pages-zh/manpages-zh\fR