管道Vim缓冲区到stdout

前端之家收集整理的这篇文章主要介绍了管道Vim缓冲区到stdout前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我想在管道中间使用Vim.这个 existing post看起来像我想要做的,除了我希望在没有Python帮助的情况下,只能用bash. [它有帮助,环境是Android上的Terminal IDE应用程序中的bash shell.]

请,我知道如何通过Vim内部的命令来管理缓冲区.这很棒,但不是我想要的.我想退出Vim并将活动缓冲区传递给stdout.

FWIW,我也知道如何传递另一个命令到Vim作为输入.再次,这不是我想要到达这里.

看看是 moreutils的一部分的vipe.它允许您使用任何编辑器作为管道的一部分.
ls -al | vipe | less

要将其与vim一起使用,请确保将其设置为您的bashrc或cshrc或任何使用的shell的默认编辑器.

EDITOR=vim

更新:如果您想要一个仅限bash的解决方案,您可以使用这样的脚本

#!/bin/bash
 # create temporary file
 TMPFILE=`mktemp /tmp/vipe.bashXXXXXXXX`
 cat > ${TMPFILE}
 vim ${TMPFILE} < /dev/tty > /dev/tty
 cat ${TMPFILE}
 rm ${TMPFILE}

对于更便携的版本,请更换

vim ${TMPFILE}

${EDITOR} ${TMPFILE}

猜你在找的Bash相关文章