I have placed https://github.com/serialhex/nano-highlight/blob/master/delphi.nanorc
to my /usr/share/nano folder, hoping that my Pascal source code would then be syntax-highlighted by Nano. But, Nano has never able to do so. Have I missed something?
P.S.: No error code is generated when I open a .pas file. I use fpc as compiler.
Create a file in your home
~/.nanorc
include /usr/share/nano/*.nanorc
include ~/.config/nano/*.nanorc
Then copy put your syntax file in ~/.config/nano
NOTE: Manually copying files to system folders has the possibility to create file conflicts for pacman at a later time.
Also checkout:
-
man nanorc
look for include "syntaxfile"
When trying to find something in the man pages, try, in this case, man -k nano
.
- /etc/nanorc found via
locate 'nanorc'
I currently put my nano usr configuration file in $HOME/.config/nano/nanorc
.
A syntax file can be inline or included.
Summary
The snippet below is part of my nanorc file with an inline highlighting file. I could have easily done include './asciidoc.nanorc' if I had put it in the directory
$HOME/.config/nano/
### Simple asciidoc highlighting
syntax "AsciiDoc" "\.(txt|asc)$"
header "^={1,2}[[:space:]]+.+[[:space:]]+={1,2}$"
# h1
color black,white "^=[[:space:]]+.+[[:space:]]+=$"
# h2
color red "^==[[:space:]]+.+[[:space:]]+==$"
# h3
color red "^===[[:space:]]+.+[[:space:]]+===$"
# .title
color blue "^\.[^[:space:].]+.+$"
Thank you for your quick reply. I forgot to mention that I have already set include /usr/share/nano/*.nanorc
in my nano configuration file. It works straight away for other “built-in” syntaxes like c, fortran and python. At some point, I then realized that actually the original file delphi.nanorc was insufficiently configured. By, adding some proper pascal syntax highlighting rules to the original delphi.nanorc, it is now working properly as I intended.
I must say big thank you. Looking at your sample asciidoc.nanorc, I finally figured out what was wrong with my delphi.nanorc file.
It lacked proper syntax, such as color brightmagenta "\<(and|div|mod|or)\>"
. Those kind of syntax is what I need for syntax-highlighting my pascal code. Sorry for my slow respones.