Может ли сделать nano подсветку синтаксиса, например gedit и vim? Как я могу включить его? Мне нужно, по крайней мере, синтаксис синтаксиса bash и python.
Да, вы можете, однако определения синтаксиса по умолчанию довольно плохие и неполные.
Чтобы установить, запустите:
git clone https://github.com/nanorc/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
Укажите те, для которых вы хотите раскрасить, и вам нужно будет настроить эти цвета на свои предпочтения. [F3] описывает функции для всех еще неклассифицированных файлов. Это инструменты, необходимые для начала работы, а не для конечного отполированного продукта.
Я использовал эту команду для быстрого включения всех доступных языков.
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 определяют команду для выполнения для каждого найденного файла. [F11] заменяется именем файла. \; используется для обозначения конца команды для выполнения команды find. Наконец, >> ~/.nanorc приводит к добавлению вывода к вашему файлу ~/.nanorc.Это должно включать все плагины подсветки синтаксиса, включенные по умолчанию, и любые, которые вы добавляете в / usr / share / nano:
find /usr/share/nano -name '*.nanorc' -printf "include %p\n" > ~/.nanorc
Или, отредактируйте / etc / nanorc и посмотрите, можете ли вы раскомментировать include.
Это работает, если у вас есть версия nano, которая отказывается принимать подстановочные знаки в файле .nanorc.
Просто запустите эту строку каждый раз, когда вы добавляете дополнительный цвет .nanorc конфиг.
У меня есть подсветка nano-синтаксиса в моем github.
Есть живые примеры скриншотов для html и php:
и
Здесь вы найдете наиболее полную и актуальную подсветку синтаксиса для nano.
Чтобы установить все маркеры для вашего пользователя, просто запустите:
cd /tmp
git clone https://github.com/tech4david/nano-highlight.git
cd nano-highlight/
make install
echo "include ~/.nano/syntax/ALL.nanorc" >> ~/.nanorc
Вы можете использовать это, чтобы включить все: (добавьте это в файл ~ / nanorc)
include "/usr/share/nano/*.nanorc"
Счастливое кодирование!
Я нашел выделение синтаксиса для js здесь.
Я добавил его в свой файл пользователя в ~/.nanorc
Однако, чтобы получить файл, в который я мог бы добавить, мне пришлось сначала скопируйте с /usr/share/nano/nanorc.nanorc в мою локальную папку сначала как ~/.nanorc.
Для тех, кто испытывает проблемы после выполнения приведенных выше инструкций, также проверьте, есть ли у вас дубликаты определений. Они отключат выделение синтаксиса для всех файлов. Я столкнулся с этим после добавления файла 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)\>"
(...)
Я просто сделал этот скрипт для добавления цветов к nano: Но, конечно, для этого вам нужно иметь цветовые коды в / usr / share / nano. Если есть ошибки: просто вручную отредактируйте файл ~ / .nanorc и удалите строки, которые дают ошибки.
#!/bin/bash
for i in `ls /usr/share/nano`
do
echo "include /usr/share/nano/$i" >> ~/.nanorc
done