Vim技巧一例(有关表格)


03/18/06。  cathayan.org版权所有,保留一切权利。转载请保留此说明。谢绝商业转载。

问题:

: 不知能否完成这个操作:
:
: 1-10行长短不一,11-20行也是,现在想把11-20行整体搬移到1-10行
: 的后面,行与行对应。1-10行最长有20字符,11-20行就从第30字符处开始

Dieken@newsmth答复:

:set ve=all 设置所有模式下都能VirtualEdit,这样,光标就能走到没字的地方。
11gg
^q9j$ 把11至20行全部选中,C-q似乎在打开MS兼容时才有用,一般是C-v。
d 剪切
1gg30| 跳到第一行第三十列
p
:set ve="" 恢复默认值。

不得不说,太厉害了 - 包括D网友和Vim。

其实本意是要构造表格的,这样粘贴后中间空白的地方是用空格填充的,如果能用Tab来分隔那就更好,转成表格时比较简单些。不知道直接是否有办法,但现在前一列与后一列之间有许多空格,起码有10个,这个条件就很强,可以用替换达到目的:

:%s/\s\{10,}/\t/g 全面替换空格(最少10个才算)为Tab制表符。

又,D网友还推荐学习VimTips,这个可以下载来看全文,也有RSS可以用,随时看到新的。

03/18/06 21:05:13,由cathayan发表。目录:电脑

Comments

5条评论

giny:

??smth??????????

于 03/18/06 22:32:46 发表  

philewar:

???tips?????vim??????
???????????????
*,#???/??????????
[i:????????????????????????????
[I:???????????????????????

于 03/18/06 22:39:05 发表  

philewar:

?linux???C-v???
???Windows?gvim???C-v??????
??????????C-q

于 03/18/06 22:41:10 发表  

philewar:

??admire????

于 03/18/06 22:43:00 发表  

cathayan:

C-q???????????Win????????Vimrc????????????????mswin.vim

于 03/18/06 23:57:05 发表  

Add Comments

This item is closed, it's not possible to add new comments to it or to vote on it

TrackBack