Kan nano gjøre syntaksutheving som gedit og vim? Hvordan kan jeg aktivere det? Jeg trenger i det minste syntaksutheving i bash og python.
Editoren nano har syntaksutheving for noen få språk og skript i seg selv. Ta en titt på /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
Koble dem til brukerens nano-konfigurasjonsfil på ~/.nanorc
med noe som ligner på denne linjen:
nits@nits-excalibur:~$ cat ~/.nanorc
include /usr/share/nano/sh.nanorc
Nå er syntaksutheving aktivert i nano for den filen du har lenket til (du kan også lenke til flere filer).
Skjermbilde av syntaksutheving]1.
Merk: Noen ganger kan du få en segmenteringsfeil
etter at du har redigert filen ~/.nanorc
. Hvis en slik feil oppstår, hjelper det å fjerne miljøvariabelen LANG. Du kan fjerne den med unset LANG
i terminalen. (Løsning hentet fra her)
Det finnes også andre løsninger hvis du ikke er fornøyd med uthevingen i bash. Et eksempel på en slik finner du her
Du kan også skrive include /usr/share/nano/*
til ~/.nanorc-filen for å markere alle språk hvis nano-versjonen din støtter det.
Ja, det kan du, men standardsyntaksdefinisjonene er ganske dårlige og ufullstendige. Jeg vedlikeholder et mer nøyaktig sett med definisjoner her, for alle som synes de er nyttige.
For å installere, kjør:
git clone github.com/scopatz/nanorc.git
cd nanorc
make install
Legg til disse linjene i ~/.nanorc
include ~/.nano/syntax/html.nanorc
include ~/.nano/syntax/css.nanorc
include ~/.nano/syntax/php.nanorc
include ~/.nano/syntax/ALL.nanorc
Spesifiser de filene du vil ha fargelegging for, og du må tilpasse disse fargene til dine preferanser. ALL.nanorc
beskriver funksjoner for alle filer som ennå ikke er klassifisert. Dette er verktøyene du trenger for å komme i gang, ikke det ferdige produktet.