如何在命令行中调用man命令时使用emacs查看手册页?

时间:2012-05-17 22:06:10

标签: emacs pager man

我想在调用man命令时使用emacs查看手册页。 我将/etc/man.conf PAGER中的寻呼机参数修改为emacs

但是,它不起作用。我有什么要修改的吗?

3 个答案:

答案 0 :(得分:4)

实际上,emacs无法将STDIN读入缓冲区,这意味着

cat foobar | emacs

在任何情况下都不起作用。因此,将PAGER变量设置为“emacs”或“emacs -nw”不起作用。 我看到的唯一方法是将man输出写入tmp文件,然后将该文件加载到emacs中:

man find > tmp-file; emacs tmp-file

您可以使用别名。 例如,假设您的主路径中有一个tc-shell和一个名为“tmp”的目录,您可以将以下行放入~/.tcshrc文件中:

alias man '/usr/bin/man \!* > ~/tmp/tmp-file; emacs ~/tmp/tmp-file; rm ~/tmp/tmp-file'

因此,下次拨打man find时,emacs会启动。

答案 1 :(得分:4)

您可以从emacs的函数man中获益。只需在bash中定义一个函数,该函数将运行将调用它的emacs:

function man () {
    emacs -e '(man "'$1'")'
}

您可能希望改为呼叫emacs -nw甚至emacsclient

答案 2 :(得分:1)

Emacs有一个“人工模式”,可以由M-x man RET调用,然后输入你的命令。