【发布时间】:2010-07-10 14:07:20
【问题描述】:
有没有机会将当前vim缓冲区的内容写入stdout?
我想使用 vim 编辑通过 stdin 传递的内容 - 不需要临时文件来检索修改后的内容(在 Linux/Unix 上)。
是否有可能一个插件/脚本 - 在退出或保存时将缓冲区内容放入标准输出?
【问题讨论】:
-
你没有说是什么平台,但
:w! /dev/stdout"works" 在 linux 上"works" 的意思是"但是线路规则是原始的,所以它并不真正起作用"。 -
:w! /dev/stdout - 适用于 gvim 但对 vim 无用 ... hm
-
这个问题构思不当,一般答案是否定的;为什么必须避免使用临时文件?
-
问错了? - 我只是要求一种将vim缓冲区内容写入标准输出的方法,为什么不避免使用临时文件?没有临时文件,就少了一件事情需要处理——程序崩溃 tmp 文件仍然存在等。但没关系,如果答案是不可能的,我将不得不使用临时文件。要修改内容,需要用户交互 - 就像 miedwar 中的 crontab -e 案例 - 所以 sed、awk、perl 不是一个选项。
-
Pipe Vim buffer to stdout 的可能重复项