禁用git中的所有分页
我所有的终端工作都是在emacs中完成的,我更愿意使用比“less”更丰富的工具来处理输出。更糟糕的是,每当一个应用程序在emacs内翻页时,它都会非常恼人,因为它是一个愚蠢的终端 虽然我可以将“git-help-rm”之类的东西替换为“M-x-man-git-rm”,但我更愿意禁用git中所有内容的所有分页。那我就不必去寻找正确的咒语了禁用git中的所有分页,git,emacs,terminal,Git,Emacs,Terminal,我所有的终端工作都是在emacs中完成的,我更愿意使用比“less”更丰富的工具来处理输出。更糟糕的是,每当一个应用程序在emacs内翻页时,它都会非常恼人,因为它是一个愚蠢的终端 虽然我可以将“git-help-rm”之类的东西替换为“M-x-man-git-rm”,但我更愿意禁用git中所有内容的所有分页。那我就不必去寻找正确的咒语了 git config --global core.pager cat 这似乎不起作用 git config --global man.viewer
git config --global core.pager cat
这似乎不起作用
git config --global man.viewer "man -P cat"
导致问题,因为“man-pcat”不是有效的可执行文件
如何让git转储其输出?您可以尝试
别名git='git--no pager'
。或者,如果这在emacs内部由于某种原因不起作用,您可以在路径
的前面某个地方创建一个git
shell脚本,通过阅读git帮助
手册,调用真正的git--no-pager
git config --global man.viewer catman
git config --global man.catman.cmd "man -P cat"
man.viewer
config值是一个工具名,而不是(部分)命令行。然后man.catman.cmd
给出用于catman
工具的命令
似乎将core.pager
设置为cat
应该会处理所有其他事情
要禁用所有命令的分页,请设置core.pager
或
GIT\u寻呼机
至cat
(c)
增加。您还询问了有关git帮助的问题。它实际上不是git的寻呼机,而是$MANPAGER
。所以,也许对你来说,只要做PAGER=cat
就足够了
PAGER=cat git帮助日志
在没有寻呼机的情况下工作。添加到上面Geoff Reedy的答案中。这还可以消除手册页中的u和^H:
git config --global core.pager cat
git config --global man.viewer catman
git config --global man.catman.cmd 'man -P "col -b"'
git-c core.pager=cat log对我来说很好。我真希望我能将两个答案标记为正确,因为要真正做到这一点,需要做两件事。第一个是关闭core.pager(见菅直人的答案)。第二个是人工寻呼(见杰夫的答案)。我将杰夫的答案标记为正确答案,因为我已经算出了第一个答案,但无法算出第二个答案。我将(setenv“PAGER”“cat”)
添加到我的Emacs init文件中,一切正常。不需要git特定的设置。这还有一个额外的好处,就是在一个普通的shell中,git可以与它通常的寻呼机一起工作。这当然是部分“问题”的解决方案,因此需要进行升级投票。如果将GIT\u PAGER
设置为空字符串,也可以正常工作:GIT\u PAGER=GIT log
(至少从GIT 1.8.x开始)。这是我的第一次尝试,它解决了一些问题,但不是所有问题。这大致相当于将core.pager设置为cat over。这是实现我想要的、更快的命令的唯一解决方案。这是我缺少的解决方案。谢谢你想出了我需要的额外步骤来让它工作!