我正在尝试获取我在视频中看到的功能。本质上,这个人在终端中(我相信在重要的情况下使用tmux)并且使用快捷方式将stdout转换为vim缓冲区,并且可以轻松导航并选择/复制文本。这是怎么做到的?
答案 0 :(得分:1)
您正在谈论tmux
的复制模式
默认情况下,您可以通过 ctrl b 进入复制模式[如果C-b
是您的前缀。否则使用前缀+ [
您可以使用 h j k l w ^ ,用搜索? / 等。
一些相关的details
答案 1 :(得分:0)
tabnew
命令用于打开新选项卡。
您可以使用管道符号,然后使用其他命令。这些命令的输出将被重定向到新缓冲区。
示例:
:tabnew | r! pwd
pwd将打印当前目录,r将读取它。 Tabnew会将该输出放在新缓冲区中。 您既可以使用shell命令,也可以使用vim命令。
类似地,可以使用enew
命令代替tabnew用于新缓冲区。
看这里:
https://superuser.com/questions/157987/pipe-output-of-shell-command-into-a-new-buffer-in-vim
How to redirect stdout output to a new Vim tab?
How do I dump output of an external command to a new buffer in Vim?
答案 2 :(得分:0)
您可以运行:read !<cmd>
在shell中执行命令并将输出捕获到当前缓冲区。
例如 - :read !date
如果要将输出放在新缓冲区中,请使用:new
。
所以两者合并,:new | read !date
答案 3 :(得分:0)
在readline中,在默认的emacs模式下,您可以按<C-x><C-e>
编辑$EDITOR
中的当前命令行。
如果您使用vi模式,则可以按<Esc>v
执行相同操作。