微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

管道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}

原文地址:https://www.jb51.cc/vim/386079.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐