Monday, June 11, 2007

上海ADSL无法访问此blog

最近在家无法访问http://alan0203.blogspot.com,因此也无法更新。
目前不得不考虑购买付费空间。无论如何,如果您对BSD感兴趣,请继续关注http://alan.thechengs.name,它会自动转到相应的blog(目前是http://alan0203.blogspot.com).

谢谢!

Monday, June 04, 2007

VI:一旦拥有,别无所求(2)

学习如何在打开的文档中移动光标是非常重要的基础,尤其是对于后面的复制或删除操作。之后,我们就学习如何插入文本和编辑文档。

进入插入模式有以下六种常见的方式:
1. i:在光标所在字符的左侧添加文本/字符
2. I:在当前行的行首插入
3. o:在当前行的下方新建一行并开始插入
4. O:当当前行的上方新建一行并插入
5. a:在光标所在字符的右侧添加文本/字符
6. A:在当前行的行尾插入

除了这六种方式之外,还有一个比较复杂一点的:

7. c{motion}:选中motion动作覆盖的文本并进入插入模式,用新的文本替换选中的内容.这里的motion就是指前面提到的移动操作。比如c$就是选中从光标所在位置到当前行尾的文本并进入插入模式。


拷贝和剪切操作
d:剪切选中的文本,并将文本放到剪切本中。
y:复制选中的文本
c:同d,但是会使vi进入插入模式,见上面c{motion}

p:粘贴。这个恐怕是vi中最简单的命令了,只需将光标移动到目标位置,按p将复制的文本粘贴

Friday, June 01, 2007

VI: 一旦拥有,别无所求

"To me, vi is Zen.
To use vi is to practice zen.
Every command is a koan.
Profound to the user,
unintelligible to the uninitiated.
You discover truth every time you use it."
--reddy@lion.austin.com

"对我来说,vi就是禅。
用vi就是坐禅。
每一个命令就是一个心印
对皈依者意义深远
对不了解者不可捉摸
每一次使用都会有新的发现"

VI是所有*NIX类系统都内置的一个命令行文本编辑软件,功能强大,命令繁多。初学时很难上手,但是一旦你熟悉之后,相信你不会再想使用其他的编辑软件。

本篇假定你已经熟悉VI的一些基本命令,如:
vi httpd.conf #打开一个名为httpd.conf的文档,如果不存在,将在当前目录下创建此文档;
输入“:wq”:存盘推出命令。
输入“:q!”:不存盘,强制推出
ESC:在命令模式与输入模式之间切换
i,I或者o等:插入文本命令........

VI之一:光标移动篇

这里我们先学习一下如何在一篇打开的文档中进行光标移动。

1. 方向键h,j,k,l.
h: 将光标向移动一个字符
j: 将光标向移动一个字符
k: 将光标向移动一个字符
l: 将光标向移动一个字符

这四个键相当于方向键,另设它们的好处是:你的手指不必离开正常的输入位置

2. 按字符移动的命令
fx: 移动光标至当前行下一个x字符处;使用;来重复上一次的f移动
tx: 同fx,但是移动光标至x字符前,而不是x字符上
Fx:通fx,但反方向移动

w:前移光标至下一个单词第一字符
W:前移光标至下一个长单词第一字符
e: 前移光标至下一个单词最后字符
E: 前移光标至下一个长单词最后字符
b: 前一单词第一字符
B: 前一长单词第一字符
(vi 按空格或标点符号分隔单词,按空格或新行来分隔长单词)

(: 到句首
): 到句尾

0: 到行首
^: 到行首第一字符
$: 到行尾

{: 到段首
}: 到段尾

*: 读取光标当前所在位置的字符,并将向前移动至下一个同样的字符
#: 和*功能相同,但反方向移动光标

Ctrl+F: 向前滚屏
Ctrl+B: 向后滚屏
H,M,L: 移动光标至屏幕的顶端,中间,底端

G: 移动光标至文档最后一行
numG: 移动光标至第num行

/text: 从光标处开始,向前搜索"text"字串
?text: 同上,但搜索方向相反

同时也发现一个图片vi教程,讲的也很清晰:www.litrin.org/UserFiles/Image/vi_png.jpg