Zsh中cat
设置文件的一个不错的捷径是,例如Python文件类型:
<somefile.py
但是如果该文件语法突出显示,那就更好了。因此,诀窍是使用bat之类的工具,而不是默认的cat
:
READNULLCMD=bat
这实际上在存在shebang时有效,因为Bat会寻找它。但是,由于输入仅被视为STDIN
,因此无法通过扩展名检测文件类型。而且由于大多数文件没有排行,因此文件扩展名是检测文件类型的必要后备。
有this method用于使用函数调试READNULLCMD。我试过用set -x
包装,grepping env
等,但是没有找到一种看到名字的方法。如果我能看到名字,那么可以使用类似这样的东西:
mynullcmd() { bat -l $stdin_filename:x } # get extension and use as file type
READNULLCMD=mynullcmd
问题:Zsh是否可以通过某种方式知道正在以STDIN形式传递的内容?是否可以知道该命令包含somefile.py
?
答案 0 :(得分:0)
结算别名,例如c
相当于cat
的缩写:
alias c=bat
c somefile.py
其他可行的荧光笔包括coderay和pygmentize,但我发现bat
是在语言支持的速度和广度上最强大的功能。