mseSTA 版 (精华区)
发信人: wizard (Python), 信区: mseSTA
标 题: Re: 一切关心Linux的同志们(包括Wizard),看过来呀
发信站: BBS 听涛站 (Fri Mar 19 08:55:20 2004), 站内
有一份文档叫Seven habits of effective text editing很值得看看
===========================
自动补全也是很好用的(对于大文档中避免出错很有用)
CTRL-P 补全单词(向前查找)
CTRL-N 补全单词(向后查找)
CTRL-X CTRL-F 补全文件中出现的文件名(有多个匹配的话可以继续按CTRL-F)
vim里的单词似乎指得是 _ 和字符数字构成的
用正则表达式表示应该是[_[:alpha:][:digtal:]]* 或者是[_A-Za-z0-9]*
E*表示由字符集E中的0个或多个字符连接得到的字符串集
【 在 chinakr (kr) 的大作中提到: 】
: 在提示符后输入“Vim<回车>”,然后我们就可以看到Vim的欢迎界面了(见图1)
vim注意大小写,呵呵
:
: 图1 Vim的欢迎界面
:
: 按x键可以删除光标位置的字符。
: ?如果要替换光标所在位置到当前单词末尾的内容,键入“cw”然后键入内容(注意,cw命令不仅替换单词,还会进入插入模式)。
: ?如果要替换光标所在位置到当前行末尾,键入“c$”然后键入内容(注意,cw命令不仅替换单词,还会进入插入模式)
: ?删除当前位置到词末,键入“dw”(输入这个命令的时候字母dw会出现在屏幕的最后一行。如果你输错了,可以按<ESC>后重新开始)
: ?删除当前位置到行末,键入“d$”
D
d* c* 是一个系列的命令,可以和几乎所有的光标移动命令配合使用
cw ce cb cf cc(和dd类似) c$(替换当前位置到行尾) c^(到行首)
d*的情况类似
e 和 w是有些区别的,我一般都用w(复杂的情况用visual mode选中了再说,懒得去
想e 和 w有什么区别了:P)
: ?撤消最后一个命令,键入“u”
: ?撤消对当前行的所有改动,键入“U”
这个很少用:(
: ?按“Ctrl+R” 可以重复执行刚才的命令(用法举例:可以用来撤销多个命令或者删除
: 多行)
还不知道有这个命令,不过`.'似乎有同样的功能,什么时候试试有什么区别
: ?键入“p”可以把上一次删除的内容放置到当前光标位置之后(实际上也就实现了拷贝
: 粘贴的功能)
: ?按“Ctrl+G”可以显示当前位置在文件中的位置和当前文件的状态。
这个还不知道了:(((
: ?按“Shift+G”可以移到文件尾部。
这个说法不太准确如果caps lock开了,就不是了,准确的应该是大写的G
gg回到行首(当初不知道G的时候,是随便输一个很大的数然后用gg:Pyaki当初问我,我
就是这么回答的)
: ?行号后跟“Shift+G”可以移到指定的行。
个人觉得gg更快
: ?键入“/”,然后键入“要搜索的内容<回车>”,向前搜索。
: ?键入“?”和键入“要搜索的内容<回车>”,向后搜索。
在当前单词上键入#可以搜索所有单词
: ?搜索之后按“n”键可以在同方向上搜索下一个目标;按“Shift+N”向相反的方向搜
似乎看见过,但是没有用过:((
: 索。
: ?当光标在(,),[,],{, 或 }上时,按“%”键可以移动到第一个对应的括号上。
这个也很少用
: ?键入“:%s/old/new/g”可以把整个文件中所有的“old”替换成“new”。
: ?键入“:s/old/new”可以把当前行中的第一个“old”替换成“new”。
: ?键入“:s/old/new/g”可以把当前行中所有的“old”替换成“new”。
: ?键入“:#,#s/old/new/g”可以把行号#,#的两行之间的所有“old”替换成“new”。
: ?如果希望每次替换前确认,加上c,例如“:%s/old/new/gc”。
: ?键入“:!command”可以执行一个外部命令,例如“:!ls”查看文件列表,“:!del 文件名”删除文件 (所有的命令都必须以回车结束;支持所有的外部命令) 。
: ?键入“:w FILENAME”把当前文件存到磁盘文件FILENAME中。
: ?键入“:#,# w FILENAME”把两个行号#,#之间的内容存到磁盘文件FILENAME中。
: ?键入“:r FILENAME”读入磁盘文件FILENAME,并把其内容插入到当前光标之后。
: ?键入“:help<回车>”可以进入在线帮助系统,键入“:q<回车>”退出帮助窗口。
:
: 通过上面的介绍,相信你也能用Vim来完成自己想做的事情了。Linux也并不像想象中的那么遥不可及,呵呵。对了,这些命令和操作方法不需要我们死记硬背,学习Linux就像学习其他软件一样,最重要就是的学以致用。只要不断实践,就一定会有进乎其技的一天:)
: 在文章的结尾推荐一部在线文档,希望给大家的进一步学习带来益处:
: http://www.newriders.com/books/opl/ebooks/0735710015.html
: 下次再见^ ^
:
: --
:
: ※ 修改:·chinakr 于 Mar 19 00:48:43 修改本文·[FROM: 61.49.126.68]
: ※ 修改:·chinakr 于 Mar 19 00:48:54 修改本文·[FROM: 61.49.126.68]
: ※ 来源:·BBS 听涛站 tingtao.net·[FROM: 61.49.126.68]
--
(defun power-set (set)
(if (null set) '(())
(let ((pset-of-rest (power-set (cdr set))))
(append
(mapcar #'(lambda (subset) (cons (car set) subset))
pset-of-rest) pset-of-rest))))
※ 来源:·BBS 听涛站 tingtao.net·[FROM: 219.224.175.139]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:1.141毫秒