RCI750可用命令2.docx
- 文档编号:14832935
- 上传时间:2023-06-27
- 格式:DOCX
- 页数:52
- 大小:48.56KB
RCI750可用命令2.docx
《RCI750可用命令2.docx》由会员分享,可在线阅读,更多相关《RCI750可用命令2.docx(52页珍藏版)》请在冰点文库上搜索。
RCI750可用命令2
--------------------------------------------------------------------------------
*03.1* 词移动
要移动光标向前跳一个词,可以使用"w"命令。
象大多数Vim命令一样,你可以在命令前
加数字前缀表示把这个命令重复多次。
例如,"3w"表示向前移动3个单词。
用图表示如下:
Thisisalinewithexampletext
--->-->->----------------->
w w w 3w
要注意的是,如果光标已经在一个单词的词首,"w"移动到下一个单词的词首。
"b"命令向后移动到前一个词的词首:
Thisisalinewithexampletext
<----<--<-<---------<---
b bb 2b b
还有一个"e"命令可以移到下一个单词的词末,而"ge"则移动到前一个单词的末尾:
Thisisalinewithexampletext
<- <--------> ---->
ge ge e e
如果你在一行的最后一个单词,"w"命令将把你带到下一行的第一个单词。
这样你可以
用这个命令在一段中移动,这比使用"l"要快得多。
"b"则在反方向完成这个功能。
一个词以非单词字符结尾,例如".","-"或者")"。
要改变Vim使用的"分词符",
请参见'iskeyword'选项。
还可以以"空白字符"分割的"大单词"移动。
这不是我们通常意义的"单词”。
这
就是为什么称之为"大单词"的原因。
如下图所示:
ge b w e
<- <- ---> --->
Thisis-aline,withspecial/separated/words(andsomemore).
<-----<----- --------------------> ----->
gE B W E
ge b w e
组合运用这些大写和小写的命令,你可以很快地在一段中前后移动。
--------------------------------------------------------------------------------
*03.2* 移动到行首或行尾
"$"命令把光标移动到当前行行尾。
如果你的键盘上有
"^"命令把光标移动到当前行的第一个非空字符,而"0"命令则移到一行的第一个字符,
图示如下:
^
<------------
.....Thisisalinewithexampletext
<----------------- --------------->
0 $
(这里"....."表示空白字符)
象大多数移动命令一样,"$"命令接受个次数前缀。
但是"移动到一行的行尾n次"没
有什么意义,所以它会使光标移动到另一行。
例如,"1$"移动到当前行的行尾,而
"2$"则移动到下一行的行尾,如此类推。
"0"命令不能加个数前缀,因为"0"本身就是个数字。
而且,出人意料地是,"^"命
令也不支持数字前缀。
--------------------------------------------------------------------------------
*03.3* 移动到一个指定的字符
单字符查找命令是最有用的移动命令之一。
"fx"命令向前查找本行中的字符x。
提示:
"f"表示"Find"。
例如,假定你在下面例子行的行首,而你想移动到单词"human"的h那里。
只要执行
命令"fh"即可:
Toerrishuman. Toreallyfoulupyouneedacomputer.
---------->--------------->
fh fy
这个例子还演示了用"fy"命令移动到"really"的词尾。
你可以在这个命令前面加数字前缀,所以,你可以用"3fl"命令移动到"foul"的
"l":
Toerrishuman. Toreallyfoulupyouneedacomputer.
--------------------->
3fl
"F"命令用于向左查找:
Toerrishuman. Toreallyfoulupyouneedacomputer.
<---------------------
Fh
"tx"命令与"fx"相似,但它只把光标移动到目标字符的前一个字符上。
提示:
"t"
表示"To"。
这个命令的反向版本是"Tx"。
Toerrishuman. Toreallyfoulupyouneedacomputer.
<------------ ------------->
Th tn
这四个命令可以通过";"命令重复,","命令则用于反向重复。
无论用哪个命令,光标
永远都不会移出当前行,哪怕是这两行是连续的一个句子。
有时你启动了一个查找命令后才发现自己执行了一个错误的命令。
例如,你启动了一个
"f"命令后才发现你本来想用的是"F"。
要放弃这个查找,输入
所以
"f
Note:
而不仅仅是查找。
--------------------------------------------------------------------------------
*03.4* 括号匹配
当你写程序的时候,你经常会遇到嵌套的()结构。
这时,"%"是一个非常方便的命令
了:
它能匹配一对括号。
如果光标在"("上,它移动到对应的")"上,反之,如果它在
")"上,它移动到"("上。
%
<----->
if(a==(b*c)/d)
<---------------->
%
这个命令也可适用于[]和{}。
(可用'matchpairs'选项定义)
当光标不在一个有用的字符上,"%"会先向前找到一个。
比如当光标停留在上例中的行
首时,"%"会向前查找到第一个"("。
然后会移动到它的匹配处。
if(a==(b*c)/d)
---+---------------->
%
--------------------------------------------------------------------------------
*03.5* 移动到指定的行
如果你是一个C或者C++程序员,你对下面这样的错误信息应该非常熟悉:
prog.c:
33:
j undeclared(firstuseinthisfunction)
这表示你可能要移动到33行去作一些修改了。
那么怎样找到33行?
一个办法是执行
"9999k"命令移到文件头,再执行"32j"下移到32行。
这不是一个好办法,但肯定有效。
更好的方法是使用"G"命令。
加上一个次数前缀,这个命令可以把你送到指定的行。
例如,"33G"把你送到33行。
(要用更好的方法在编译器的错误列表中移动,参见
|usr_30.txt|的":
make"命令部分。
)
如果没有数字前缀,"G"命令把光标移动到文末。
移动到文首的命令是"gg"。
"1G"
也能完成这个功能,但稍复杂一点。
| firstlineofafile ^
| texttexttexttext |
| texttexttexttext | gg
7G | texttexttexttext |
| texttexttexttext
| texttexttexttext
V texttexttexttext |
texttexttexttext | G
texttexttexttext |
lastlineofafile V
另一个定位行的方法是使用带数字前缀的"%"命令。
例如,"50%"移动到文件的中间,
而"90%"移到差不多结尾的位置。
前面的描述假定你想移动到文件中的某一行,而不在乎它是否可见。
那么如何移动到视野
之内的一行呢?
下图演示了三个可以使用的命令:
+---------------------------+
H--> |textsampletext |
|sampletext |
|textsampletext |
|sampletext |
M--> |textsampletext |
|sampletext |
|textsampletext |
|sampletext |
L--> |textsampletext |
+---------------------------+
提示:
"H"表示"Home","M"表示"Middle"而"L"表示"Last"。
--------------------------------------------------------------------------------
*03.6* 确定当前位置
要确定你在文件中的位置,有三种方法:
1. 使用CTRL-G命令,你会获得如下消息(假定'ruler'选项已经被关闭):
"usr_03.txt"line233of650--35%--col45-52
这里显示了你正在编辑的文件的名称,你所处的当前行的行号,全文的总行数,光标
以前的行占全文的百分比,和你所处的列的列号。
有时你会看到一个分开的两个列号。
例如,"col2-9"。
这表示光标处于第二个字符
上,但由于使用了制表符,在屏幕上的位置是9。
2.设置'number'选项。
这会在每行的前面加上一个行号:
:
setnumber
要重新关闭这个选项:
:
setnonumber
由于'number'是一个布尔类型的选项,在它前面加上"no"表示关闭它。
布尔选项只会
有两个值,on或者off。
Vim有很多选项,除了布尔类型的,还有数字或者字符串类型的。
在用到的时候会给
处一些例子的。
3. 设置'ruler'选项。
这会在Vim窗口的右下角显示当前光标的位置:
:
setruler
使用'ruler'的好处是它不占多少地方,从而可以留下更多的地方给你的文本。
--------------------------------------------------------------------------------
*03.7* 滚屏
CTRL-U命令向下滚动半屏。
想象一下通过一个视口看着你的文本,然后把这个视口向上移动
该视口的一半高度。
这样,窗口移动到当前文字的上面,而文字则移到窗口的下面。
不用担心
记不住那边是上。
很多人都是这样。
CTRL-D命令把视窗向下移动半屏,所以把文字向上移动半屏。
+----------------+
|sometext |
|sometext |
|sometext |
+---------------+ |sometext |
|sometext | CTRL-U -->| |
| | |123456 |
|123456 | +----------------+
|7890 |
| | +----------------+
|example | CTRL-D--> |7890 |
+---------------+ | |
|example |
|example |
|example |
|example |
+----------------+
每次滚一行的命令是CTRL-E(上滚)和CTRL-Y(下滚)。
可以把CTRL-E想象为是多给你
一行(onelineExtra)。
向前滚动一整屏的命令是CTRL-F(实际上会留下两行不滚动)。
反向的命令是CTRL-B。
幸运地,CTRL-F是向前(forward)滚动,CTRL-B是向后(backward)滚动,这比较好记。
移动中的一个常见问题是,当你用"j"向下移动的时候,你的光标会处于屏幕的底部,
你可能希望,光标所在行处于屏幕的中间。
这可以通过"zz"命令实现。
+------------------+ +------------------+
|sometext | |sometext |
|sometext | |sometext |
|sometext | |sometext |
|sometext | zz --> |linewithcursor|
|sometext | |sometext |
|sometext | |sometext |
|linewithcursor| |sometext |
+------------------+ +------------------+
"zt"把光标所在行移动到屏幕的顶部,而"zb"则移动到屏幕的底部。
Vim中还有另外
一些用于滚动的命令,可以参见|Q_sc|。
要使光标上下总保留有几行处于视口中用作上下
文,可以使用'scrolloff'选项。
--------------------------------------------------------------------------------
*03.8* 简单查找
查找命令是"/String"。
例如,要查找单词"include",使用如下命令:
/include
你会注意到,当你输入"/"的时候,光标移到了Vim窗口的最后一行,这与"冒号命令"
一样,在那里你可以输入要查找的字符串。
你可以使用退格键(退格箭头或
修改,如果需要的时候还可以使用
使用
Note:
字符.*[]^%/\?
~$有特殊含义。
如果你要查找它们,需要在前面加上一个""。
请参见下文。
要查找下一个匹配可以使用"n"命令。
用下面命令查找光标后的第一个#include:
/#include
然后输入"n"数次。
你会移动到后面每一个#include。
如果你知道你想要的是第几个,
可以在这个命令前面增加次数前缀。
这样,"3n"表示移动到第三个匹配点。
要注意,
"/"不支持次数前缀。
"?
"命令功能与"/"的功能类似,但是是反方向查找:
?
word
"N"命令在反方向重复前一次查找。
因此,在"/"命令后执行"N"命令是向后查找,
在"?
"命令后执行"N"命令是向前查找。
忽略大小写
通常,你必须区分大小写地输入你要查找的内容。
但如果你不在乎大小写。
可以设置
'ignorecase'选项:
:
setignorecase
如果你现在要查找"word",它将匹配"word"和"WORD"。
如果想再次区分大小写:
:
setnoignorecase
历史记录
假设你执行了三个查找命令:
/one
/two
/three
现在,让我们输入"/"启动一次查找,但先不按下回车键。
现在按
把"/three"放到你的命令行上。
回车就会从当前位置查找"three"。
如果你不回车,
继续按
你还可以用
如果你知道前面用过的一个模式以什么开头,而且你想再使用这个模式的话,可以在输入
继续前面的例子,你可以输入"/o
显示"/one"。
冒号开头的命令也有历史记录。
这允许你取回前一个命令并再次执行。
这两种历史记录
是相互独立的。
在文本中查找一个单词
假设你在文本中看到一个单词"TheLongFunctionName"而你想找到下一个相同的单词。
你可以输入"/TheLongFunctionName",但这要输入很多东西。
而且如果输错了,Vim
是不可能找到你要找的单词的。
有一个简单的方法:
把光标移到那个单词下面使用"*"命令。
Vim会取得光标上
的单词并把它作为被查找的字符串。
"#"命令在反向完成相同的功能。
你可以在命令前加一个次数:
"3*"
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- RCI750 可用 命令
![提示](https://static.bingdoc.com/images/bang_tan.gif)