参考:http://www.178linux.com/88969
替换特定句子格式【正则表达式范例】
- 例句 1:
Now let's taking the results of some experiments in to consideration.
全文查找替换
%s/taking\(.*\)in/hhh\1hhh/gci
结果
Now let's hhh the results of some experiments hhh to consideration.
- 例2:
line-height:1, line-height: 12, line-height: 123, line-height: 1.2, line-height: 1px, line-height: 2.3em
匹配上面所有格式:
line-height:\s\{0,3}\d\{1,3}\.\{0,2}\d\{0,3}\a\{0,3}
[vim 换行符]
为什么vi的替换命令里\n和\r是混用的?
%s/$/\r/g
%s/\n//g
\n只能被替换或删除 \r只能用来插入或替换
在Linux 中,\n
是行结束符,而 \r
不是。%s .... /g
这样的搜索替换格式只能保证你在一行中被多次替换,但是一旦你插入了一个行结束符(\n
),这个行会中止,当前行不再继续进行替换,因此你显然不能替换为 \n
这样的字符,这样会造成当前行不继续产生后续替换。至于你能够把 \n
作为搜索 pattern 这显然是允许的。
链接:https://www.zhihu.com/question/19905246/answer/13309347
【分屏编辑】
vim -o file1 file2
:水平分割窗口,同时打开file1和file2
vim -O file1 file2
:垂直分割窗口,同时打开file1和file2
-
水平分割
:split(:sp)
— 把当前窗水平分割成两个窗口。(CTRL-W s 或 CTRL-W CTRL-S) 注意如果在终端下,CTRL-S可能会冻结终端,请按CTRL-Q继续。
:split filename
— 水平分割窗口,并在新窗口中显示另一个文件。
:nsplit(:nsp)
— 水平分割出一个n行高的窗口。
:[N]new
— 水平分割出一个N行高的窗口,并编辑一个新文件。 (CTRL-W n或 CTRL-W CTRL-N)
ctrl+w f
–水平分割出一个窗口,并在新窗口打开名称为光标所在词的文件 。
C-w C-^
— 水平分割一个窗口,打开刚才编辑的文件。 -
垂直分割
:vsplit(:vsp)
— 把当前窗口分割成水平分布的两个窗口。 (CTRL-W v或CTRL CTRL-V)
:[N]vne[w]
— 垂直分割出一个新窗口。
:vertical
水平分割的命令: 相应的垂直分割。
【快速调整分屏大小】
参考文章:http://vim.wikia.com/wiki/Resize_splits_more_quickly
- 使用
:resize
使得窗口60行
:resize 60
- 使用增量加减
:res +5
:res -5
【 拼写检查】
Vim有拼写检查的功能,用下面的命令开启:
set spell
Vim默认只安装了英语字典。更多字典可以通过搜索vim-spell在官方软件仓库中找到。其他字典可以在Vim的FTP archive中找到。把下载的字典文件存入~/.vim/spell/
中,并使用以下命令启用::setlocal spell spelllang=*en_us*
(将*en_us*
换成所需的字典的名称)。
行为 | 快捷键 |
---|---|
下一个拼写错误 | ]s |
上一个拼写错误 | [s |
拼写纠正建议 | z= |
拼写正确,添加到用户正确字典 | zg |
在会话中当作正确拼写 | zG |
拼写错误,添加到用户错误字典 | zw |
在会话中当作正确拼写 | zW |
重新进行拼写检查 | :spellr |
提示:
-
如果需要针对两种语言进行拼写检查(例如英语与德语),在
~/.vimrc
或/etc/vimrc
中添加set spelllang=*en,de*
并重启Vim即可。 -
您可以通过使用FileType插件和用于文件类型检测的自定义规则,为任意文件类型(例如.txt)启用拼写检查。 要对以.txt结尾的任何文件启用拼写检查,请创建文件
/usr/share/vim/vimfiles/ftdetect/plaintext.vim
,并将autocmd BufRead,BufNewFile *.txt setfiletype plaintext
插入该文件。接下来,将autocmd FileType plaintext setlocal spell spelllang=*en_us*
插入到~/.vimrc
或/etc/vimrc
中,然后重新启动Vim。 -
如果想只对LaTeX(或TeX)文档起用拼写检查,在
~/.vimrc
或/etc/vimrc
添加autocmd FileType **tex** setlocal spell spelllang=*en_us*
,重启Vim即可。至于非英语语言,替换上述语句中的en_us
为相应语言代码即可。
网友评论