为什么是nvim+;zsh+;git日志-p%使用的不是更少?

为什么是nvim+;zsh+;git日志-p%使用的不是更少?,zsh,neovim,less-unix,Zsh,Neovim,Less Unix,来自zsh的以下命令返回在less中打开的文件历史记录 git log -p file.txt 如果我从neovimnvim运行相同的命令: nvim -u NONE -N file.txt git log -p % 它返回整个历史,而不运行less Vim按预期工作,具有更少的 请建议如何配置neovim来修复它 在Neovim中,:(bang)和system()不是交互式的,这是设计的 有关详细信息,请参见上的讨论: 这不是一个bug,而是bang命令的新行为:我们不再使用连接到Nvi

来自
zsh
的以下命令返回在
less中打开的文件历史记录

git log -p file.txt
如果我从neovim
nvim运行相同的命令:

nvim -u NONE -N file.txt 
git log -p %
它返回整个历史,而不运行
less

Vim按预期工作,具有
更少的


请建议如何配置neovim来修复它

在Neovim中,
(bang)和
system()
不是交互式的,这是设计的

有关详细信息,请参见上的讨论:

这不是一个bug,而是bang命令的新行为:我们不再使用连接到Nvim tty的标准输出生成程序,而是打开一个管道,读取输出并向用户显示。这是bang命令在整个UI中保持一致的唯一方法,因此设计用于从终端交互使用的程序将不再在nvim内部工作

通过不将程序的标准输出附加到tty(而是将其附加到管道),可以修改某些程序的行为。例如,git不会生成寻呼机,通常不会在输出中使用颜色,等等

建议的解决办法是:

  • 从shell调用它(从其他终端或使用ctrl+z)
  • 使用逃犯git插件
另一种选择是使用Neovim的
:终端

:terminal git log -p %

这是一个功能齐全的终端(tty),因此它将启用终端激活的所有副作用,例如作为寻呼机生成
less

此外,全局git log-p颜色高亮显示也不起作用