#1 楼
nano编辑器本身提供了几种语言和脚本的语法突出显示。检出/usr/share/nano/
nits@nits-excalibur:~$ ls /usr/share/nano/
asm.nanorc fortran.nanorc man.nanorc ocaml.nanorc ruby.nanorc
awk.nanorc gentoo.nanorc mgp.nanorc patch.nanorc sh.nanorc
c.nanorc groff.nanorc mutt.nanorc perl.nanorc tcl.nanorc
cmake.nanorc html.nanorc nano-menu.xpm php.nanorc tex.nanorc
css.nanorc java.nanorc nanorc.nanorc pov.nanorc xml.nanorc
debian.nanorc makefile.nanorc objc.nanorc python.nanorc
,将它们链接到
~/.nanorc
上存在的用户的纳米配置文件,并与此行类似:nits@nits-excalibur:~$ cat ~/.nanorc
include /usr/share/nano/sh.nanorc
现在,nano中为链接的任何文件启用了语法高亮显示(您也可以链接多个文件)编辑完
segmentation fault
文件后,请执行~/.nanorc
。如果发生此类错误,则取消设置LANG环境变量会有所帮助。您可以在终端中用unset LANG
取消设置。 (从这里获得的解决方案)如果您对bash突出显示不满意,还有其他解决方案。您可以在此处找到这样的一个示例
如果您的nano版本支持,也可以将
include /usr/share/nano/*
写入〜/ .nanorc文件,以突出显示所有语言。评论
这些行在/ etc / nanorc中没有注释-全局设置是否被〜/ .nanorc覆盖?如何禁用.nanorc?
– Oxwivi
2011年12月23日下午16:31
哦,等等,我什至没有〜/ .nanorc文件。
– Oxwivi
2011年12月23日下午16:33
等等,等等,即使我没有.nanorc,所有包含行的全局设置怎么也不能启用语法高亮显示?
– Oxwivi
2011-12-23 16:53
ls -1 /usr/share/nano/*.nanorc | sed的's / ^ \ // include \ //'>>〜/ .nanorc将它们全部添加到您的.nanorc文件中,或者如果不存在则创建它。
–汤姆·波特(Thom Porter)
16年2月8日,0:10
包括/ usr / share / nano / *不起作用
–贾里克(Jarek Jakubowski)
16年5月16日在8:23
#2 楼
是的,您可以,但是默认语法定义非常差且不完整。对于那些认为它们有用的人,我在这里维护一组更准确的定义。要安装,请运行:
git clone https://github.com/scopatz/nanorc.git
cd nanorc
make install
将这些行添加到〜/ .nanorc
include ~/.nano/syntax/html.nanorc
include ~/.nano/syntax/css.nanorc
include ~/.nano/syntax/php.nanorc
include ~/.nano/syntax/ALL.nanorc
指定要着色的颜色,您将不得不根据自己的喜好调整这些颜色。
ALL.nanorc
描述了所有尚未分类文件的功能。这些是您入门所需的工具,而不是最终抛光的产品。评论
感谢您在GitHub中保留这些漂亮的语法定义。
– Rubens Mariuzzo
2012年11月13日在2:43
我的* .js文件不起作用...根据FAQgithub.com/nanorc/…编辑了/ etc / nanorc以删除任何其他语法。 ♥纳米♥nanorc
–卡尔顿
2014年8月6日12:27
我刚刚在Mac OSX上安装了语法定义。我只需要注意一件事,那就是python中开括号的黑色在终端的黑色背景下丢失了
–汤姆·比斯比(Tom Busby)
2014年8月27日14:25
实际上存在问题,某些彩色文本为黑色!如果我们的终端背景为黑色,则这些单词是不可见的!
–杜克文
2014年12月8日,3:20
您的链接无效
–not2qubit
18-10-17在7:45
#3 楼
我使用此命令快速启用了所有可用的语言。find /usr/share/nano/ -iname "*.nanorc" -exec echo include {} \; >> ~/.nanorc
如其他答案所述,
/usr/share/nano/
包含不同语言的定义。 $ ls /usr/share/nano
asm.nanorc fortran.nanorc man-html ocaml.nanorc ruby.nanorc
awk.nanorc gentoo.nanorc man.nanorc patch.nanorc sh.nanorc
cmake.nanorc groff.nanorc mgp.nanorc perl.nanorc tcl.nanorc
c.nanorc html.nanorc mutt.nanorc php.nanorc tex.nanorc
css.nanorc java.nanorc nanorc.nanorc pov.nanorc xml.nanorc
debian.nanorc makefile.nanorc objc.nanorc python.nanorc
还提到,要启用突出显示一种语言,请将
include
和要启用的语言定义的路径添加到~/.nanorc
文件中。因此,例如,要启用C / C ++,您可以添加此行。include /usr/share/nano/c.nanorc
find
命令在指定目录中搜索文件或目录。 -iname
标志告诉它仅查找名称以.nanorc
结尾的文件。-exec
标志定义在找到的每个文件上执行的命令。 {}
被替换为文件名。 \;
用于表示要执行到find
命令的命令的结尾。最后,
>> ~/.nanorc
导致输出附加到您的~/.nanorc
文件。 评论
很好的提示和解释,非常感谢! ;)
–daveoncode
16年5月14日在17:02
谢谢,看起来您不需要iname标志。以下似乎也可以找到/usr/share/nano/*.nanorc
–Milind
19年2月17日在0:06
非常感谢!
– VIX
19/09/21在21:27
#4 楼
这应该包括默认情况下包括的所有语法突出显示插件,以及您添加到/ usr / share / nano的所有插件:如果您可以取消注释includes。
如果您的nano版本拒绝接受.nanorc文件中的通配符,则此方法有效。
每次您都运行此行添加其他.nanorc颜色配置。
#5 楼
我在github上有一些nano语法高亮显示。有html和php的实时示例屏幕截图:
#6 楼
您可以使用它来包含所有内容:(将此添加到〜/ nanorc文件中)include "/usr/share/nano/*.nanorc"
快乐编码!
评论
这不起作用:(
– Artanis Zeratul
20-04-23在5:19
#7 楼
我想我可能会建议到2020年左右更新鲜和最新的东西:Scopatz在Git上的nanorc可以满足您的所有需求。它仍然会定期进行更新。
并附带了一个简洁的安装指南和有据可查的安装程序,可让您快速,清洁,轻松地进行操作。 nanorc文件中的荧光笔或将其注释掉(etc-host,html和html.j2),因为它们似乎有问题,但没什么大不了的
#8 楼
此处维护了nano的最完整和最新的语法提示器。要为您的用户安装所有荧光笔,只需运行: -override“>
cd /tmp
git clone https://github.com/tech4david/nano-highlight.git
cd nano-highlight/
make install
echo "include ~/.nano/syntax/ALL.nanorc" >> ~/.nanorc
评论
解决方案很好,但是我将使用另一个文件夹进行git clone。 / tmp文件夹中的otf内容将在每次系统启动时删除,因此您永远无法运行git pull。
– A.B.
15年7月30日在8:00
您的语言标签有误。 js不是bash或shell脚本,我将链接放在此处。问题出在哪儿?
– A.B.
15年7月30日在8:19
@ A.B。该文件夹是否消失并不重要,因为在您进行安装时,所有语法文件都将复制到它们所属的安全位置:〜/ .nano / syntax。
–巴勃罗·比安奇(Pablo Bianchi)
17-10-14在21:06
#9 楼
对于遵循上述说明后仍遇到问题的用户,还请检查是否有重复的定义。这些将禁用所有文件的所有语法突出显示。我在添加nanorc.nanorc
文件后遇到了这个问题,但没有意识到我的~/.nanorc
已经具有相同的部分,即:## Here is an example for nanorc files.
##
syntax "nanorc" "\.?nanorc$"
## Possible errors and parameters
icolor brightwhite "^[[:space:]]*((un)?set|include|syntax|i?color).*$"
## Keywords
icolor brightgreen "^[[:space:]]*(set|unset)[[:space:]]+(autoindent|backup|$
icolor green "^[[:space:]]*(set|unset|include|syntax)\>"
(...)
#10 楼
我不小心使用键盘快捷键Alt + Y禁用了突出显示。可以使用相同的键盘快捷键再次将其打开。#11 楼
我知道这是一个旧线程,但也许我的解决方案可以帮助您在/ etc / nanorc编辑该文件。在第243行中,您可以找到很多包含文件。只需取消注释您需要的,保存并完成的注释即可。
#12 楼
wget -r -nH --cut-dirs=3 --no-parent --reject="index.html*" https://nanosyntax.googlecode.com/svn/trunk/syntax-nanorc/ -P ~/.nano-syntax
for i in `ls --color=never -1 ~/.nano-syntax/*.nanorc` ; do echo "include $i" >> ~/.nanorc ; done
评论
如果您可以解释为什么这对新用户有用的答案将很有帮助。命令在做什么?它会发生什么变化?随机建议运行命令行没有帮助。
–凯文·鲍恩(Kevin Bowen)
13年6月28日在3:10
#13 楼
我在这里找到了js的语法高亮。将~/.nanorc
首先以/usr/share/nano/nanorc.nanorc
的形式发送到我的本地文件夹。#14 楼
我只是编写了此脚本,以便将颜色添加到nano: 〜/ .nanorc文件,并删除出现错误的行。#!/bin/bash
for i in `ls /usr/share/nano`
do
echo "include /usr/share/nano/$i" >> ~/.nanorc
done
评论
与askubuntu.com/a/865425/158442和askubuntu.com/a/538674/158442几乎相同
–muru
18年4月11日,0:58
评论
非常感谢git repo中的语法文件,我现在在所有服务器上都使用它...保持良好的工作状态!!!@TheGene评论并感谢答案。回购被归功于他,而不是我,那个问问题的人。