我想阅读像man
页面这样的Markdown文件。我可以做到:
pandoc README.md -t man --standalone > tmp_file && man ./tmp_file
但是,我希望在不创建临时文件的情况下完成此操作。我试过了:
man <(pandoc README.md -t man –standalone)
但我有一个错误:
fgets: Undefined error: 0
Error reading man page /dev/fd/63
No manual entry for /dev/fd/63
有什么想法吗?我确实研究过这个问题,但这似乎在macOS版本的man
上不起作用。
我真的不在乎使用man
,本身,但我希望能够在终端中查看格式优美的Markdown文件。pandoc
可以转换为groff,然后我可以将其发送到man
以获得良好的显示。有没有man
在幕后使用的程序可能会起作用?
尝试这个管道groff:
pandoc -s -f markdown -t man README.md | groff -T utf8 -man | less
(来源(
我使用这个shell函数:
mdv () { # This function display Markdown in the terminal from file or "-"
pandoc -s -t man ${1:-"-"} | # Read into Pandoc from file or STDIN
groff -T utf8 -man | # format for Pager
sed 1,4d | head -n -4 | # Chop off 4 leading/trailing (empty) lines
${PAGER:-$(DN=/dev/null; # Use $PAGER, if available
which less &>$DN && { echo "less -FRSEX"; } || # less w/ opts
which more 2>$DN || echo cat )} # Fallbacks
}
基本想法与公认的答案相同,我只是在它周围添加了一些铃铛和口哨,并将其封装在一个文档化的函数中