⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 usr_05.cnx

📁 Vim 中文文档
💻 CNX
📖 第 1 页 / 共 2 页
字号:
*usr_05.txt*	Vim version 6.3  最近更新:2004年6月		    VIM用户手册 - by Bram Moolenaar		(译者:Nek_in http://vimcdoc.sf.net)			     选项设置Vim 可以按你的需要进行设置。本章告诉你怎样使 Vim 用你指定的选项启动,怎样增加插件以增强 Vim 的功能;以及怎样进行宏定义。|05.1|	vimrc 文件|05.2|	vimrc 示例解释|05.3|	简单键盘映射|05.4|	增加插件|05.5|	增加帮助|05.6|	选项窗口|05.7|	常用选项      下一章:|usr_06.txt|  使用语法加亮      前一章:|usr_04.txt|  做小改动	目录:|usr_toc.txt|=============================================================================*05.1*	vimrc 文件					*vimrc-intro*可能你已经厌倦了输入那些经常用到的命令了。要让 Vim 用你习惯的设置启动,你可以把这些设置写到一个叫 vimrc 的文件中。Vim 会在启动的时候读入这个文件。如果你不知道你的 vimrc 在什么地方,可以使用如下命令:>	:scriptnames命令列出的文件列表开头的几个中应该有一个叫 ".vimrc" 或者 "_vimrc" 的文件在你的home 目录中。    如果你还没有 vimrc 文件,请参考 |vimrc| 一节看看你应该在什么地方创建 vimrc文件。另外 ":version" 命令能告诉你 vim 在什么地方找 "用户的 vimrc 文件"。对于 Unix 系统,肯定是如下文件:>	~/.vimrc对于 MS-DOS 和 MS-Windows,常常使用下面其中一个文件:>	$HOME/_vimrc	$VIM/_vimrcvimrc 文件可以包含任何冒号命令。最简单的是设置选项命令。例如,如果你想 Vim 启动的时候始终开启 'incsearch' 选项,可以在你的 vimrc 文件中加上:>	set incsearch要使这个命令生效,你需要重启动 Vim。后面我们还会学到如何不退出 Vim 就能让它生效。这一章只解释最基本的东西。想了解更多关于 Vim 脚本的知识,请参见|usr_41.txt|。=============================================================================*05.2*	vimrc 示例解释					*vimrc_example.vim*在第一章中,我们曾经介绍过怎样用 vimrc 示例文件(包括在 Vim 发布中)使 Vim 以非vi 兼容模式启动(参见|not-compatible|)。这个文件可以在这里找到:	$VIMRUNTIME/vimrc_example.vim ~我们在这一节中介绍这个文件中用到的一些命令。这会对你自行参数设置有一定的帮助。但我们不会介绍所有的内容。你需要用 ":help" 获得更多的帮助。>	set nocompatible就像第一章所述,这些手册解释了 Vim 工作在改进的方式下,因此与 Vi 不完全兼容。要关闭 'compatible' 选项设,'nocompatible' 可以用于完成这个功能。>	set backspace=indent,eol,start这指明在插入模式下 <BS> 如何删除光标前面的字符。逗号分隔的三个值分别指:行首的空白字符,分行符和插入模式开始处之前的字符。>	set autoindent这使 Vim 在启动一个新行的时候使用与前一行一样的缩进。就是说,新行前面会有同样多的空白字符。启动新行是指用 <Enter> 换行,在普通模式下执行 "o" 命令等情况。>	if has("vms")	  set nobackup	else	  set backup	endif这告诉 Vim 当覆盖一个文件的时候保留一个备份。但 VMS 系统除外,因为 VMS 系统会自动产生备份文件。备份文件的名称是在原来的文件名上加上 "~" 字符。参见 |07.4| >	set history=50这个命令保存 50 个命令和 50 个查找模式的历史。如果你想 Vim 记住多些或者少些命令,可以把这个数改成其它值。>	set ruler总在 Vim 窗口的右下角显示当前光标位置。>	set showcmd在 Vim 窗口右下角,标尺的右边显示未完成的命令。例如,当你输入 "2f",Vim 在等你输入要查找的字符并且显示 "2f"。当你再输入w,"2fw" 命令被执行,"2f" 自动消失。	+-------------------------------------------------+	|text in the Vim window				  |	|~						  |	|~						  |	|-- VISUAL --			2f     43,8   17% |	+-------------------------------------------------+	 ^^^^^^^^^^^		      ^^^^^^^^ ^^^^^^^^^^	  'showmode'		     'showcmd'	'ruler'>	set incsearch在查找模式输入完前显示匹配点。>	map Q gq这定义一个键映射。下一节会介绍更多的相关内容。这将定义 "Q" 命令用来完成与 "gq"操作符相同的功能,这是在 Vim 5.0 版前 "Q" 命令的作用。如果没有设置这个映射,"Q" 会启动 Ex 模式,这也许不是你想要的情况。>	vnoremap p <Esc>:let current_reg = @"<CR>gvs<C-R>=current_reg<CR><Esc>这是一个复杂映射。这里不介绍它是怎么工作的。它的作用是使 "p" 命令在可视模式下用拷贝的字符覆盖被选中的字符。你可以看到映射可以被用来执行相当复杂的操作。但其本质依然是一个命令序列而已,与你直接输入没有什么两样。>	if &t_Co > 2 || has("gui_running")	  syntax on	  set hlsearch	endif这激活语法加亮功能,但仅在颜色功能有效的时候才有效。而 'hlsearch' 选项告诉Vim 加亮上次查找模式匹配的地方。"if" 命令在设置选项的时候非常有用,它使设置命令在某些条件下才执行。更多的内容请参见|usr_41.txt|。							*vimrc-filetype*  >	filetype plugin indent on这启动三个非常灵巧的机制:1. 文件类型探测    当你开始编辑一个文件的时候,Vim 会试图确定这个文件的类型。当编辑 "main.c"    时,Vim 会根据扩展名 ".c" 认为这是一个 C 源文件。当你编辑一个文件前面是    "#!/bin/sh" 的文件时,Vim 会把它认作 "sh" 文件。文件类型探测用于语法加亮    和以下另两项。请参见|filetypes|。2. 使用文件类型相关的插件    不同的文件需要不同的选项支持。例如,当你编辑一个 "c" 文件,用 'cindent'    选项来自动缩进就非常有用。这些文件类型相关的选项在 Vim 中是通过文件类型    插件来实现的。你也可以加入自己的插件,请参见 |write-filetype-plugin|。3. 使用缩进文件    当编辑程序的时候,行缩进通常可以被自动决定。Vim 用不同的策略处理不同的    文件类型。请参见 |:filetype-indent-on| 和 'indentexpr'。>	autocmd FileType text setlocal textwidth=78这使 Vim 在一行长于 78 个字符的时候自动换行,但仅对纯文本文件中有效。这里包括两个部分。其中 "autocmd FileType text" 定义个自动命令,表示当文件类型被设置为"text" 的时候,后面的命令自动执行。"setlocal textwidth=78" 设置 'textwidth'选项为78,但仅对本文件有效。>	autocmd BufReadPost *	    \ if line("'\"") > 0 && line("'\"") <= line("$") |	    \   exe "normal g`\"" |	    \ endif这是又一个自动命令。这回它设置为在读入任何文件之后自动执行。后面那堆复杂的东西检查 '" 标记是否已被定义,如果是,则跳转到该标记。行首的反斜杠用于把所有语句连接成一行。这可以避免一行写得太长,请参见 |line-continuation|。这只在 Vim脚本文件中有效,在命令行中无效。=============================================================================*05.3*	简单键盘映射映射可以使你把一系列 Vim 命令绑定为一个单键。假设你要用一个大括号将一个特定的单词括起来。例如,把 "amount" 变成 "{amount}"。用 ":map" 命令,就可以让 F5 来完成这个工作。命令如下:>	:map <F5> i{<Esc>ea}<Esc><	Note:	在输入这个命令时,<F5> 要用四个字符表示。相似地,输入 <Esc> 不是直接按	<Esc> 键,而是输入五个字符。在读这份手册要注意这些区别!让我们来分解一下这个命令:    <F5>	F5 功能键。这是命令的触发器。当这个键被按下时,相应的命令即被		执行。        i{<Esc>     插入 { 字符。<Esc> 键用于退出插入模式。    e		移动到词尾。    a}<Esc>	插入 } 到单词尾。执行 ":map" 命令后,要在单词两端加上 {},只需要移到单词上的第一个字符并按 F5。在这个例子中,触发器是一个单键;它还可以是任何字符串。但若你使用一个已经存在的 Vim 命令,该命令将不在有效。所以你最好避免出现这种情况。    一个可用于映射的键是反斜杠。因为你很可能想定义多个映射,那就加上另一个字符。你可以映射 "\p" 为在单词两端加园括号,而映射 "\c" 为加花括号,例如:>	:map \p i(<Esc>ea)<Esc>	:map \c i{<Esc>ea}<Esc>你需要在敲入\后,立即敲入p,以便 Vim 知道它们组成一个命令。":map" 命令(无参数)列出当前已定义的映射,至少会包括普通模式下的那些。更多的内容参见 |40.1|。==============================================================================*05.4*	增加插件					*add-plugin* *plugin*Vim 可以通过插件增强功能。插件其实是一个当 Vim 启动的时候能被自动执行的脚本。简单地把插件放到你 Vim 的 plugin 目录中就可以使它生效。(这个功能在 |+eval| 被编译进 Vim 中时才有效)Vim 中有两种插件:       全局插件:用于所有类型的文件   文件类型插件:仅用于特定类型的文件我们将先讨论全局插件,然后涉及文件类型插件 |add-filetype-plugin|。全 局 插 件						*standard-plugin*当你启动 Vim,它会自动加载一些插件。你不需要为此做任何事。这些插件增加一些很多人想用的,但由 Vim 脚本实现而非编译进 Vim 中的功能。你可以在帮助索引中找到这些插件:|standard-plugin-list|。还可以参照 |load-plugin|。							*add-global-plugin*你可以加入一个全局插件使得某些功能在你每次使用 Vim 时都被开启。添加一个全局插件只要两步:1. 获得一个插件的拷贝2. 把它塞进合适的目录获 得 一 个 全 局 插 件在什么地方可以找到插件?- 有一些与 Vim 一起发布,你可以在 $VIMRUNTIME/macros 目录或其子目录中找到。- 从网上下载,查一下这个地方:http://vim.sf.net。- 在 Vim 的邮件列表中找:|maillist|。- 自己写一个,参见|write-plugin|。使 用 一 个 全 局 插 件首先阅读插件包括的说明文字,看看有没有什么特殊的限制。然后拷贝到你的插件目录:	系统		插件目录 ~

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -