如何在不替换的情况下在 bash 中执行 Vim 选择或范围?

Kla*_*ven 13 vim

我想在 vim 中选择一些文本,然后在 bash 中执行它。我知道以下程序:

  1. 使用V或选择文本v
  2. :!!

但是,这会用命令的输出替换选择。如果我不想要呢?

gar*_*ohn 23

:w像这样输入命令:

:w !command
Run Code Online (Sandbox Code Playgroud)

键入时,它会显示如下:

:'<,'>w !command
Run Code Online (Sandbox Code Playgroud)

:help :w_c
Run Code Online (Sandbox Code Playgroud)

  • 这是正确的,但注意不要这样做`:w!命令`错误。如果 command 是您具有写入权限的程序,它将覆盖该程序,并且您将无法撤消更改,因为那不是打开的缓冲区。 (4认同)

use*_*704 6

vim 8.0 中,您可以选择一系列行并运行:terminal bash. 这将打开一个bash以您的选择作为标准输入运行的终端。

:terminal node, :terminal ruby,:terminal python似乎也很好用。