1

在我的虚拟机上,我在 nano 中为 perl、python 和 bash 突出显示了语法。

我通过添加来做到这一点

include /usr/share/nano/python.nanorc

到我的 ~/.nanorc 文件

但是,我刚买了一个新的 Macbook pro,并且 /usr/share/nano 在那个位置不存在,尽管 vim、emacs 等在那个位置......

寻找 。-name "nano" 返回 ./usr/bin/nano,但这只是可执行文件(我认为),而不是我需要包含 *.nanorc 文件的文件夹。

有人在 10.9.5 上做过吗?

4

1 回答 1

2

如果您使用 Apple 的 nano,您可以将.nanorc文件从任何来源复制到 homedir 中的某个位置,例如~/.nano.

nano-highlight 存储库似乎是在尝试将所有最好的语法突出显示s 收集在.nanorc一个地方。遵循指示可能是最简单的解决方案。

如果你安装MacPorts的 nano,一些.nanorc文件会安装在/opt/local/share/nano(包括 a python.nanorc)中。

大多数 nano-highlight.nanorc似乎都与 Apple 和 MacPorts nano 兼容,除了 Apple nano(较旧)不理解bash.nanorc. 如果您尝试包含所有nano,则任何 nano 都会出现段错误;我不确定该错误是否是由特定.nanorc的 触发的,但我怀疑它是由包含太多(无论是哪个)触发的。


更新:nano-highlight 存储库中的.nanorc文件仅与 Apple nano 部分兼容。部分颜色不会使用,但不会报错。根据这个关于错误的评论,问题是 BSD 和 POSIX 正则表达式语法之间存在差异的结果,可以通过使用以下命令修改所有文件来修复:bash.nanorc.nanorc

sed -i -e 's|\<|[[:<:]]|g;s|\>|[[:>:]]|g' /path/to/nanorc/files/*

MacPorts nano 不受影响(它使用 MacPorts 安装的正则表达式引擎)。

于 2015-02-16T02:35:17.717 回答