免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1685 | 回复: 2
打印 上一主题 下一主题

求教:vim相关的问题。 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2010-02-26 16:43 |只看该作者 |倒序浏览
我在 http://bbs.chinaunix.net/thread-816850-6-1.html 该帖中看到 将在vim中执行的外部命令的结果输出到一个新窗口的方法是 :

split enew | r !ls  //ls 代表外部命令

我试过了 , 执行后 分割出一个新窗口,ls的执行结果显示在新窗口中

不过我还有如下疑问:

1. split + [cmd] 表示在分割出的新窗口中执行 [cmd]

如果我 直接split r ls 就会报
E172: Only one file name allowed

期待知道的朋友为我解惑 ,谢谢了

2.split | r !ls 执行结果为 分割一个新窗口, 两个窗口中都显示ls的执行结果

上述命令若理解为 split | [cmd] 那么应该在旧窗口中显示, 若理解为 split [| r !ls] 那么应该在新窗口中 ,为什么会两个窗口都执行呢?

谢谢 了。

论坛徽章:
5
狮子座
日期:2013-08-20 10:12:24午马
日期:2013-11-23 18:04:102015年辞旧岁徽章
日期:2015-03-03 16:54:152015亚冠之德黑兰石油
日期:2015-06-29 18:11:1115-16赛季CBA联赛之新疆
日期:2024-02-21 10:00:53
2 [报告]
发表于 2010-02-26 20:42 |只看该作者
1: 注意那个加号。另外,命令里面不能有空格,否则必须用\转义:
split +r\ !ls

2. 因为r命令的意思是读入一个文件,放入当前缓冲区中。split分割了窗口,但是两个窗口显示的一个缓冲区。你更新了一个缓冲区里面的数据,当然另一个窗口显示的同样的缓冲区也会被更新。

论坛徽章:
0
3 [报告]
发表于 2010-03-05 15:11 |只看该作者
谢谢 starwing83  的解答, 我明白了 呵呵
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP