Содержание
GNU nano — это простой текстовый редактор на основе терминала. Хотя он не такой мощный, как Emacs или Vim, его легко освоить и использовать. Многие разработчики предпочитают этот редактор, так как он очень прост в использовании и довольно полезен, когда вы хотите быстро отредактировать один файл на вашем сервере.
Один из тех файлов, которые вам нужно часто менять в редакторе такого типа, — это файл конфигурации, например, ini-файлы. Nano предлагает подсветку синтаксиса для многих типов файлов, но не для INI-файлов. Если вы хотите выделить и этот тип файлов, вам нужно будет выполнить дополнительный шаг. В этой статье мы покажем вам, как выделить файлы INI для nano в Ubuntu.
1. Перечислите доступные файлы подсветки синтаксиса Nano
В качестве первого шага выясните, какие языки доступны в nano, чтобы выделить его синтаксис, с помощью следующей команды:
ls /usr/share/nano/
Это перечислит все файлы подсветки синтаксиса нано в данном каталоге:
root@server:~$ 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
Если вы не найдете ini.nanorc
файл, затем вы можете установить его с помощью следующего шага.
2. Создайте файл выделения синтаксиса INI Nano
Чтобы обеспечить подсветку синтаксиса для вашего файла, если файл по умолчанию не существует, вам необходимо создать файл подсветки синтаксиса для этого языка. Этот файл является ini.nanorc
файл, и вам нужно создать его в указанном каталоге. Запустите nano, чтобы создать файл:
sudo nano /usr/share/nano/ini.nanorc
и вставьте следующее содержимое:
syntax "ini" "\.ini(\.old|\.bak|\.example|~)?$"
## Values
color brightred "=.*$"
## Equal sign
color green "="
## Numbers
color brightblue "-?[0-9\.]+\s*($|;)"
## ON/OFF
color brightmagenta "(ON|OFF|On|Off|on|off)\s*($|;)"
## Sections
color brightcyan "^\s*\[.*\]"
## Keys
color cyan "^\s*[a-zA-Z0-9_\.]+"
## Comments
color brightyellow ";.*$"
Посетите официальный репозиторий Nano Highlight, элегантная коллекция файлов подсветки синтаксиса нано для получения дополнительной информации и языков, доступных для нано. Этот файл будет автоматически добавлен в nano и выделит INI-файлы. Сохраните изменения и перейдите к последнему шагу.
3. Создайте тестовый INI-файл, чтобы увидеть результаты
В качестве последнего шага, вам нужно проверить, работает подсветка или нет. Перейдите к созданию тестового файла с nano и запишите на нем некоторый контент на основе INI, например:
# A comment
; This is a comment too
[SectionOne]
key = "value"
integer = 1234
real = 3.14
string1 = "Case 1"
string2 = 'Case 2'
multivalue[] = "first" # in-line comments
multivalue[] = 'second' # are supported as well
; Section: SectionTwo
[SectionTwo]
key = new value
integer = 1234
real = 3.14
string1 = Case 1
string2 = Case 2
string3 = Case 3
multivalue[] = first
multivalue[] = second
multivalue[] = third
Сохраните файл, отредактируйте его снова, и вы увидите выделенный синтаксис INI.