Jeśli programujesz w linux’owym notatniku pewnie już nie raz spędziłeś długie godziny na poszukiwaniu błędu w składni …. tylko po to, żeby znaleźć brakujący cudzysłów.
Rozwiązaniem tego problemu może być edytor nano.
Spis treści
1) Pobierz i zainstaluj
Zacznijmy od instalacji nano.
# CentOS / RedHat / Fedora
sudo yum -y install nano
# Debian / Ubuntu
sudo apt-get -y install nano
Załóżmy, że zainstalowałeś już Asteriska w katalogu/etc/asterisk
. Przejdź do tego katalogu i edytuj plikextensions.conf
.
cd /etc/asterisk
nano extensions.conf
To co widzisz … powiedzmy sobie szczerze … nic specjalnego.
Pobierz wcześniej przygotowany plik.nanorc
do katalogu /usr/share/nano/
.
cd /usr/share/nano/
wget https://files.hotkey404.com/blog/asterisk.nanorc -O asterisk.nanorc
Istnieje plik, który zawiera konfigurację podkreślania składni:/etc/nanorc
. Dopisz nową linijkę, żeby zacząć korzystać z nowo pobranego pliku asterisk.nanorc
.
echo include "/usr/share/nano/asterisk.nanorc" >> /etc/nanorc
Teraz nasz plik wygląda dużo lepiej.
2) Dostosowanie składni
Plik, który pobrałeś(aś) to jedna z wersji, z której korzystam. Oczywiście możesz w nim dostosować składnię, kolor, itp… zgodnie z oficjalną dokumentacją (https://www.nano-editor.org/dist/latest/nanorc.5.html). Wyjaśnijmy więc kilka podstawowych kwestii.
syntax “/etc/asterisk/.conf” “/.*.conf” – ta linijka definiuje, które pliki powinny korzystać z tego pliku składni (*.nanorc)
## Separating characters or
#color green “({|}|(|)|]|[|`||$|<|>|!|=|&||)” – linie zaczynające się znakiem
#
NIE są używane
color
vs icolor
– ‚i’ na początku pominie sprawdzanie wielkości liter (np. Confbridge to nie to samo co ConfBridge)
“^(s)(#)include(s)(=>|=)(s)<.+>” – chociaż wygląda to strasznie to tak na prawdę tylko wyrażenie REGEX. Możesz to poćwiczyć korzystając z testerów online. Osobiście korzystam z https://regex101.com/
Taki sam plik*.nanorc
może być przygotowany do właściwie każdego rodzaju pliku (np. sh, html, php, js). Ale skoro tutaj szkolimy się z Asterisk’a pozostańmy na razie na tym.