.TH VIM 1 "1998 December 28" .SH NAME vim \- Vi IMproved, 一個程序員的文本編輯器 .SH "總覽 (SYNOPSIS)" .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 .br .B rvim .B rview .B rgvim .B rgview .SH "描述 (DESCRIPTION)" .B Vim 是 一個 同 Vi 向上兼容的 文本 編輯器, 可以 用來 編輯 任何 ASCII 文本, 特別 適合 用來 編輯 程序. .PP 它對 Vi 作了 許多 增強: 多層撤銷, 多窗口, 多緩衝區(buffer), 高亮度 語法顯示, 命令行編輯, 文件名匹配, 在線幫助, 可視選定, 等等. 用 ":help vi_diff.txt" 看 .B Vim 和 Vi 的差別 的 摘要. .PP 在運行 .B Vim 的時候 可以用 ":help" 命令 獲得 很多 幫助. 參考 下面的 在線幫助 一節. .PP 一般 可用 .PP vim file .PP 命令 打開 .B Vim 來 編輯 一個 文件. 概括的說, 可以用 .PP vim [options] [filelist] .PP 命令 來運行 .B Vim . 如果 沒有 文件名, 編輯器 就會 打開 一個 空的 緩衝區. 否則 就會用 下面 四個中的一個 來選擇 要編輯的 文件. .TP 12 file .. 文件名列表. 第一個 會 作爲 當前 文件 讀入 緩衝區, 光標 會 停在 緩衝區的 第一行. 你 可以用 ":next" 命令 轉到 其它的 文件. 如果 要編輯 一個以 "-" 開頭的 文件. 在文件 列表 前面 加上 "--". .TP - 從 標準輸入 讀取 被編輯的 文件. 從 標準 錯誤輸出 (應該 是個 終端) 讀入 命令. .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 "文件 (FILES)" .TP 15 /usr/share/vim/vim56/doc/*.txt .B Vim 文檔文件. 用 ":help doc-file-list" 獲得 完整的 列表. .TP /usr/share/vim/vim56/doc/tags 在 文檔文件中 查找信息 用的 標籤文件. .TP /usr/share/vim/vim56/syntax/syntax.vim 系統 語法 初始化 文件. .TP /usr/share/vim/vim56/syntax/*.vim 各種語言的 語法文件. .TP /usr/share/vim/vimrc 系統 .B Vim 初始化文件. .TP /usr/share/vim/gvimrc 系統 gvim 初始化文件. .TP /usr/share/vim/vim56/optwin.vim ":options" 命令 所用的 腳本文件, 這是個 查看 和 設置選項的 很好的 辦法. .TP /usr/share/vim/vim56/menu.vim gvim 的 系統菜單 初始化文件. .TP /usr/share/vim/vim56/bugreport.vim 用來 生成 錯誤報告的 腳本文件, 見 ":help bugs". .TP /usr/share/vim/vim56/filetype.vim 根據 文件名 來判定 文件類型 的 腳本文件, 見 ":help 'filetype'". .TP /usr/share/vim/vim56/scripts.vim 根據 文件內容 來判定 文件類型 的 腳本文件, 見 ":help 'filetype'". .PP 最新 信息 參見 VIM 主頁: .br \ .SH "參見 (SEE ALSO)" vimtutor(1) .SH "作者 (AUTHOR)" Most of .B Vim 的大部分 都是 Bram Moolenaar 在 很多人的 幫助下 完成的. 見 ":help credits". .br 雖然 不大會有 最早的 代碼存在, 但是 .B Vim 基於 Stevie 寫的代碼, 之後被 Tim Thompson, Tony Andrews and G.R. (Fred) Walter 修改, 然後 才形成的. .SH "錯誤 (BUGS)" 多半都有. 用 ":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 手冊頁計劃提供。 .br 中文 man 手冊頁計劃:\fBhttps://github.com/man-pages-zh/manpages-zh\fR