LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
楼主: cioworld

linux下的编辑软件都没有TextPro好用,高手能做一个吗?

[复制链接]
发表于 2004-3-5 09:56:53 | 显示全部楼层
在vim下
输入
:h \s
或是
:h \w


你就可以看到vim所支持的正则表达式了

刚才刚把一个c中宏定义转换成xml格式的 真是方便
原文

  1.    
  2.     int MMSC_LISTEN_PORT;
  3.     int CLIENT_LISTEN_PORT;

  4.     char MMSC_FROMADDR[50];
  5.     char MMSC_IPADDR[16];
  6.     char MMSC_ROOT[255];
  7.     int MMSC_PORT;
  8.     char MMSC_LOGIN_NAME[255];
  9.     char MMSC_LOGIN_PWD[255];
  10.     char MMSC_VASP_ID[255];
  11.     char MMSC_VAS_ID[255];
  12.     int MMS_SUBMIT_REPEATTIME;
复制代码


转换
:%s#\s\+\w\+\s\+\(\w\+\).\+$#<\1="" />#g


再长的串也可以通过正则表达式来操作
并且是键盘操作 速度很快

另外谢谢ai_ya提供使用块模式下的选择 现在还不是很会使用vim的帮助
惭愧

听峰兄过奖了
我sed还不是很熟练 一般碰到需要sed解决的问题时就使用perl写脚本
发表于 2004-3-5 09:59:15 | 显示全部楼层
可视块模式好像还是使用shift+光标移动好一点

我使用鼠标的时候 总是进入选取状态
发表于 2004-3-5 13:29:04 | 显示全部楼层
回无双:
如果你用鼠标选取的时候进入选取状态,那可能是因为你设置了
selectmode=mouse选项,把selectmode赋值为空就可以了。
你是不是在windows下用的个gvim?windows下的gvim有个缺省的配置文件,专门是针对windows环境的,所以会出现用鼠标选取就进入selection模式。最好还是不要用这个配置文件,自己编一个,因为在windows下CTRL-V是粘贴命令,不是块选择命令,我也是在window下用gvim的,直接按CTRL-V就能进入块选择模式。
发表于 2004-3-5 16:44:47 | 显示全部楼层
那是了 我是使用selectmode=mouse的

谢谢cloudzm指点

现在在公司时使用windows 只能使用win下gvim了 是6.2.263版
速度感觉不错
发表于 2004-3-5 17:03:29 | 显示全部楼层
在windows下用鼠标也可以,先拖选了,然后点击右键,选择blockwise就可以了

最初由 无双 发表
可视块模式好像还是使用shift+光标移动好一点

我使用鼠标的时候 总是进入选取状态
 楼主| 发表于 2004-3-5 23:27:05 | 显示全部楼层

在vim下,编辑别人的文章,首行规范还是没解决。

对于自己编写文章或代码,做到首行规范容易。
可对于别人的文章,每段都像这样子,就不会弄了。不能总是用TAB键吧。多了还不累死。每段前面先加个特殊字符,再替换,这也太麻烦,有那功夫,还不如用TAB键呢,反正一样累死。
还请各位大侠帮助!
发表于 2004-3-5 23:57:39 | 显示全部楼层

  1. %s/^\s*//
  2. %s/^\S/    /g
复制代码

是要这个吗?
发表于 2004-3-6 09:41:14 | 显示全部楼层
最初由 ai_ya 发表

  1. %s/^\s*//
  2. %s/^\S/    /g
复制代码


这样会把句首第一个字删掉吧。
其实只要
  1. %s/^\s*/    /g
复制代码
就行了。
发表于 2004-3-6 11:17:36 | 显示全部楼层
you can use macro

define a macro
qa
you opration
q

use it
10000@a
it means run the macro 10000 times

suchas  define such macro
qa
i
<space><space>
<esc>
}
j
q
发表于 2004-3-7 03:23:43 | 显示全部楼层
都是 RE狂人。。。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表