当前时区为 UTC + 8 小时



发表新帖 回复这个主题  [ 7 篇帖子 ] 
作者 内容
1 楼 
 文章标题 : vim 超复杂查找替换3(已解决)
帖子发表于 : 2009-06-30 15:51 

注册: 2009-04-21 9:48
帖子: 86
送出感谢: 12
接收感谢: 0 次
前两个都用宏解决了,第三个是不是也能用宏?! 我不知道
问题如下:

输入文件:编译过程中,有进入各个目录编译c文件的指示(简化的代码举例)
代码:
    make -C img all
    gcc  -O -c -o img2srec.o img2srec.c
    gcc  -O  -o img2srec img2srec.o
    strip img2srec
    make -C img\tools all
    gcc -g  -O -c -o mkimage.o mkimage.c
    gcc -g  -O -c -o crc32.o crc32.c
    gcc  -O  -o mkimage mkimage.o crc32.o
    strip mkimage
    gcc -g  -O -c -o envcrc.o envcrc.c
    gcc  -O -o envcrc envcrc.o crc32.o environment.o
    gcc -g  -O -c -o gen_eth_addr.o gen_eth_addr.c
    gcc  -O  -o gen_eth_addr gen_eth_addr.o
    make -C img\logo all
    strip gen_eth_addr
    gcc  -O -c -o bmp_logo.o bmp_logo.c
    gcc  -O  -o bmp_logo bmp_logo.o
    gcc  -O -c -o bmp_logo.o bmp_logo2.c
    gcc  -O  -o bmp_logo2 bmp_logo2.o


输出文件:各个目录下的c 源文件名
代码:
img:
    img2srec.c
img\tools:
    mkimage.c
    crc32.c
    envcrc.c
    gen_eth_addr.c
img\logo:
    bmp_logo.c
    bmp_logo2.c

原来对此问题,我是用perl 来解决。
如果直接用vim 编辑,如果只有一个目录,自然好编辑,如果多个目录,感觉不太好处理,难道需将
原文件折成多个文件再处理吗? 或者/ 能支持范围查找就好了。
说不定strange, poet 又能出奇招。欢迎指教,也欢迎其它同仁讨论,指教。


最后由 hjjdebug 编辑于 2009-06-30 17:40,总共编辑了 1 次

页首
 用户资料  
 
2 楼 
 文章标题 : Re: vim 超复杂查找替换3
帖子发表于 : 2009-06-30 16:21 
头像

注册: 2006-05-19 9:54
帖子: 1822
地址: Shanghai
送出感谢: 2
接收感谢: 11
这个不就是简单的替换吗

1 删掉所有不包含make|.c的行
2 有.c的行里,把xxxx.c之外的东西替换掉
3 make的行里,把目录以外的东西替换掉


_________________
ニンニク入れますか?
x60 with gentoo



_________________
评价: 3.85% hjjdebug
 
页首
 用户资料  
 
3 楼 
 文章标题 : Re: vim 超复杂查找替换3
帖子发表于 : 2009-06-30 17:06 

注册: 2009-04-21 9:48
帖子: 86
送出感谢: 12
接收感谢: 0 次
果然不出所料,我怎么就没想到呢?
现在给出strange 提示下的一个答案。哎! 我是试了老半天才通过了。
如果有更好的,欢迎补充
%!grep "make\|.*\.c"
%s/^.*make \-C \([a-zA-Z\\]\+\).*$/\1:/
%s/^.* \(.*\.c\)/\t\1/


页首
 用户资料  
 
4 楼 
 文章标题 : Re: vim 超复杂查找替换3
帖子发表于 : 2009-06-30 17:23 
头像

注册: 2006-05-19 9:54
帖子: 1822
地址: Shanghai
送出感谢: 2
接收感谢: 11
第一行可以用g命令的
:g!/make\|\.c/d


_________________
ニンニク入れますか?
x60 with gentoo


页首
 用户资料  
 
5 楼 
 文章标题 : Re: vim 超复杂查找替换3
帖子发表于 : 2009-06-30 17:33 

注册: 2009-04-21 9:48
帖子: 86
送出感谢: 12
接收感谢: 0 次
strange 真乃我的良师益友!


页首
 用户资料  
 
6 楼 
 文章标题 : Re: vim 超复杂查找替换3(已解决)
帖子发表于 : 2009-06-30 17:42 

注册: 2009-04-21 9:48
帖子: 86
送出感谢: 12
接收感谢: 0 次
三个问题! 很高兴! 很高效!
:em09 :em11


页首
 用户资料  
 
7 楼 
 文章标题 : Re: vim 超复杂查找替换3(已解决)
帖子发表于 : 2009-07-03 15:34 

注册: 2008-09-19 1:03
帖子: 100
送出感谢: 0 次
接收感谢: 1
看来咱错过了很多好玩的东西了……


页首
 用户资料  
 
显示帖子 :  排序  
发表新帖 回复这个主题  [ 7 篇帖子 ] 

当前时区为 UTC + 8 小时


在线用户

正在浏览此版面的用户:没有注册用户 和 2 位游客


不能 在这个版面发表主题
不能 在这个版面回复主题
不能 在这个版面编辑帖子
不能 在这个版面删除帖子
不能 在这个版面提交附件

前往 :  
本站点为公益性站点,用于推广开源自由软件,由 DiaHosting VPSBudgetVM VPS 提供服务。
我们认为:软件应可免费取得,软件工具在各种语言环境下皆可使用,且不会有任何功能上的差异;
人们应有定制和修改软件的自由,且方式不受限制,只要他们自认为合适。

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
简体中文语系由 王笑宇 翻译