diff options
Diffstat (limited to 'share/nano')
-rw-r--r-- | share/nano/asm.nanorc | 17 | ||||
-rw-r--r-- | share/nano/awk.nanorc | 38 | ||||
-rw-r--r-- | share/nano/c.nanorc | 30 | ||||
-rw-r--r-- | share/nano/cmake.nanorc | 19 | ||||
-rw-r--r-- | share/nano/css.nanorc | 9 | ||||
-rw-r--r-- | share/nano/debian.nanorc | 20 | ||||
-rw-r--r-- | share/nano/fortran.nanorc | 41 | ||||
-rw-r--r-- | share/nano/gentoo.nanorc | 55 | ||||
-rw-r--r-- | share/nano/groff.nanorc | 24 | ||||
-rw-r--r-- | share/nano/html.nanorc | 5 | ||||
-rw-r--r-- | share/nano/java.nanorc | 12 | ||||
-rw-r--r-- | share/nano/makefile.nanorc | 8 | ||||
-rw-r--r-- | share/nano/man.nanorc | 9 | ||||
-rw-r--r-- | share/nano/mgp.nanorc | 8 | ||||
-rw-r--r-- | share/nano/mutt.nanorc | 4 | ||||
-rw-r--r-- | share/nano/nanorc.nanorc | 16 | ||||
-rw-r--r-- | share/nano/objc.nanorc | 41 | ||||
-rw-r--r-- | share/nano/ocaml.nanorc | 27 | ||||
-rw-r--r-- | share/nano/patch.nanorc | 10 | ||||
-rw-r--r-- | share/nano/perl.nanorc | 12 | ||||
-rw-r--r-- | share/nano/php.nanorc | 30 | ||||
-rw-r--r-- | share/nano/pov.nanorc | 15 | ||||
-rw-r--r-- | share/nano/python.nanorc | 10 | ||||
-rw-r--r-- | share/nano/ruby.nanorc | 31 | ||||
-rw-r--r-- | share/nano/sh.nanorc | 14 | ||||
-rw-r--r-- | share/nano/tcl.nanorc | 16 | ||||
-rw-r--r-- | share/nano/tex.nanorc | 6 | ||||
-rw-r--r-- | share/nano/xml.nanorc | 9 |
28 files changed, 536 insertions, 0 deletions
diff --git a/share/nano/asm.nanorc b/share/nano/asm.nanorc new file mode 100644 index 0000000..e94ee90 --- /dev/null +++ b/share/nano/asm.nanorc @@ -0,0 +1,17 @@ +## Here is an example for assembler. +## +syntax "asm" "\.(S|s|asm)$" +color red "\<[A-Z_]{2,}\>" +color brightgreen "\.(data|subsection|text)" +color green "\.(align|file|globl|global|hidden|section|size|type|weak)" +color brightyellow "\.(ascii|asciz|byte|double|float|hword|int|long|short|single|struct|word)" +icolor brightred "^[[:space:]]*[.0-9A-Z_]*:" +color brightcyan "^[[:space:]]*#[[:space:]]*(define|undef|include|ifn?def|endif|elif|else|if|warning|error)" +## Highlight strings (note: VERY resource intensive) +color brightyellow "<[^= ]*>" ""(\\.|[^"])*"" +color brightyellow start=""(\\.|[^"])*\\[[:space:]]*$" end="^(\\.|[^"])*"" +## Highlight comments +color brightblue "//.*" +color brightblue start="/\*" end="\*/" +## Highlight trailing whitespace +color ,green "[[:space:]]+$" diff --git a/share/nano/awk.nanorc b/share/nano/awk.nanorc new file mode 100644 index 0000000..696ab6a --- /dev/null +++ b/share/nano/awk.nanorc @@ -0,0 +1,38 @@ +## Here is an example for awk. +## +syntax "awk" "\.awk$" +## records +icolor brightred "\$[0-9A-Z_!@#$*?-]+" +## awk-set variables +color red "\<(ARGC|ARGIND|ARGV|BINMODE|CONVFMT|ENVIRON|ERRNO|FIELDWIDTHS)\>" +color red "\<(FILENAME|FNR|FS|IGNORECASE|LINT|NF|NR|OFMT|OFS|ORS)\>" +color red "\<(PROCINFO|RS|RT|RSTART|RLENGTH|SUBSEP|TEXTDOMAIN)\>" +## function declarations and special patterns +color brightgreen "\<(function|extension|BEGIN|END)\>" +## operators +color green "(\{|\}|\(|\)|\;|\]|\[|\\|<|>|!|=|&|\+|-|\*|%|/|\?:|\^|\|)" +## flow control +color brightyellow "\<(for|if|while|do|else|in|delete|exit)\>" +color brightyellow "\<(break|continue|return)\>" +## I/O statements +color brightgreen "\<(close|getline|next|nextfile|print|printf)\>" +color brightgreen "\<(system|fflush)\>" +## standard functions +color magenta "\<(atan2|cos|exp|int|log|rand|sin|sqrt|srand)\>" +color magenta "\<(asort|asorti|gensub|gsub|index|length|match)\>" +color magenta "\<(split|sprintf|strtonum|sub|substr|tolower|toupper)\>" +color magenta "\<(mktime|strftime|systime)\>" +color magenta "\<(and|compl|lshift|or|rshift|xor)\>" +color magenta "\<(bindtextdomain|dcgettext|dcngettext)\>" + +## +## String highlighting. You will in general want your comments and +## strings to come last, because syntax highlighting rules will be +## applied in the order they are read in. +color brightyellow "<[^= ]*>" ""(\\.|[^"])*"" + +## Comment highlighting +color brightblue "(^|[[:space:]])#.*$" + +## Trailing whitespace +color ,green "[[:space:]]+$" diff --git a/share/nano/c.nanorc b/share/nano/c.nanorc new file mode 100644 index 0000000..b89c9d2 --- /dev/null +++ b/share/nano/c.nanorc @@ -0,0 +1,30 @@ +## Here is an example for C/C++. +## +syntax "c" "\.(c(c|pp|xx)?|C)$" "\.(h(h|pp|xx)?|H)$" "\.ii?$" +color brightred "\<[A-Z_][0-9A-Z_]+\>" +color green "\<(float|double|bool|char|int|short|long|sizeof|enum|void|static|const|struct|union|typedef|extern|(un)?signed|inline)\>" +color green "\<((s?size)|((u_?)?int(8|16|32|64|ptr)))_t\>" +color green "\<(class|namespace|template|public|protected|private|typename|this|friend|virtual|using|mutable|volatile|register|explicit)\>" +color brightyellow "\<(for|if|while|do|else|case|default|switch)\>" +color brightyellow "\<(try|throw|catch|operator|new|delete)\>" +color magenta "\<(goto|continue|break|return)\>" +color brightcyan "^[[:space:]]*#[[:space:]]*(define|include(_next)?|(un|ifn?)def|endif|el(if|se)|if|warning|error|pragma)" +color brightmagenta "'([^'\]|(\\["'abfnrtv\\]))'" "'\\(([0-3]?[0-7]{1,2}))'" "'\\x[0-9A-Fa-f]{1,2}'" +## +## GCC builtins +color cyan "__attribute__[[:space:]]*\(\([^)]*\)\)" "__(aligned|asm|builtin|hidden|inline|packed|restrict|section|typeof|weak)__" +## +## String highlighting. You will in general want your comments and +## strings to come last, because syntax highlighting rules will be +## applied in the order they are read in. +color brightyellow "<[^= ]*>" ""(\\.|[^"])*"" +## +## This string is VERY resource intensive! +color brightyellow start=""(\\.|[^"])*\\[[:space:]]*$" end="^(\\.|[^"])*"" + +## Comment highlighting +color brightblue "//.*" +color brightblue start="/\*" end="\*/" + +## Trailing whitespace +color ,green "[[:space:]]+$" diff --git a/share/nano/cmake.nanorc b/share/nano/cmake.nanorc new file mode 100644 index 0000000..3c52f7d --- /dev/null +++ b/share/nano/cmake.nanorc @@ -0,0 +1,19 @@ +## CMake syntax highlighter for GNU Nano +## +syntax "cmake" "(CMakeLists\.txt|\.cmake)$" + +icolor green "^[[:space:]]*[A-Z0-9_]+" +icolor brightyellow "^[[:space:]]*(include|include_directories|include_external_msproject)\>" + +icolor brightgreen "^[[:space:]]*\<((else|end)?if|else|(end)?while|(end)?foreach|break)\>" +color brightgreen "\<(NOT|COMMAND|POLICY|TARGET|EXISTS|IS_(DIRECTORY|ABSOLUTE)|DEFINED)\>[[:space:]]" +color brightgreen "[[:space:]]\<(OR|AND|IS_NEWER_THAN|MATCHES|(STR|VERSION_)?(LESS|GREATER|EQUAL))\>[[:space:]]" + +icolor brightred "^[[:space:]]*\<((end)?(function|macro)|return)" + +icolor cyan start="\$(\{|ENV\{)" end="\}" +color magenta "\<(APPLE|UNIX|WIN32|CYGWIN|BORLAND|MINGW|MSVC(_IDE|60|71|80|90)?)\>" + +icolor brightblue "^([[:space:]]*)?#.*" +icolor brightblue "[[:space:]]#.*" +color ,green "[[:space:]]+$" diff --git a/share/nano/css.nanorc b/share/nano/css.nanorc new file mode 100644 index 0000000..98eea18 --- /dev/null +++ b/share/nano/css.nanorc @@ -0,0 +1,9 @@ +## Here is an example for css files. +## +syntax "css" "\.css$" +color brightred "." +color brightyellow start="\{" end="\}" +color brightwhite start=":" end="([;^\{]|$)" +color brightblue ":active|:focus|:hover|:link|:visited|:link|:after|:before|$" +color brightblue start="\/\*" end="\\*/" +color green ";|:|\{|\}" diff --git a/share/nano/debian.nanorc b/share/nano/debian.nanorc new file mode 100644 index 0000000..a945dee --- /dev/null +++ b/share/nano/debian.nanorc @@ -0,0 +1,20 @@ +## Here is an exmaple for apt's sources.list +## Adapted from http://milianw.de/blog/Syntax-Highlighting-in-Nano +## (mail@milianw.de). +## +syntax "apt/sources.list" "sources\.list(\.old|~)?$" +# component +color brightmagenta "^deb(-src)? ((http|file|ftp):/[^ ]+|cdrom:\[[^\]]+\]/|cdrom:\[[-a-zA-Z0-9\._\(\) ]+\]/) [^ ]+ .+$" +# distribution +color brightred "^deb(-src)? ((http|file|ftp):/[^ ]+|cdrom:\[[^\]]+\]/|cdrom:\[[-a-zA-Z0-9\._\(\) ]+\]/) [^ ]+" +# URI +color brightgreen "(http|file|ftp):/[^ ]+" +# cdroms +# [^\]] does not work... +color brightgreen "cdrom:\[[-a-zA-Z0-9\._\(\) ]+\]/" +# deb / deb-src +color yellow "^deb" +color yellow "^deb-src" +# comments +color brightblue "#.*" + diff --git a/share/nano/fortran.nanorc b/share/nano/fortran.nanorc new file mode 100644 index 0000000..cc0c726 --- /dev/null +++ b/share/nano/fortran.nanorc @@ -0,0 +1,41 @@ +## Here is an example for Fortran 90/95 + +syntax "fortran" "\.(f|f90|f95)$" + +#color red "\<[A-Z_]a[0-9A-Z_]+\>" +color red "\<[0-9]+\>" + +icolor green "\<(action|advance|all|allocatable|allocated|any|apostrophe)\>" +icolor green "\<(append|asis|assign|assignment|associated|character|common)\>" +icolor green "\<(complex|data|default|delim|dimension|double precision)\>" +icolor green "\<(elemental|epsilon|external|file|fmt|form|format|huge)\>" +icolor green "\<(implicit|include|index|inquire|integer|intent|interface)\>" +icolor green "\<(intrinsic|iostat|kind|logical|module|none|null|only)>" +icolor green "\<(operator|optional|pack|parameter|pointer|position|private)\>" +icolor green "\<(program|public|real|recl|recursive|selected_int_kind)\>" +icolor green "\<(selected_real_kind|subroutine|status)\>" + +icolor cyan "\<(abs|achar|adjustl|adjustr|allocate|bit_size|call|char)\>" +icolor cyan "\<(close|contains|count|cpu_time|cshift|date_and_time)\>" +icolor cyan "\<(deallocate|digits|dot_product|eor|eoshift|function|iachar)\>" +icolor cyan "\<(iand|ibclr|ibits|ibset|ichar|ieor|iolength|ior|ishft|ishftc)\>" +icolor cyan "\<(lbound|len|len_trim|matmul|maxexponent|maxloc|maxval|merge)\>" +icolor cyan "\<(minexponent|minloc|minval|mvbits|namelist|nearest|nullify)\>" +icolor cyan "\<(open|pad|present|print|product|pure|quote|radix)\>" +icolor cyan "\<(random_number|random_seed|range|read|readwrite|replace)\>" +icolor cyan "\<(reshape|rewind|save|scan|sequence|shape|sign|size|spacing)\>" +icolor cyan "\<(spread|sum|system_clock|target|transfer|transpose|trim)\>" +icolor cyan "\<(ubound|unpack|verify|write|tiny|type|use|yes)\>" + +icolor yellow "\<(.and.|case|do|else|else?if|else?where|end|end?do|end?if)\>" +icolor yellow "\<(end?select|.eqv.|forall|if|lge|lgt|lle|llt|.neqv.|.not.)\>" +icolor yellow "\<(.or.|repeat|select case|then|where|while)\>" + +icolor magenta "\<(continue|cycle|exit|go?to|result|return)\>" + +## String highlighting. +icolor yellow "<[^= ]*>" ""(\\.|[^"])*"" + +## Comment highlighting +icolor blue "!.*" + diff --git a/share/nano/gentoo.nanorc b/share/nano/gentoo.nanorc new file mode 100644 index 0000000..2ad1597 --- /dev/null +++ b/share/nano/gentoo.nanorc @@ -0,0 +1,55 @@ +## Here is an example for Gentoo ebuilds/eclasses +## +syntax "ebuild" "\.e(build|class)$" +## All the standard portage functions +color brightgreen "^src_(unpack|prepare|configure|compile|install|test)" "^pkg_(config|nofetch|setup|(pre|post)(inst|rm))" +## Highlight bash related syntax +color green "\<(case|do|done|elif|else|esac|exit|fi|for|function|if|in|local|read|return|select|shift|then|time|until|while|continue|break)\>" +color green "\<(declare|eval|exec|let)\>" +color green "(\{|\}|\(|\)|\;|\]|\[|`|\\|\$|<|>|!|=|&|\|)" +color green "-[edfgruwxL]\>" +color green "-(eq|ne|gt|lt|ge|le|s|n|z)\>" +## Highlight variables ... official portage ones in red, all others in bright red +color brightred "\$\{?[a-zA-Z_0-9]+\}?" +color red "\<(EAPI|ARCH|HOMEPAGE|DESCRIPTION|IUSE|SRC_URI|LICENSE|SLOT|KEYWORDS|(P|R)?DEPEND|PROVIDE|PROPERTIES|RESTRICT|USERLAND)\>" +color red "\<(S|D|T|PV|PF|P|PN|PR|PVR|A|CATEGORY|DISTDIR|FILESDIR|ROOT|WORKDIR)\>" "\<(AS|C(PP|XX)?|LD)FLAGS\>" "\<C(HOST|TARGET|BUILD)\>" +color red "\<QA_((TEXTRELS|EXECSTACK|WX_LOAD)(_[a-zA-Z_0-9]+)?|DT_HASH|PRESTRIPPED)\>" "\<WANT_AUTO(CONF|MAKE)\>" "\<AT_M4DIR\>" +## Highlight portage commands +color magenta "\<use(_(with|enable))?\> [!a-zA-Z0-9_+ -]*" "inherit.*" +color brightblue "\<e(begin|end|conf|install|make|qmake[34]|ant|(qa)?warn|infon?|error|log|patch|new(group|user))\>" +color brightblue "\<e(pause|beep|mktemp|(cvs|svn)_clean|punt_cxx)\>" "\<e(aclocal|auto(reconf|header|conf|make))\>" +color brightblue "\<built_with_use\>" "\<make_desktop_entry\>" "\<unpack(_(makeself|pdv))?\>" +color brightblue "\<die\>" "\<use(_(with|enable))?\>" "\<inherit\>" "\<has\>" "\<(has|best)_version\>" +color brightblue "\<(do|new)(ins|(games)?s?bin|doc|lib(\.so|\.a)?|man|info|exe|initd|confd|envd|pam|menu|icon)\>" +color brightblue "\<do(python|sed|dir|hard|sym|html|jar|mo)\>" "\<keepdir\>" +color brightblue "prepall(docs|info|man|strip)?" "prep(info|lib|lib\.(so|a)|man|strip|gamesdirs)" +color brightblue "\<(doc|ins|exe)?into\>" "\<(f|games)(owners|perms)\>" "\<(exe|ins|dir)opts\>" +## Highlight common commands used in ebuilds +color blue "\<make\>" "\<(awk|cat|cd|chmod|chown|cp|echo|env|export|find|e?grep|ln|mkdir|mv|rm|sed|set|tar|touch|unset|xargs)\>" +## Highlight comments (doesnt work that well) +color yellow "(^|[[:space:]])#.*$" +## Highlight strings (doesnt work that well) +color brightyellow ""(\\.|[^\"])*"" "'(\\.|[^'])*'" +## Trailing space is bad! +color ,green "[[:space:]]+$" + +## Here is an example for Portage control files +## +syntax "/etc/portage" "\.(keywords|mask|unmask|use)(/.+)?$" +## Base text: +color green "^.+$" +## Use flags: +color brightred "[[:space:]]+\+?[a-zA-Z0-9_-]+" +color brightblue "[[:space:]]+-[a-zA-Z0-9_-]+" +## Likely version and slot numbers: +color magenta "-[[:digit:]].*([[:space:]]|$)" +color magenta ":[^[:space:]]+([[:space:]]|$)" +## Accepted arches: +color white "[~-]?\<(alpha|amd64|arm|hppa|ia64|mips|ppc|ppc64|s390|sh|sparc(-fbsd)?|x86(-fbsd)?)\>" +color white "[[:space:]][*~-]?\*" +## Categories: +color cyan "^[[:space:]]*.*/" +## Masking regulators: +color brightmagenta "^[[:space:]]*(=|~|<|<=|=<|>|>=|=>)" +## Comments: +color yellow "#.*$" diff --git a/share/nano/groff.nanorc b/share/nano/groff.nanorc new file mode 100644 index 0000000..02b82b8 --- /dev/null +++ b/share/nano/groff.nanorc @@ -0,0 +1,24 @@ +## Here is an example for groff. +## +syntax "groff" "\.m[ems]$" "\.rof" "\.tmac$" "^tmac." +## The argument of .ds or .nr +color cyan "^\.(ds|nr) [^[[:space:]]]*" +## Single character escapes +color brightmagenta "\\." +## Highlight the argument of \f or \s in the same color +color brightmagenta "\\f." "\\f\(.." "\\s(\+|\-)?[0-9]" +## Newlines +color cyan "(\\|\\\\)n(.|\(..)" +color cyan start="(\\|\\\\)n\[" end="]" +## Requests +color brightgreen "^\.[[:space:]]*[^[[:space:]]]*" +## Comments +color yellow "^\.\\".*$" +## Strings +color green "(\\|\\\\)\*(.|\(..)" +color green start="(\\|\\\\)\*\[" end="]" +## Characters +color brightred "\\\(.." +color brightred start="\\\[" end="]" +## Macro arguments +color brightcyan "\\\\\$[1-9]" diff --git a/share/nano/html.nanorc b/share/nano/html.nanorc new file mode 100644 index 0000000..d31467d --- /dev/null +++ b/share/nano/html.nanorc @@ -0,0 +1,5 @@ +## Here is a short example for HTML. +## +syntax "html" "\.html$" +color blue start="<" end=">" +color red "&[^;[[:space:]]]*;" diff --git a/share/nano/java.nanorc b/share/nano/java.nanorc new file mode 100644 index 0000000..a432f81 --- /dev/null +++ b/share/nano/java.nanorc @@ -0,0 +1,12 @@ +## Here is an example for Java. +## +syntax "java" "\.java$" +color green "\<(boolean|byte|char|double|float|int|long|new|short|this|transient|void)\>" +color red "\<(break|case|catch|continue|default|do|else|finally|for|if|return|switch|throw|try|while)\>" +color cyan "\<(abstract|class|extends|final|implements|import|instanceof|interface|native|package|private|protected|public|static|strictfp|super|synchronized|throws|volatile)\>" +color red ""[^"]*"" +color yellow "\<(true|false|null)\>" +color blue "//.*" +color blue start="/\*" end="\*/" +color brightblue start="/\*\*" end="\*/" +color ,green "[[:space:]]+$" diff --git a/share/nano/makefile.nanorc b/share/nano/makefile.nanorc new file mode 100644 index 0000000..93a1e76 --- /dev/null +++ b/share/nano/makefile.nanorc @@ -0,0 +1,8 @@ +# unattributed syntax highlighting example from wiki.linuxhelp.net/ + +syntax "makefile" "Makefile[^/]*$" +color red "[:=]" +color magenta "\<(if|ifeq|else|endif)\>" +color blue "\$+[{(][a-zA-Z0-9_-]+[})]" +color brightblue "^[^ ]+:" +color green "#.*$" diff --git a/share/nano/man.nanorc b/share/nano/man.nanorc new file mode 100644 index 0000000..85efd26 --- /dev/null +++ b/share/nano/man.nanorc @@ -0,0 +1,9 @@ +## Here is an example for manpages. +## +syntax "man" "\.[1-9]x?$" +color green "\.(S|T)H.*$" +color brightgreen "\.(S|T)H" "\.TP" +color brightred "\.(BR?|I[PR]?).*$" +color brightblue "\.(BR?|I[PR]?|PP)" +color brightwhite "\\f[BIPR]" +color yellow "\.(br|DS|RS|RE|PD)" diff --git a/share/nano/mgp.nanorc b/share/nano/mgp.nanorc new file mode 100644 index 0000000..daba282 --- /dev/null +++ b/share/nano/mgp.nanorc @@ -0,0 +1,8 @@ +## Here is an example for Magicpoint presentations +## +syntax "mgp" "\.mgp$" +header "^%include.*" +icolor green "^%[a-z].*$" +color cyan "(^|[[:space:]])#.*$" +color cyan "(^|[[:space:]])%%.*$" +color ,green "[[:space:]]+$" diff --git a/share/nano/mutt.nanorc b/share/nano/mutt.nanorc new file mode 100644 index 0000000..2e68399 --- /dev/null +++ b/share/nano/mutt.nanorc @@ -0,0 +1,4 @@ +## Here is an example for quoted emails (under e.g. mutt). +## +syntax "mutt" +color green "^>.*" diff --git a/share/nano/nanorc.nanorc b/share/nano/nanorc.nanorc new file mode 100644 index 0000000..19ab533 --- /dev/null +++ b/share/nano/nanorc.nanorc @@ -0,0 +1,16 @@ +## 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:]]+(allow_insecure_backup|autoindent|backup|backupdir|backwards|boldtext|brackets|casesensitive|const|cut|fill|historylog|matchbrackets|morespace|mouse|multibuffer|noconvert|nofollow|nohelp|nonewlines|nowrap|operatingdir|preserve|punct)\>" "^[[:space:]]*(set|unset)[[:space:]]+(quickblank|quotestr|rebinddelete|rebindkeypad|regexp|smarthome|smooth|softwrap|speller|suspend|suspendenable|tabsize|tabstospaces|tempfile|undo|view|whitespace|wordbounds)\>" +icolor green "^[[:space:]]*(set|unset|include|syntax|header)\>" +## Colors +icolor yellow "^[[:space:]]*i?color[[:space:]]*(bright)?(white|black|red|blue|green|yellow|magenta|cyan)?(,(white|black|red|blue|green|yellow|magenta|cyan))?\>" +icolor magenta "^[[:space:]]*i?color\>" "\<(start|end)=" +## Strings +icolor white ""(\\.|[^"])*"" +## Comments +icolor brightblue "^[[:space:]]*#.*$" +icolor cyan "^[[:space:]]*##.*$" diff --git a/share/nano/objc.nanorc b/share/nano/objc.nanorc new file mode 100644 index 0000000..cdf6e48 --- /dev/null +++ b/share/nano/objc.nanorc @@ -0,0 +1,41 @@ +## Here is an example for C/C++/Obj-C. +## +syntax "m" "\.m$" + + +## Stuffs +color brightwhite "\<[A-Z_][0-9A-Z_]+\>" +color green "\<(float|double|BOOL|bool|char|int|short|long|id|sizeof|enum|void|static|const|struct|union|typedef|extern|(un)?signed|inline)\>" +color green "\<[[:alpha:]_][[:alnum:]_]*_t\>" +color green "\<(class|namespace|template|public|protected|private|typename|this|friend|virtual|using|mutable|volatile|register|explicit)\>" +color brightgreen "\<(for|if|while|do|else|case|default|switch)\>" +color brightgreen "\<(try|throw|catch|operator|new|delete)\>" +color brightgreen "\<(goto|continue|break|return)\>" +color brightgreen "@\<(en(code|d)|i(mplementation|nterface)|selector)\>" +## +## GCC builtins +color cyan "__attribute__[[:space:]]*\(\([^)]*\)\)" "__(aligned|asm|builtin|hidden|inline|packed|restrict|section|typeof|weak)__" + +## Selector/method +color brightmagenta "(^|[[:space:]])\[.*[[:space:]].*\]" +color white ":[[:alnum:]]*" +color magenta "[[:alnum:]]*:" +color white "\[[^][:space:]]*\]" + +## +## String highlighting. You will in general want your comments and +## strings to come last, because syntax highlighting rules will be +## applied in the order they are read in. +color brightblack "'([^'\]|(\\["'abfnrtv\\]))'" "'\\(([0-3]?[0-7]{1,2}))'" "'\\x[0-9A-Fa-f]{1,2}'" +color brightblack "<[^= ]*>" ""(\\.|[^"])*"" +color brightblue "@"(\\.|[^"])*"" +## +## This string is VERY resource intensive! +## color brightyellow start=""(\\.|[^"])*\\[[:space:]]*$" end="^(\\.|[^"])*"" + +color brightblue "^[[:space:]]*#[[:space:]]*(define|include|import|(un|ifn?)def|endif|el(if|se)|if|warning|error)" + +## Comment highlighting +color yellow "//.*" +color yellow start="/\*" end="\*/" + diff --git a/share/nano/ocaml.nanorc b/share/nano/ocaml.nanorc new file mode 100644 index 0000000..fc71ae2 --- /dev/null +++ b/share/nano/ocaml.nanorc @@ -0,0 +1,27 @@ +# OCaml sample nanorc +# +syntax "ocaml" "\.mli?$" +#uid +color red "\<[A-Z][0-9a-z_]{2,}\>" +#declarations +color green "\<(let|val|method|in|and|rec|private|virtual|constraint)\>" +#structure items +color red "\<(type|open|class|module|exception|external)\>" +#patterns +color blue "\<(fun|function|functor|match|try|with)\>" +#patterns-modifiers +color yellow "\<(as|when|of)\>" +#conditions +color cyan "\<(if|then|else)\>" +#blocs +color magenta "\<(begin|end|object|struct|sig|for|while|do|done|to|downto)\>" +#constantes +color green "\<(true|false)\>" +#modules/classes +color green "\<(include|inherit|initializer)\>" +#expr modifiers +color yellow "\<(new|ref|mutable|lazy|assert|raise)\>" +#comments +color white start="\(\*" end="\*\)" +#strings (no multiline handling yet) +color brightblack ""[^\"]*"" diff --git a/share/nano/patch.nanorc b/share/nano/patch.nanorc new file mode 100644 index 0000000..a788b35 --- /dev/null +++ b/share/nano/patch.nanorc @@ -0,0 +1,10 @@ +## Here is an example for patch files. +## +syntax "patch" "\.(patch|diff)$" +color brightgreen "^\+.*" +color green "^\+\+\+.*" +color brightblue "^ .*" +color brightred "^-.*" +color red "^---.*" +color brightyellow "^@@.*" +color magenta "^diff.*" diff --git a/share/nano/perl.nanorc b/share/nano/perl.nanorc new file mode 100644 index 0000000..b5a5606 --- /dev/null +++ b/share/nano/perl.nanorc @@ -0,0 +1,12 @@ +## Here is an example for Perl. +## +syntax "perl" "\.p[lm]$" +header "^#!.*/perl[-0-9._]*" +color red "\<(accept|alarm|atan2|bin(d|mode)|c(aller|h(dir|mod|op|own|root)|lose(dir)?|onnect|os|rypt)|d(bm(close|open)|efined|elete|ie|o|ump)|e(ach|of|val|x(ec|ists|it|p))|f(cntl|ileno|lock|ork))\>" "\<(get(c|login|peername|pgrp|ppid|priority|pwnam|(host|net|proto|serv)byname|pwuid|grgid|(host|net)byaddr|protobynumber|servbyport)|([gs]et|end)(pw|gr|host|net|proto|serv)ent|getsock(name|opt)|gmtime|goto|grep|hex|index|int|ioctl|join)\>" "\<(keys|kill|last|length|link|listen|local(time)?|log|lstat|m|mkdir|msg(ctl|get|snd|rcv)|next|oct|open(dir)?|ord|pack|pipe|pop|printf?|push|q|qq|qx|rand|re(ad(dir|link)?|cv|do|name|quire|set|turn|verse|winddir)|rindex|rmdir|s|scalar|seek(dir)?)\>" "\<(se(lect|mctl|mget|mop|nd|tpgrp|tpriority|tsockopt)|shift|shm(ctl|get|read|write)|shutdown|sin|sleep|socket(pair)?|sort|spli(ce|t)|sprintf|sqrt|srand|stat|study|substr|symlink|sys(call|read|tem|write)|tell(dir)?|time|tr(y)?|truncate|umask)\>" "\<(un(def|link|pack|shift)|utime|values|vec|wait(pid)?|wantarray|warn|write)\>" +color magenta "\<(continue|else|elsif|do|for|foreach|if|unless|until|while|eq|ne|lt|gt|le|ge|cmp|x|my|sub|use|package|can|isa)\>" +icolor cyan start="[$@%]" end="( |[^0-9A-Z_]|-)" +color yellow "".*"|qq\|.*\|" +color white "[sm]/.*/" +color white start="(^use| = new)" end=";" +color green "#.*" +color yellow start="<< 'STOP'" end="STOP" diff --git a/share/nano/php.nanorc b/share/nano/php.nanorc new file mode 100644 index 0000000..8ef495f --- /dev/null +++ b/share/nano/php.nanorc @@ -0,0 +1,30 @@ +## Here is an example for PHP +## +syntax "php" "\.php[2345s~]?$" + +## php markings +color brightgreen "(<\?(php)?|\?>)" + +## functions +color white "\<[a-z_]*\(" + +## types +color green "\<(var|float|global|double|bool|char|int|enum|const)\>" + +## structure +color brightyellow "\<(class|new|private|public|function|for|foreach|if|while|do|else|elseif|case|default|switch)\>" + +## control flow +color magenta "\<(goto|continue|break|return)\>" + +## strings +color brightyellow "<[^= ]*>" ""(\.|[^"])*"" + +## comments +color brightblue "//.*" +color brightblue start="/\*" end="\*/" +#color blue start="<" end=">" +#color red "&[^;[[:space:]]]*;" + +## Trailing whitespace +color ,green "[[:space:]]+$" diff --git a/share/nano/pov.nanorc b/share/nano/pov.nanorc new file mode 100644 index 0000000..298b201 --- /dev/null +++ b/share/nano/pov.nanorc @@ -0,0 +1,15 @@ +## Here is an example for POV-Ray. +## +syntax "pov" "\.(pov|POV|povray|POVRAY)$" +color brightcyan "^[[:space:]]*#[[:space:]]*(declare)" +color brightyellow "\<(sphere|cylinder|translate|matrix|rotate|scale)\>" +color brightyellow "\<(orthographic|location|up|right|direction|clipped_by)\>" +color brightyellow "\<(fog_type|fog_offset|fog_alt|rgb|distance|transform)\>" +color brightred "^\<(texture)\>" +color brightred "\<(light_source|background)\>" +color brightred "\<(fog|object|camera)\>" +color green "(\{|\}|\(|\)|\;|\]|\[|`|\\|\$|<|>|!|=|&|\|)" +color brightmagenta "\<(union|group|subgroup)\>" +## Comment highlighting +color brightblue "//.*" +color brightblue start="/\*" end="\*/" diff --git a/share/nano/python.nanorc b/share/nano/python.nanorc new file mode 100644 index 0000000..4280274 --- /dev/null +++ b/share/nano/python.nanorc @@ -0,0 +1,10 @@ +## Here is an example for Python. +## +syntax "python" "\.py$" +header "^#!.*/python[-0-9._]*" +icolor brightblue "def [0-9A-Z_]+" +color brightcyan "\<(and|as|assert|break|class|continue|def|del|elif|else|except|exec|finally|for|from|global|if|import|in|is|lambda|not|or|pass|print|raise|return|try|while|with|yield)\>" +color brightgreen "['][^']*[^\\][']" "[']{3}.*[^\\][']{3}" +color brightgreen "["][^"]*[^\\]["]" "["]{3}.*[^\\]["]{3}" +color brightgreen start=""""[^"]" end=""""" start="'''[^']" end="'''" +color brightred "#.*$" diff --git a/share/nano/ruby.nanorc b/share/nano/ruby.nanorc new file mode 100644 index 0000000..b30b229 --- /dev/null +++ b/share/nano/ruby.nanorc @@ -0,0 +1,31 @@ +## Here is an example for Ruby. +## +syntax "ruby" "\.rb$" +header "^#!.*/ruby[-0-9._]*" +## Asciibetical list of reserved words +color yellow "\<(BEGIN|END|alias|and|begin|break|case|class|def|defined\?|do|else|elsif|end|ensure|false|for|if|in|module|next|nil|not|or|redo|rescue|retry|return|self|super|then|true|undef|unless|until|when|while|yield)\>" +## Constants +color brightblue "(\$|@|@@)?\<[A-Z]+[0-9A-Z_a-z]*" +## Ruby "symbols" +icolor magenta "([ ]|^):[0-9A-Z_]+\>" +## Some unique things we want to stand out +color brightyellow "\<(__FILE__|__LINE__)\>" +## Regular expressions +color brightmagenta "/([^/]|(\\/))*/[iomx]*" "%r\{([^}]|(\\}))*\}[iomx]*" +## Shell command expansion is in `backticks` or like %x{this}. These are +## "double-quotish" (to use a perlism). +color brightblue "`[^`]*`" "%x\{[^}]*\}" +## Strings, double-quoted +color green ""([^"]|(\\"))*"" "%[QW]?\{[^}]*\}" "%[QW]?\([^)]*\)" "%[QW]?<[^>]*>" "%[QW]?\[[^]]*\]" "%[QW]?\$[^$]*\$" "%[QW]?\^[^^]*\^" "%[QW]?![^!]*!" +## Expression substitution. These go inside double-quoted strings, +## "like #{this}". +color brightgreen "#\{[^}]*\}" +## Strings, single-quoted +color green "'([^']|(\\'))*'" "%[qw]\{[^}]*\}" "%[qw]\([^)]*\)" "%[qw]<[^>]*>" "%[qw]\[[^]]*\]" "%[qw]\$[^$]*\$" "%[qw]\^[^^]*\^" "%[qw]![^!]*!" +## Comments +color cyan "#[^{].*$" "#$" +color brightcyan "##[^{].*$" "##$" +## "Here" docs +color green start="<<-?'?EOT'?" end="^EOT" +## Some common markers +color brightcyan "(XXX|TODO|FIXME|\?\?\?)" diff --git a/share/nano/sh.nanorc b/share/nano/sh.nanorc new file mode 100644 index 0000000..ecce22e --- /dev/null +++ b/share/nano/sh.nanorc @@ -0,0 +1,14 @@ +## Here is an example for Bourne shell scripts. +## +syntax "sh" "\.sh$" +header "^#!.*/(ba|k|pdk)?sh[-0-9_]*" +icolor brightgreen "^[0-9A-Z_]+\(\)" +color green "\<(case|do|done|elif|else|esac|exit|fi|for|function|if|in|local|read|return|select|shift|then|time|until|while)\>" +color green "(\{|\}|\(|\)|\;|\]|\[|`|\\|\$|<|>|!|=|&|\|)" +color green "-[Ldefgruwx]\>" +color green "-(eq|ne|gt|lt|ge|le|s|n|z)\>" +color brightblue "\<(cat|cd|chmod|chown|cp|echo|env|export|grep|install|let|ln|make|mkdir|mv|rm|sed|set|tar|touch|umask|unset)\>" +icolor brightred "\$\{?[0-9A-Z_!@#$*?-]+\}?" +color cyan "(^|[[:space:]])#.*$" +color brightyellow ""(\\.|[^"])*"" "'(\\.|[^'])*'" +color ,green "[[:space:]]+$" diff --git a/share/nano/tcl.nanorc b/share/nano/tcl.nanorc new file mode 100644 index 0000000..ad3401f --- /dev/null +++ b/share/nano/tcl.nanorc @@ -0,0 +1,16 @@ +syntax "tcl" "\.tcl$" + +## Standard Tcl [info commands] +color green "\<(after|append|array|auto_execok|auto_import|auto_load|auto_load_index|auto_qualify|binary|break|case|catch|cd|clock|close|concat|continue|encoding|eof|error|eval|exec|exit|expr|fblocked|fconfigure|fcopy|file|fileevent|flush|for|foreach|format|gets|glob|global|history|if|incr|info|interp|join|lappend|lindex|linsert|list|llength|load|lrange|lreplace|lsearch|lset|lsort|namespace|open|package|pid|puts|pwd|read|regexp|regsub|rename|return|scan|seek|set|socket|source|split|string|subst|switch|tclLog|tell|time|trace|unknown|unset|update|uplevel|upvar|variable|vwait|while)\>" +## Basic Tcl sub commands. +color green "\<(array anymore|array donesearch|array exists|array get|array names|array nextelement|array set|array size|array startsearch|array statistics|array unset)\>" +color green "\<(string bytelength|string compare|string equal|string first|string index|string is|string last|string length|string map|string match|string range|string repeat|string replace|string to|string tolower|string totitle|string toupper|string trim|string trimleft|string trimright|string will|string wordend|string wordstart)\>" +## Extended TclX [info commands] +color green "\<(alarm|auto_load_pkg|bsearch|catclose|catgets|catopen|ccollate|cconcat|cequal|chgrp|chmod|chown|chroot|cindex|clength|cmdtrace|commandloop|crange|csubstr|ctoken|ctype|dup|echo|execl|fcntl|flock|fork|fstat|ftruncate|funlock|host_info|id|infox|keyldel|keylget|keylkeys|keylset|kill|lassign|lcontain|lempty|lgets|link|lmatch|loadlibindex|loop|lvarcat|lvarpop|lvarpush|max|min|nice|pipe|profile|random|readdir|replicate|scancontext|scanfile|scanmatch|select|server_accept|server_create|signal|sleep|sync|system|tclx_findinit|tclx_fork|tclx_load_tndxs|tclx_sleep|tclx_system|tclx_wait|times|translit|try_eval|umask|wait)\>" +## Syntax. +color brightblue "proc[[:space:]]" "(\{|\})" +color green "(\(|\)|\;|`|\\|\$|<|>|!|=|&|\|)" +color brightyellow ""(\\.|[^"])*"" "'(\\.|[^'])*'" +icolor brightred "\$\{?[0-9A-Z_!@#$*?-]+\}?" +color ,green "[[:space:]]+$" +color ,magenta "^[[:space:]]*#.*" diff --git a/share/nano/tex.nanorc b/share/nano/tex.nanorc new file mode 100644 index 0000000..23ca3a4 --- /dev/null +++ b/share/nano/tex.nanorc @@ -0,0 +1,6 @@ +## Here is a short example for TeX files. +## +syntax "tex" "\.tex$" +icolor green "\\.|\\[A-Z]*" +color magenta "[{}]" +color blue "(^|[^\])%.*" diff --git a/share/nano/xml.nanorc b/share/nano/xml.nanorc new file mode 100644 index 0000000..1f68c05 --- /dev/null +++ b/share/nano/xml.nanorc @@ -0,0 +1,9 @@ +## Here is an example for xml files. +## +syntax "xml" "\.([jrs]html?|sgml?|xml|xslt?)$" +color green start="<" end=">" +color cyan "<[^> ]+" +color cyan ">" +color yellow start="<!DOCTYPE" end="[/]?>" +color yellow start="<!--" end="-->" +color red "&[^;]*;" |