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

📄 usr_24.cnx

📁 Vim 中文文档
💻 CNX
📖 第 1 页 / 共 2 页
字号:
*usr_24.txt*	For Vim version 6.3.		最近更新: 2004年6月		     VIM 用户手册 - Bram Moolenaar 著		  (译者: Chimin Yen http://vimcdoc.sf.net )			      快速插入输入文本时,Vim 提供你各种各样的方法来减少键击次数和避免打字错误。你可以利用插入模式下的补全功能来重复先前打过的单词。也可以把长词缩写成短词。甚至可以打出你键盘上没有的字符。|24.1|	更正|24.2|	显示匹配|24.3|	补全|24.4|	重复一次插入|24.5|	从另一行拷贝|24.6|	插入一个寄存器内容|24.7|	缩写|24.8|	插入特殊字符|24.9|	二元字母|24.10|	普通模式命令       下一章: |usr_25.txt|  编辑已经编排过的文本       前一章: |usr_23.txt|  编辑特殊文件         目录: |usr_toc.txt|==============================================================================*24.1*	更正退格键 <BS> 已经在前面提过了。它删除位于光标前一格的字符。而删除键 <Del> 则删除光标下(或者说光标后也可以)的那个字符。   当你把整个词都打错了的时候,用 CTRL-W 来更正:	The horse had fallen to the sky ~				       CTRL-W	The horse had fallen to the ~如果你把一行字弄得不可收拾,而要从头来过的话,用 CTRL-U 来删除。这个命令保留了光标之后的文本,也保留了行首的缩进。它只删除了自第一个非空字符至光标位置之间的文本。让光标位于下一行中 "fallen" 的 "f" 上,按 CTRL-U, 文本就成了这样:	The horse had fallen to the ~		      CTRL-U	fallen to the ~当你发现几个词之前有个错误,你需要把光标移到那儿作更正。例如, 你打了这样一行:	The horse had follen to the ground ~你要把 "follen" 改成 "fallen"。让光标留在行尾,你输入这个字符串就能更正那错误: >					<Esc>4blraA<	脱离插入模式			<Esc>	退回4个单词			     4b	移到字母 "o" 上 		       l	以字母 "a" 替代 			ra	重新开始插入模式    			  A另一种更正这个错误的方法: >		<C-Left><C-Left><C-Left><C-Left><Right><Del>a<End><	退回4个词		     <C-Left><C-Left><C-Left><C-Left>	移到字母 "o" 上 			<Right>	删除字母 "o"				       <Del>	插入字母 "a"					    a	移到行尾        				     <End>这种方法让你留在插入模式下,利用特殊键来移动光标。这类似于你在一个不分模式的编辑器里所采用的操作方法。它比较容易记忆,但比较费事 (你必须把你的手从字母键移动到光标方向键,而且, 不看键盘难以按准 <End> 键)。   这些特殊键在书写一个停留在插入模式下的映射时非常有用。额外所需的键盘录入也是值得的。   你在插入模式下可以利用的特殊键有以下这些:	<C-Home>	移到文件首	<PageUp>	上卷一屏	<Home>		移到行首	<S-Left>	左移一个单词	<C-Left>	左移一个单词	<S-Right>	右移一个单词	<C-Right>	右移一个单词	<End>		移到行尾	<PageDown>	下卷一屏	<C-End>		移到文件尾还有很多键,参见 |ins-special-special|。==============================================================================*24.2*	显示匹配你键入一个右括号 ) 时,如果能知道它匹配哪个左括号 ( 会很方便。要让 Vim做到这点,用下面这个命令: >	:set showmatch现在你键入比如 "(example)" 这样几个字,当你键入右括号 ) 时, Vim 就把光标闪到匹配的左括号 ( 上,在那儿停留半秒钟, 然后返回原处。   如果匹配的左括号不存在,Vim 就鸣起响铃。这样你就会想起来你可能在哪儿忘了一个左括号,或键入了太多次的右括号。   Vim 也会为 [] 和 {} 这样的括号显示匹配。你不必等待光标返回原处才键入下一个字符,只要下一个字符一键入, 光标就会返回, 而插入就会跟以前一样继续。   你可以用 'matchtime' 选项改变 Vim 在匹配括号上停留的时间。例如,要让 Vim 等待1.5秒: >	:set matchtime=15指定的时间以 1/10 秒为单位。==============================================================================*24.3*	补全Vim 能自动补全插入的单词。你键入一个单词的开头部分,按 CTRL-P, Vim 就会为你猜测余下的部分。   例如,假定你正在建立一个 C 程序, 并要键入以下语句:	total = ch_array[0] + ch_array[1] + ch_array[2]; ~你先输入下面这部分:	total = ch_array[0] + ch_ ~此时,你用命令 CTRL-P 告诉 Vim 来补全这个词。Vim 就会搜索以光标前字符串开头的词。在这个例子中,就是 "ch_",与词 ch_array 匹配。所以,键入 CTRL-P 就会得到下面的结果:	total = ch_array[0] + ch_array ~再键入几个字符使这个语句变成这样(结尾是空格):	total = ch_array[0] + ch_array[1] +  ~如果你现在键入 CTRL-P,Vim 将再次搜索以补全光标前的词。由于光标前是空格, 它找到的是之前的第一个词,即 "ch_array"。 再键入 CTRL-P 给你下一个匹配的词,在本例中就是 "total"。第三次 CTRL-P 搜寻更前面的。如果那儿没其它的了,编辑器就会陷入无词可配状态,所以搜索就返回原处,即那个空格。第四次 CTRL-P 导致编辑器周而复始,又找到 "ch_array"。往下搜索,用 CTRL-N。由于在文件结尾搜索又绕回开头,CTRL-N 和 CTRL-P 将找到相同的匹配,但顺序不同。提示: CTRL-N 意为下一个匹配, 而 CTRL-P 意为前一个匹配。(译者:英文 Next 意为下一个,Previous 意为前一个)Vim 编辑器会非常努力的来补全不完整的词。默认情况下,它搜索如下一些地方:	1.当前文件	2.其它窗口内的文件	3.其它载入文件 (隐性缓冲)	4.未载入文件 (惰性缓冲)	5.标记文件	6.被当前文件以 #include 语句包含的所有文件选 项你可以利用 'complete' 选项定制搜索顺序。还可以使用 'ignorecase' 选项。设定这个选项后,搜寻匹配时大小写的区别就会被忽略。一个特殊的补全选项是 'infercase'。它的用处是在寻找匹配时不计大小写 ('ignorecase'必须先被设定),但仍然采用已键入部分的大小写作。这样, 如果你键入 "For" 而Vim 找到了匹配 "fortunately",所产生的结果将是 "Fortunately"。补 全 特 定 文 本如果你知道你要找什么,那么你可以用这些命令来补全某种类型的文本:	CTRL-X CTRL-F		文件名	CTRL-X CTRL-L		整行	CTRL-X CTRL-D		宏定义 (并搜索所包含的文件)	CTRL-X CTRL-I		当前文件以及所包含的文件	CTRL-X CTRL-K		词典文件内的单词	CTRL-X CTRL-T		近义词词典文件内的单词	CTRL-X CTRL-]		标记	CTRL-X CTRL-V		Vim 命令行每个命令之后,CTRL-N 可以用来搜索下一个匹配,而 CTRL-P 则用于搜索前一个匹配。   关于每个命令的详细用法,参见: |ins-completion|。补 全 文 件 名我们以 CTRL-X CTRL-F 为例。这个命令将找寻文件名。它在当前目录里搜索文件,并显示每一个与光标前单词匹配的文件名。   例如,假定你在当前目录里有下面这些文件:	main.c  sub_count.c  sub_done.c  sub_exit.c现在进入插入模式并开始键入:	The exit code is in the file sub ~就在这点上,你输入 CTRL-X CTRL-F。现在, Vim 通过查看当前目录里的文件来补全当前词 "sub"。最初的匹配是 sub_count.c。这不是你想要的,所以你按 CTRL-N 以匹配下一个文件。这次匹配的是 sub_done.c。再键入 CTRL-N 给了你 sub_exit.c。结果:	The exit code is in the file sub_exit.c ~如果文件名以 / (Unix) 或 C:\ (MS-Windows) 开头,那么你就能搜索文件系统下所有的文件。例如,键入 "/u" 然后 CTRL-X CTRL-F, 这将匹配 "/usr" (这是在 Unix 上):	the file is found in /usr/ ~如果你现在按 CTRL-N,你就又回到 "/u"。接受 "/usr/" 并进入下一层目录, 再来一次 CTRL-X CTRL-F:	the file is found in /usr/X11R6/ ~当然,匹配结果取决于你的文件系统上有什么文件。匹配结果以字母顺序来排列。==============================================================================*24.4*	重复一次插入如果你按 CTRL-A,编辑器就把你上次在插入模式下输入的文本再输入一次。   比如,假定你有个文件,开头是这样的:	"file.h" ~	/* Main program begins */ ~你在第一行开始处插入 "#include ":	#include "file.h" ~	/* Main program begins */ ~你再用命令 "j^" 往下来到下一行的开始处。现在你开始插入一个新的 "#include" 行。所以你键入: >	i CTRL-A结果就像下面这样:	#include "file.h" ~	#include /* Main program begins */ ~"#include " 被插入是因为 CTRL-A 会插入上次插入过的文本。现在你键入 "main.h"<Enter> 以结束这一行:	#include "file.h" ~	#include "main.h" ~	/* Main program begins */ ~CTRL-@ 命令会完成 CTRL-A 的操作后退出插入模式。这是一个快速重复插入一模一样的文本的一个方法。==============================================================================*24.5*	从另一行拷贝CTRL-Y 命令插入光标上方的字符。当你复制前一行文本的时候,这个命令很有用。例如,你有这么一行 C 代码:	b_array[i]->s_next = a_array[i]->s_next; ~现在你需要把这一行再键入一次,并以 "s_prev" 取代 "s_next"。换行以后, 按14次CTRL-Y,直到光标位于 "next" 的 "n" 上:	b_array[i]->s_next = a_array[i]->s_next;~	b_array[i]->s_ ~

⌨️ 快捷键说明

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