commit 83f26a7cada19d52123f352748318dc4e74f669d Author: Marin Marusic Date: Tue Feb 9 00:52:38 2016 +0100 Initial commit diff --git a/Dockerfile.nanorc b/Dockerfile.nanorc new file mode 100644 index 0000000..435b52c --- /dev/null +++ b/Dockerfile.nanorc @@ -0,0 +1,26 @@ +## Syntax highlighting for Dockerfiles +syntax "Dockerfile" "Dockerfile[^/]*$" "\.dockerfile$" + +## Keywords +icolor red "^(FROM|MAINTAINER|RUN|CMD|LABEL|EXPOSE|ENV|ADD|COPY|ENTRYPOINT|VOLUME|USER|WORKDIR|ONBUILD)[[:space:]]" + +## Brackets & parenthesis +color brightgreen "(\(|\)|\[|\])" + +## Double ampersand +color brightmagenta "&&" + +## Comments +icolor cyan "^[[:space:]]*#.*$" + +## Blank space at EOL +color ,green "[[:space:]]+$" + +## Strings, single-quoted +color brightwhite "'([^']|(\\'))*'" "%[qw]\{[^}]*\}" "%[qw]\([^)]*\)" "%[qw]<[^>]*>" "%[qw]\[[^]]*\]" "%[qw]\$[^$]*\$" "%[qw]\^[^^]*\^" "%[qw]![^!]*!" + +## Strings, double-quoted +color brightwhite ""([^"]|(\\"))*"" "%[QW]?\{[^}]*\}" "%[QW]?\([^)]*\)" "%[QW]?<[^>]*>" "%[QW]?\[[^]]*\]" "%[QW]?\$[^$]*\$" "%[QW]?\^[^^]*\^" "%[QW]?![^!]*!" + +## Single and double quotes +color brightyellow "('|\")" diff --git a/Readme.rst b/Readme.rst new file mode 100644 index 0000000..d2d98ac --- /dev/null +++ b/Readme.rst @@ -0,0 +1,30 @@ +*************************************** +Improved Nano Syntax Highlighting Files +*************************************** + +This repository holds ``{lang}.nanorc`` files that have improved +definitions of syntax highlighting for various languages. +These should be placed inside of the ``~/.nano/`` directory. +Alternatively:: + + git clone git@github.com:scopatz/nanorc.git ~/.nano + +*Note - if you have any issues, alternatively use:: + + git clone https://github.com/scopatz/nanorc.git ~/.nano + + +Once there you should add the languages you want to your +nano configuration file ``~/.nanorc``. For example:: + + ## C/C++ + include "~/.nano/c.nanorc" + +You can also append the contents of ``~/.nano/nanorc`` into your +``~/.nanorc`` to include all languages:: + + cat ~/.nano/nanorc >> ~/.nanorc + +Finally, you can run an automatic installer using the following code:: + + $ curl https://raw.githubusercontent.com/scopatz/nanorc/master/install.sh | sh diff --git a/apacheconf.nanorc b/apacheconf.nanorc new file mode 100644 index 0000000..d95d15b --- /dev/null +++ b/apacheconf.nanorc @@ -0,0 +1,44 @@ +# Apache files +syntax "apacheconf" "httpd\.conf|mime\.types|vhosts\.d\\*|\.htaccess" +color yellow ".+" +color brightcyan "(AcceptMutex|AcceptPathInfo|AccessFileName|Action|AddAlt|AddAltByEncoding|AddAltByType|AddCharset|AddDefaultCharset|AddDescription|AddEncoding)" +color brightcyan "(AddHandler|AddIcon|AddIconByEncoding|AddIconByType|AddInputFilter|AddLanguage|AddModuleInfo|AddOutputFilter|AddOutputFilterByType|AddType|Alias|AliasMatch)" +color brightcyan "(Allow|AllowCONNECT|AllowEncodedSlashes|AllowOverride|Anonymous|Anonymous_Authoritative|Anonymous_LogEmail|Anonymous_MustGiveEmail|Anonymous_NoUserID)" +color brightcyan "(Anonymous_VerifyEmail|AssignUserID|AuthAuthoritative|AuthDBMAuthoritative|AuthDBMGroupFile|AuthDBMType|AuthDBMUserFile|AuthDigestAlgorithm)" +color brightcyan "(AuthDigestDomain|AuthDigestFile|AuthDigestGroupFile|AuthDigestNcCheck|AuthDigestNonceFormat|AuthDigestNonceLifetime|AuthDigestQop|AuthDigestShmemSize)" +color brightcyan "(AuthGroupFile|AuthLDAPAuthoritative|AuthLDAPBindDN|AuthLDAPBindPassword|AuthLDAPCharsetConfig|AuthLDAPCompareDNOnServer|AuthLDAPDereferenceAliases)" +color brightcyan "(AuthLDAPEnabled|AuthLDAPFrontPageHack|AuthLDAPGroupAttribute|AuthLDAPGroupAttributeIsDN|AuthLDAPRemoteUserIsDN|AuthLDAPUrl|AuthName|AuthType|AuthUserFile)" +color brightcyan "(BrowserMatch|BrowserMatchNoCase|BS2000Account|BufferedLogs|CacheDefaultExpire|CacheDirLength|CacheDirLevels|CacheDisable|CacheEnable|CacheExpiryCheck)" +color brightcyan "(CacheFile|CacheForceCompletion|CacheGcClean|CacheGcDaily|CacheGcInterval|CacheGcMemUsage|CacheGcUnused|CacheIgnoreCacheControl|CacheIgnoreHeaders)" +color brightcyan "(CacheIgnoreNoLastMod|CacheLastModifiedFactor|CacheMaxExpire|CacheMaxFileSize|CacheMinFileSize|CacheNegotiatedDocs|CacheRoot|CacheSize|CacheTimeMargin)" +color brightcyan "(CGIMapExtension|CharsetDefault|CharsetOptions|CharsetSourceEnc|CheckSpelling|ChildPerUserID|ContentDigest|CookieDomain|CookieExpires|CookieLog|CookieName)" +color brightcyan "(CookieStyle|CookieTracking|CoreDumpDirectory|CustomLog|Dav|DavDepthInfinity|DavLockDB|DavMinTimeout|DefaultIcon|DefaultLanguage|DefaultType)" +color brightcyan "(DeflateBufferSize|DeflateCompressionLevel|DeflateFilterNote|DeflateMemLevel|DeflateWindowSize|Deny|Directory|DirectoryIndex|DirectoryMatch|DirectorySlash)" +color brightcyan "(DocumentRoot|DumpIOInput|DumpIOOutput|EnableExceptionHook|EnableMMAP|EnableSendfile|ErrorDocument|ErrorLog|Example|ExpiresActive|ExpiresByType)" +color brightcyan "(ExpiresDefault|ExtendedStatus|ExtFilterDefine|ExtFilterOptions|FileETag|Files|FilesMatch|ForceLanguagePriority|ForceType|ForensicLog|Group|Header)" +color brightcyan "(HeaderName|HostnameLookups|IdentityCheck|IfDefine|IfModule|IfVersion|ImapBase|ImapDefault|ImapMenu|Include|IndexIgnore|IndexOptions|IndexOrderDefault)" +color brightcyan "(ISAPIAppendLogToErrors|ISAPIAppendLogToQuery|ISAPICacheFile|ISAPIFakeAsync|ISAPILogNotSupported|ISAPIReadAheadBuffer|KeepAlive|KeepAliveTimeout)" +color brightcyan "(LanguagePriority|LDAPCacheEntries|LDAPCacheTTL|LDAPConnectionTimeout|LDAPOpCacheEntries|LDAPOpCacheTTL|LDAPSharedCacheFile|LDAPSharedCacheSize)" +color brightcyan "(LDAPTrustedCA|LDAPTrustedCAType|Limit|LimitExcept|LimitInternalRecursion|LimitRequestBody|LimitRequestFields|LimitRequestFieldSize|LimitRequestLine)" +color brightcyan "(LimitXMLRequestBody|Listen|ListenBackLog|LoadFile|LoadModule|Location|LocationMatch|LockFile|LogFormat|LogLevel|MaxClients|MaxKeepAliveRequests)" +color brightcyan "(MaxMemFree|MaxRequestsPerChild|MaxRequestsPerThread|MaxSpareServers|MaxSpareThreads|MaxThreads|MaxThreadsPerChild|MCacheMaxObjectCount|MCacheMaxObjectSize)" +color brightcyan "(MCacheMaxStreamingBuffer|MCacheMinObjectSize|MCacheRemovalAlgorithm|MCacheSize|MetaDir|MetaFiles|MetaSuffix|MimeMagicFile|MinSpareServers|MinSpareThreads)" +color brightcyan "(MMapFile|ModMimeUsePathInfo|MultiviewsMatch|NameVirtualHost|NoProxy|NumServers|NWSSLTrustedCerts|NWSSLUpgradeable|Options|Order|PassEnv|PidFile)" +color brightcyan "(ProtocolEcho|Proxy|ProxyBadHeader|ProxyBlock|ProxyDomain|ProxyErrorOverride|ProxyIOBufferSize|ProxyMatch|ProxyMaxForwards|ProxyPass|ProxyPassReverse)" +color brightcyan "(ProxyPreserveHost|ProxyReceiveBufferSize|ProxyRemote|ProxyRemoteMatch|ProxyRequests|ProxyTimeout|ProxyVia|ReadmeName|Redirect|RedirectMatch)" +color brightcyan "(RedirectPermanent|RedirectTemp|RemoveCharset|RemoveEncoding|RemoveHandler|RemoveInputFilter|RemoveLanguage|RemoveOutputFilter|RemoveType|RequestHeader)" +color brightcyan "(Require|RewriteBase|RewriteCond|RewriteEngine|RewriteLock|RewriteLog|RewriteLogLevel|RewriteMap|RewriteOptions|RewriteRule|RLimitCPU|RLimitMEM|RLimitNPROC)" +color brightcyan "(Satisfy|ScoreBoardFile|Script|ScriptAlias|ScriptAliasMatch|ScriptInterpreterSource|ScriptLog|ScriptLogBuffer|ScriptLogLength|ScriptSock|SecureListen)" +color brightcyan "(SendBufferSize|ServerAdmin|ServerAlias|ServerLimit|ServerName|ServerPath|ServerRoot|ServerSignature|ServerTokens|SetEnv|SetEnvIf|SetEnvIfNoCase|SetHandler)" +color brightcyan "(SetInputFilter|SetOutputFilter|SSIEndTag|SSIErrorMsg|SSIStartTag|SSITimeFormat|SSIUndefinedEcho|SSLCACertificateFile|SSLCACertificatePath)" +color brightcyan "(SSLCARevocationFile|SSLCARevocationPath|SSLCertificateChainFile|SSLCertificateFile|SSLCertificateKeyFile|SSLCipherSuite|SSLEngine|SSLMutex|SSLOptions)" +color brightcyan "(SSLPassPhraseDialog|SSLProtocol|SSLProxyCACertificateFile|SSLProxyCACertificatePath|SSLProxyCARevocationFile|SSLProxyCARevocationPath|SSLProxyCipherSuite)" +color brightcyan "(SSLProxyEngine|SSLProxyMachineCertificateFile|SSLProxyMachineCertificatePath|SSLProxyProtocol|SSLProxyVerify|SSLProxyVerifyDepth|SSLRandomSeed|SSLRequire)" +color brightcyan "(SSLRequireSSL|SSLSessionCache|SSLSessionCacheTimeout|SSLUserName|SSLVerifyClient|SSLVerifyDepth|StartServers|StartThreads|SuexecUserGroup|ThreadLimit)" +color brightcyan "(ThreadsPerChild|ThreadStackSize|TimeOut|TraceEnable|TransferLog|TypesConfig|UnsetEnv|UseCanonicalName|User|UserDir|VirtualDocumentRoot)" +color brightcyan "(VirtualDocumentRootIP|VirtualHost|VirtualScriptAlias|VirtualScriptAliasIP|Win32DisableAcceptEx|XBitHack)" +color yellow "<[^>]+>" +color brightcyan ")" +color green "\"(\\.|[^\"])*\"" +color white "#.*" diff --git a/arduino.nanorc b/arduino.nanorc new file mode 100644 index 0000000..3cddedb --- /dev/null +++ b/arduino.nanorc @@ -0,0 +1,116 @@ + +## FILENAME: arduino.nanorc +## +## DESCRIPTION: The arduino.nanorc syntax files allows syntax highlighting +## for Arduino sketch files in the GNU nano text editor. +## +## Maintainer: Nicholas Wilde +## Version: 0.1 +## DATE: 06/23/2011 +## +## HOMEPAGE: http://code.google.com/p/arduino-nano-editor-syntax/ +## +## COMMENTS: -Most of the code was taken from the c.nanorc code found with +## GNU nano 2.2.6. +## -Direction was taken from the arduino vim syntax code by johannes +## +## -Tested on Ubuntu Server 11.04 Natty Narwhal and GNU nano 2.2.6 +## +## DIRECTIONS: For Ubuntu Server 11.04 Natty Narwhal: +## -Move this file to the nano directory +## /usr/share/nano/ +## -Add arduino.nanorc reference to the nanorc settings file +## /etc/nanorc +## ... +## ## Arduino +## /usr/share/nano/arduino.nanorc +## ... + +syntax "ino" "\.?ino$" + +## +color brightred "\<[A-Z_][0-9A-Z_]+\>" + +## +color green "\<((s?size)|((u_?)?int(8|16|32|64|ptr)))_t\>" + +## Constants +icolor green "\<(HIGH|LOW|INPUT|OUTPUT)\>" + +## Serial Print +icolor red "\<(DEC|BIN|HEX|OCT|BYTE)\>" + +## PI Constants +icolor green "\<(PI|HALF_PI|TWO_PI)\>" + +## ShiftOut +icolor green "\<(LSBFIRST|MSBFIRST)\>" + +## Attach Interrupt +icolor green "\<(CHANGE|FALLING|RISING)\>" + +## Analog Reference +icolor green "\<(DEFAULT|EXTERNAL|INTERNAL|INTERNAL1V1|INTERNAL2V56)\>" + +## === FUNCTIONS === ## + +## Data Types +color green "\<(boolean|byte|char|float|int|long|word)\>" + +## Control Structions +color brightyellow "\<(case|class|default|do|double|else|false|for|if|new|null|private|protected|public|short|signed|static|String|switch|this|throw|try|true|unsigned|void|while)\>" +color magenta "\<(goto|continue|break|return)\>" + +## Math +color brightyellow "\<(abs|acos|asin|atan|atan2|ceil|constrain|cos|degrees|exp|floor|log|map|max|min|radians|random|randomSeed|round|sin|sq|sqrt|tan)\>" + +## Bits & Bytes +color brightyellow "\<(bitRead|bitWrite|bitSet|bitClear|bit|highByte|lowByte)\>" + +## Analog I/O +color brightyellow "\<(analogReference|analogRead|analogWrite)\>" + +## External Interrupts +color brightyellow "\<(attachInterrupt|detachInterrupt)\>" + +## Time +color brightyellow "\<(delay|delayMicroseconds|millis|micros)\>" + +## Digital I/O +color brightyellow "\<(pinMode|digitalWrite|digitalRead)\>" + +## Interrupts +color brightyellow "\<(interrupts|noInterrupts)\>" + +## Advanced I/O +color brightyellow "\<(noTone|pulseIn|shiftIn|shiftOut|tone)\>" + +## Serial +color magenta "\<(Serial|Serial1|Serial2|Serial3|begin|end|peek|read|print|println|available|flush)\>" + +## Structure +color brightyellow "\<(setup|loop)\>" + +## +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="^(\\.|[^"])*"" + +## Comments +color brightblue "//.*" +color brightblue start="/\*" end="\*/" + +## Trailing whitespace +color ,green "[[:space:]]+$" diff --git a/asciidoc.nanorc b/asciidoc.nanorc new file mode 100644 index 0000000..de486ed --- /dev/null +++ b/asciidoc.nanorc @@ -0,0 +1,47 @@ +syntax "asciidoc" "\.(asc|asciidoc|adoc)$" + +# main header +color red "^====+$" +# h1 +color red "^==[[:space:]].*$" +color red "^----+$" +# h2 +color magenta "^===[[:space:]].*$" +color magenta "^~~~~+$" +# h4 +color green "^====[[:space:]].*$" +color green "^\^\^\^\^+$" +# h5 +color brightblue "^=====[[:space:]].*$" +color brightblue "^\+\+\+\++$" + +# attributes +color brightgreen ":.*:" +color brightred "\{[a-z0-9]*\}" +color red "\\\{[a-z0-9]*\}" +color red "\+\+\+\{[a-z0-9]*\}\+\+\+" + +# Paragraph Title +color yellow "^\..*$" + +# source +color magenta "^\[(source,.+|NOTE|TIP|IMPORTANT|WARNING|CAUTION)\]" + +# Other markup +color yellow ".*[[:space:]]\+$" +color yellow "_[^_]+_" +color yellow "\*[^\*]+\*" +color yellow "\+[^\+]+\+" +color yellow "`[^`]+`" +color yellow "\^[^\^]+\^" +color yellow "~[^~]+~" +color yellow "'[^']+'" + +color cyan "`{1,2}[^']+'{1,2}" + +# bullets +color brightmagenta "^[[:space:]]*[\*\.-]{1,5}[[:space:]]" + +# anchors +color brightwhite "\[\[.*\]\]" +color brightwhite "<<.*>>" diff --git a/asm.nanorc b/asm.nanorc new file mode 100644 index 0000000..e94ee90 --- /dev/null +++ b/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/awk.nanorc b/awk.nanorc new file mode 100644 index 0000000..e037b65 --- /dev/null +++ b/awk.nanorc @@ -0,0 +1,25 @@ +syntax "awk" "\.awk$" +header "^#!.*bin/(env +)?awk( |$)" + +color brightyellow "\$[A-Za-z0-9_!@#$*?-]+" +color brightyellow "\<(ARGC|ARGIND|ARGV|BINMODE|CONVFMT|ENVIRON|ERRNO|FIELDWIDTHS)\>" +color brightyellow "\<(FILENAME|FNR|FS|IGNORECASE|LINT|NF|NR|OFMT|OFS|ORS)\>" +color brightyellow "\<(PROCINFO|RS|RT|RSTART|RLENGTH|SUBSEP|TEXTDOMAIN)\>" +color brightblue "\<(function|extension|BEGIN|END)\>" +color red "[-+*/%^|!=&<>?;:]|\\|\[|\]" +color cyan "\<(for|if|while|do|else|in|delete|exit)\>" +color cyan "\<(break|continue|return)\>" +color brightblue "\<(close|getline|next|nextfile|print|printf|system|fflush)\>" +color brightblue "\<(atan2|cos|exp|int|log|rand|sin|sqrt|srand)\>" +color brightblue "\<(asort|asorti|gensub|gsub|index|length|match)\>" +color brightblue "\<(split|sprintf|strtonum|sub|substr|tolower|toupper)\>" +color brightblue "\<(mktime|strftime|systime)\>" +color brightblue "\<(and|compl|lshift|or|rshift|xor)\>" +color brightblue "\<(bindtextdomain|dcgettext|dcngettext)\>" +color magenta "/.*[^\]/" +color yellow ""(\\.|[^"])*"|'(\\.|[^'])*'" +color magenta "\\." +color brightblack "(^|[[:space:]])#([^{].*)?$" +color brightwhite,cyan "TODO:?" +color ,green "[[:space:]]+$" +color ,red " + +| + +" diff --git a/c.nanorc b/c.nanorc new file mode 100644 index 0000000..ea08fb3 --- /dev/null +++ b/c.nanorc @@ -0,0 +1,39 @@ +## Here is an example for C/C++. +## +syntax "c" "\.(c(c|pp|xx)?|C)$" "\.(h(h|pp|xx)?|H)$" "\.ii?$" "\.(def)$" +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 green "\<(for|if|while|do|else|case|default|switch)\>" +color green "\<(try|throw|catch|operator|new|delete)\>" +color brightmagenta "\<(goto|continue|break|return)\>" +color brightcyan "^[[:space:]]*#[[:space:]]*(define|include|(un|ifn?)def|endif|el(if|se)|if|warning|error)" +color brightmagenta "'([^'\]|(\\["'abfnrtv\\]))'" "'\\(([0-3]?[0-7]{1,2}))'" "'\\x[0-9A-Fa-f]{1,2}'" + +## +## GCC builtins +color green "__attribute__[[:space:]]*\(\([^)]*\)\)" "__(aligned|asm|builtin|hidden|inline|packed|restrict|section|typeof|weak)__" + +#Operator Color +color yellow "[.:;,+*|=!\%]" "<" ">" "/" "-" "&" + +#Parenthetical Color +color magenta "[(){}]" "\[" "\]" + + +## +## 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 cyan "<[^= ]*>" ""(\\.|[^"])*"" +## +## This string is VERY resource intensive! +#color cyan start=""(\\.|[^"])*\\[[:space:]]*$" end="^(\\.|[^"])*"" + +## Comment highlighting +color brightblue "//.*" +color brightblue start="/\*" end="\*/" + +## Trailing whitespace +#color ,green "[[:space:]]+$" diff --git a/cmake.nanorc b/cmake.nanorc new file mode 100644 index 0000000..7dd6c18 --- /dev/null +++ b/cmake.nanorc @@ -0,0 +1,22 @@ +## 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 "\<(COPY|NOT|COMMAND|PROPERTY|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)" + +#String Color +color cyan "['][^']*[^\\][']" "[']{3}.*[^\\][']{3}" +color cyan "["][^"]*[^\\]["]" "["]{3}.*[^\\]["]{3}" + +icolor brightred start="\$(\{|ENV\{)" end="\}" +color magenta "\<(APPLE|UNIX|WIN32|CYGWIN|BORLAND|MINGW|MSVC(_IDE|60|71|80|90)?)\>" + +icolor brightblue "^([[:space:]]*)?#.*" +icolor brightblue "[[:space:]]#.*" diff --git a/coffeescript.nanorc b/coffeescript.nanorc new file mode 100644 index 0000000..cf75b6c --- /dev/null +++ b/coffeescript.nanorc @@ -0,0 +1,16 @@ +syntax "coffeescript" "\.coffee$" +header "^#!.*/(env +)?coffee" + +color red "[!&|=/*+-<>]|\<(and|or|is|isnt|not)\>" +color brightblue "[A-Za-z_][A-Za-z0-9_]*:[[:space:]]*(->|\()" "->" +color brightblue "[()]" +color cyan "\<(for|of|continue|break|isnt|null|unless|this|else|if|return)\>" +color cyan "\<(try|catch|finally|throw|new|delete|typeof|in|instanceof)\>" +color cyan "\<(debugger|switch|while|do|class|extends|super)\>" +color cyan "\<(undefined|then|unless|until|loop|of|by|when)\>" +color brightcyan "\<(true|false|yes|no|on|off)\>" +color brightyellow "@[A-Za-z0-9_]*" +color yellow ""(\\.|[^"])*"|'(\\.|[^'])*'" +color brightblack "(^|[[:space:]])#([^{].*)?$" +color ,green "[[:space:]]+$" +color ,red " + +| + +" diff --git a/colortest.nanorc b/colortest.nanorc new file mode 100644 index 0000000..bf48aaf --- /dev/null +++ b/colortest.nanorc @@ -0,0 +1,17 @@ +syntax "colortest" "ColorTest$" + +color black "\" + +color red "\" +color green "\" +color yellow "\" +color blue "\" +color magenta "\" +color cyan "\" + +color brightred "\" +color brightgreen "\" +color brightyellow "\" +color brightblue "\" +color brightmagenta "\" +color brightcyan "\" diff --git a/conf.nanorc b/conf.nanorc new file mode 100644 index 0000000..2dab29f --- /dev/null +++ b/conf.nanorc @@ -0,0 +1,10 @@ +## Here is an example for nanorc files. +## +syntax "conf" "\.c[o]?nf$" +## Possible errors and parameters +## Strings +icolor white ""(\\.|[^"])*"" +## Comments +icolor brightblue "^[[:space:]]*#.*$" +icolor cyan "^[[:space:]]*##.*$" + diff --git a/conky.nanorc b/conky.nanorc new file mode 100644 index 0000000..6150c4f --- /dev/null +++ b/conky.nanorc @@ -0,0 +1,18 @@ +## +## Syntax highlighting for conkyrc files. +## +## +syntax "conky" "(\.*conkyrc.*$|conky.conf)" + +## Configuration items +color green "\<(alignment|append_file|background|border_inner_margin|border_outer_margin|border_width|color0|color1|color2|color3|color4|color5|color6|color7|color8|color9|colorN|cpu_avg_samples|default_bar_height|default_bar_width|default_color|default_gauge_height|default_gauge_width|default_graph_height|default_graph_width|default_outline_color|default_shade_color|diskio_avg_samples|display|double_buffer|draw_borders|draw_graph_borders|draw_outline|draw_shades|extra_newline|font|format_human_readable|gap_x|gap_y|http_refresh|if_up_strictness|imap|imlib_cache_flush_interval|imlib_cache_size|lua_draw_hook_post|lua_draw_hook_pre|lua_load|lua_shutdown_hook|lua_startup_hook|mail_spool|max_port_monitor_connections|max_text_width|max_user_text|maximum_width|minimum_height|minimum_width|mpd_host|mpd_password|mpd_port|music_player_interval|mysql_host|mysql_port|mysql_user|mysql_password|mysql_db|net_avg_samples|no_buffers|nvidia_display|out_to_console|out_to_http|out_to_ncurses|out_to_stderr|out_to_x|override_utf8_locale|overwrite_file|own_window|own_window_class|own_window_colour|own_window_hints|own_window_title|own_window_transparent|own_window_type|pad_percents|pop3|sensor_device|short_units|show_graph_range|show_graph_scale|stippled_borders|temperature_unit|template|template0|template1|template2|template3|template4|template5|template6|template7|template8|template9|text|text_buffer_size|times_in_seconds|top_cpu_separate|top_name_width|total_run_times|update_interval|update_interval_on_battery|uppercase|use_spacer|use_xft|xftalpha|xftfont)\>" + +## Configuration item constants +color yellow "\<(above|below|bottom_left|bottom_right|bottom_middle|desktop|dock|no|none|normal|override|skip_pager|skip_taskbar|sticky|top_left|top_right|top_middle|middle_left|middle_right|middle_middle|undecorated|yes)\>" + +## Variables +color brightblue "\<(acpiacadapter|acpifan|acpitemp|addr|addrs|alignc|alignr|apcupsd|apcupsd_cable|apcupsd_charge|apcupsd_lastxfer|apcupsd_linev|apcupsd_load|apcupsd_loadbar|apcupsd_loadgauge|apcupsd_loadgraph|apcupsd_model|apcupsd_name|apcupsd_status|apcupsd_temp|apcupsd_timeleft|apcupsd_upsmode|apm_adapter|apm_battery_life|apm_battery_time|audacious_bar|audacious_bitrate|audacious_channels|audacious_filename|audacious_frequency|audacious_length|audacious_length_seconds|audacious_main_volume|audacious_playlist_length|audacious_playlist_position|audacious_position|audacious_position_seconds|audacious_status|audacious_title|battery|battery_bar|battery_percent|battery_short|battery_time|blink|bmpx_album|bmpx_artist|bmpx_bitrate|bmpx_title|bmpx_track|bmpx_uri|buffers|cached|cmdline_to_pid|color|color0|color1|color2|color3|color4|color5|color6|color7|color8|color9|combine|conky_build_arch|conky_build_date|conky_version|cpu|cpubar|cpugauge|cpugraph|curl|desktop|desktop_name|desktop_number|disk_protect|diskio|diskio_read|diskio_write|diskiograph|diskiograph_read|diskiograph_write|distribution|downspeed|downspeedf|downspeedgraph|draft_mails|else|endif|entropy_avail|entropy_bar|entropy_perc|entropy_poolsize|eval|eve|exec|execbar|execgauge|execgraph|execi|execibar|execigauge|execigraph|execp|execpi|flagged_mails|font|format_time|forwarded_mails|freq|freq_g|fs_bar|fs_bar_free|fs_free|fs_free_perc|fs_size|fs_type|fs_used|fs_used_perc|goto|gw_iface|gw_ip|hddtemp|head|hr|hwmon|i2c|i8k_ac_status|i8k_bios|i8k_buttons_status|i8k_cpu_temp|i8k_left_fan_rpm|i8k_left_fan_status|i8k_right_fan_rpm|i8k_right_fan_status|i8k_serial|i8k_version|ibm_brightness|ibm_fan|ibm_temps|ibm_volume|ical|iconv_start|iconv_stop|if_empty|if_existing|if_gw|if_match|if_mixer_mute|if_mounted|if_mpd_playing|if_running|if_smapi_bat_installed|if_up|if_updatenr|if_xmms2_connected|image|imap_messages|imap_unseen|ioscheduler|irc|kernel|laptop_mode|lines|loadavg|loadgraph|lua|lua_bar|lua_gauge|lua_graph|lua_parse|machine|mails|mboxscan|mem|memwithbuffers|membar|memwithbuffersbar|memeasyfree|memfree|memgauge|memgraph|memmax|memperc|mixer|mixerbar|mixerl|mixerlbar|mixerr|mixerrbar|moc_album|moc_artist|moc_bitrate|moc_curtime|moc_file|moc_rate|moc_song|moc_state|moc_timeleft|moc_title|moc_totaltime|monitor|monitor_number|mpd_album|mpd_artist|mpd_bar|mpd_bitrate|mpd_elapsed|mpd_file|mpd_length|mpd_name|mpd_percent|mpd_random|mpd_repeat|mpd_smart|mpd_status|mpd_title|mpd_track|mpd_vol|mysql|nameserver|new_mails|nodename|nodename_short|no_update|nvidia|obsd_product|obsd_sensors_fan|obsd_sensors_temp|obsd_sensors_volt|obsd_vendor|offset|outlinecolor|pb_battery|pid_chroot|pid_cmdline|pid_cwd|pid_environ|pid_environ_list|pid_exe|pid_nice|pid_openfiles|pid_parent|pid_priority|pid_state|pid_state_short|pid_stderr|pid_stdin|pid_stdout|pid_threads|pid_thread_list|pid_time_kernelmode|pid_time_usermode|pid_time|pid_uid|pid_euid|pid_suid|pid_fsuid|pid_gid|pid_egid|pid_sgid|pid_fsgid|pid_read|pid_vmpeak|pid_vmsize|pid_vmlck|pid_vmhwm|pid_vmrss|pid_vmdata|pid_vmstk|pid_vmexe|pid_vmlib|pid_vmpte|pid_write|platform|pop3_unseen|pop3_used|processes|read_tcp|read_udp|replied_mails|rss|running_processes|running_threads|scroll|seen_mails|shadecolor|smapi|smapi_bat_bar|smapi_bat_perc|smapi_bat_power|smapi_bat_temp|sony_fanspeed|stippled_hr|stock|swap|swapbar|swapfree|swapmax|swapperc|sysname|tab|tail|tcp_ping|tcp_portmon|template0|template1|template2|template3|template4|template5|template6|template7|template8|template9|texeci|texecpi|threads|time|to_bytes|top|top_io|top_mem|top_time|totaldown|totalup|trashed_mails|tztime|gid_name|uid_name|unflagged_mails|unforwarded_mails|unreplied_mails|unseen_mails|updates|upspeed|upspeedf|upspeedgraph|uptime|uptime_short|user_names|user_number|user_terms|user_times|user_time|utime|voffset|voltage_mv|voltage_v|weather|wireless_ap|wireless_bitrate|wireless_essid|wireless_link_bar|wireless_link_qual|wireless_link_qual_max|wireless_link_qual_perc|wireless_mode|words|xmms2_album|xmms2_artist|xmms2_bar|xmms2_bitrate|xmms2_comment|xmms2_date|xmms2_duration|xmms2_elapsed|xmms2_genre|xmms2_id|xmms2_percent|xmms2_playlist|xmms2_size|xmms2_smart|xmms2_status|xmms2_timesplayed|xmms2_title|xmms2_tracknr|xmms2_url)\>" + +color brightblue "\$\{?[0-9A-Z_!@#$*?-]+\}?" +color cyan "(\{|\}|\(|\)|\;|\]|\[|`|\\|\$|<|>|!|=|&|\|)" +color brightred "^TEXT$" diff --git a/csharp.nanorc b/csharp.nanorc new file mode 100644 index 0000000..8c25d1d --- /dev/null +++ b/csharp.nanorc @@ -0,0 +1,26 @@ +syntax "c#" "\.cs$" + +# Class +color brightmagenta "class +[A-Za-z0-9]+ *((:) +[A-Za-z0-9.]+)?" + +# Annotation +color magenta "@[A-Za-z]+" + +color brightblue "[A-Za-z_][A-Za-z0-9_]*[[:space:]]*[()]" +color green "\<(bool|byte|sbyte|char|decimal|double|float|IntPtr|int|uint|long|ulong|object|short|ushort|string|base|this|var|void)\>" +color cyan "\<(alias|as|case|catch|checked|default|do|dynamic|else|finally|fixed|for|foreach|goto|if|is|lock|new|null|return|switch|throw|try|unchecked|while)\>" +color cyan "\<(abstract|async|class|const|delegate|enum|event|explicit|extern|get|implicit|in|internal|interface|namespace|operator|out|override|params|partial|private|protected|public|readonly|ref|sealed|set|sizeof|stackalloc|static|struct|typeof|unsafe|using|value|virtual|volatile|yield)\>" +# LINQ-only keywords (ones that cannot be used outside of a LINQ query - lots others can) +color cyan "\<(from|where|select|group|info|orderby|join|let|in|on|equals|by|ascending|descending)\>" +color brightred "\<(break|continue)\>" +color brightcyan "\<(true|false)\>" +color red "[-+/*=<>?:!~%&|]" +color blue "\<([0-9._]+|0x[A-Fa-f0-9_]+|0b[0-1_]+)[FL]?\>" +color yellow ""(\\.|[^"])*"|'(\\.|[^'])*'" +color magenta "\\([btnfr]|'|\"|\\)" +color magenta "\\u[A-Fa-f0-9]{4}" +color brightblack "(^|[[:space:]])//.*" +color brightblack start="/\*" end="\*/" +color brightwhite,cyan "TODO:?" +color ,green "[[:space:]]+$" +color ,red " + +| + +" diff --git a/css.nanorc b/css.nanorc new file mode 100644 index 0000000..d002ad6 --- /dev/null +++ b/css.nanorc @@ -0,0 +1,10 @@ +## Here is an example for css files. +## + +syntax "css" "\.(css|scss)$" +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/cython.nanorc b/cython.nanorc new file mode 100644 index 0000000..2e7b958 --- /dev/null +++ b/cython.nanorc @@ -0,0 +1,30 @@ +## Cython nanorc, based off of Python nanorc. +## +syntax "cython" "\.pyx$" "\.pxd$" "\.pyi$" +icolor brightred "def [ 0-9A-Z_]+" +icolor brightred "cpdef [0-9A-Z_]+\(.*\):" +icolor brightred "cdef cppclass [ 0-9A-Z_]+\(.*\):" + + + +# Python Keyword Color +color green "\<(and|as|assert|class|def|DEF|del|elif|ELIF|else|ELSE|except|exec|finally|for|from|global|if|IF|import|in|is|lambda|map|not|or|pass|print|raise|try|while|with|yield)\>" +color brightmagenta "\<(continue|break|return)\>" + +# Cython Keyword Color +color green "\<(cdef|cimport|cpdef|cppclass|ctypedef|extern|include|namespace|property|struct)\>" +color red "\<(bint|char|double|int|public|void|unsigned)\>" + +#Operator Color +color yellow "[.:;,+*|=!\%]" "<" ">" "/" "-" "&" + +#Parenthetical Color +color magenta "[(){}]" "\[" "\]" + +#String Color +color cyan "['][^']*[^\\][']" "[']{3}.*[^\\][']{3}" +color cyan "["][^"]*[^\\]["]" "["]{3}.*[^\\]["]{3}" +color cyan start=""""[^"]" end=""""" start="'''[^']" end="'''" + +# Comment Color +color brightblue "#.*$" diff --git a/dot.nanorc b/dot.nanorc new file mode 100644 index 0000000..ae4f4b0 --- /dev/null +++ b/dot.nanorc @@ -0,0 +1,8 @@ +syntax "dot" "\.(dot|gv)$" + +color cyan "\<(digraph|edge|graph|node|subgraph)\>" +color magenta "\<(arrowhead|arrowsize|arrowtail|bgcolor|center|color|constraint|decorateP|dir|distortion|fillcolor|fontcolor|fontname|fontsize|headclip|headlabel|height|labelangle|labeldistance|labelfontcolor|labelfontname|labelfontsize|label|layers|layer|margin|mclimit|minlen|name|nodesep|nslimit|ordering|orientation|pagedir|page|peripheries|port_label_distance|rankdir|ranksep|rank|ratio|regular|rotate|samehead|sametail|shapefile|shape|sides|size|skew|style|tailclip|taillabel|URL|weight|width)\>" +color red "=|->|--" +color yellow ""(\\.|[^"])*"|'(\\.|[^'])*'" +color brightblack "(^|[[:space:]])//.*" +color brightblack start="/\*" end="\*/" diff --git a/email.nanorc b/email.nanorc new file mode 100644 index 0000000..6cd564e --- /dev/null +++ b/email.nanorc @@ -0,0 +1,5 @@ +syntax "email" + +color magenta "^>([^>].*|$)" +color blue "^>>([^>].*|$)" +color green "^>>>.*" diff --git a/erb.nanorc b/erb.nanorc new file mode 100644 index 0000000..55b0d71 --- /dev/null +++ b/erb.nanorc @@ -0,0 +1,24 @@ +## A HTML+Ruby set for Syntax Highlighting .erb files (Embedded RubyRails Views etc) ERB +## (c) 2009, Georgios V. Michalakidis - g.michalakidis@computer.org +## Licensed under the CC (Creative Commons) License. +## +## https://github.com/geomic/ERB-And-More-Code-Highlighting-for-nano + +syntax "erb" "\.erb$" "\.rhtml$" +color blue start="<" end=">" +color white start="<%" end="%>" +color red "&[^;[[:space:]]]*;" +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)\>" +color brightblue "(\$|@|@@)?\<[A-Z]+[0-9A-Z_a-z]*" +icolor magenta "([ ]|^):[0-9A-Z_]+\>" +color brightyellow "\<(__FILE__|__LINE__)\>" +color brightmagenta "!/([^/]|(\\/))*/[iomx]*" "%r\{([^}]|(\\}))*\}[iomx]*" +color brightblue "`[^`]*`" "%x\{[^}]*\}" +color green ""([^"]|(\\"))*"" "%[QW]?\{[^}]*\}" "%[QW]?\([^)]*\)" "%[QW]?<[^>]*>" "%[QW]?\[[^]]*\]" "%[QW]?\$[^$]*\$" "%[QW]?\^[^^]*\^" "%[QW]?![^!]*!" +color brightgreen "#\{[^}]*\}" +color green "'([^']|(\\'))*'" "%[qw]\{[^}]*\}" "%[qw]\([^)]*\)" "%[qw]<[^>]*>" "%[qw]\[[^]]*\]" "%[qw]\$[^$]*\$" "%[qw]\^[^^]*\^" "%[qw]![^!]*!" +color cyan "#[^{].*$" "#$" +color brightcyan "##[^{].*$" "##$" +color green start="<<-?'?EOT'?" end="^EOT" +color brightcyan "(XXX|TODO|FIXME|\?\?\?)" + diff --git a/fish.nanorc b/fish.nanorc new file mode 100644 index 0000000..97d7d55 --- /dev/null +++ b/fish.nanorc @@ -0,0 +1,14 @@ +## Here is an example for Fish shell scripts. +## +syntax "fish" "\.fish$" +icolor brightgreen "^[0-9A-Z_]+\(\)" +color green "\<(alias|begin|break|case|continue|contains|else|end|for|function|if|math|return|set|switch|test|while)\>" +color green "(\{|\}|\(|\)|\;|\]|\[|`|\\|\$|<|>|!|=|&|\|)" +color green "\<(and|isatty|not|or|in)\>" +color yellow "--[a-z-]+" +color brightmagenta "\ -[a-z]+" +color brightblue "\<(bg|bind|block|breakpoint|builtin|cd|command|commandline|complete|dirh|dirs|echo|emit|eval|exec|exit|fg|fish|fish_config|fish_ident|fish_pager|fish_prompt|fish_right_prompt|fish_update_completions|fishd|funced|funcsave|functions|help|history|jobs|mimedb|nextd|open|popd|prevd|psub|pushd|pwd|random|read|set_color|status|trap|type|ulimit|umask|vared)\>" +icolor brightred "\$\{?[0-9A-Z_!@#$*?-]+\}?" +color cyan "(^|[[:space:]])#.*$" +color brightyellow ""(\\.|[^"])*"" "'(\\.|[^'])*'" +color ,green "[[:space:]]+$" diff --git a/fortran.nanorc b/fortran.nanorc new file mode 100644 index 0000000..4a8a06c --- /dev/null +++ b/fortran.nanorc @@ -0,0 +1,50 @@ +## Here is an example for Fortran 90/95 + +syntax "fortran" "\.([Ff]|[Ff]90|[Ff]95|[Ff][Oo][Rr])$" + +#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)\>" + +#Operator Color +color yellow "[.:;,+*|=!\%]" "<" ">" "/" "-" "&" + +#Parenthetical Color +color magenta "[(){}]" "\[" "\]" + +# Add preprocessor commands. +color brightcyan "^[[:space:]]*#[[:space:]]*(define|include|(un|ifn?)def|endif|el(if|se)|if|warning|error)" + +## String highlighting. +icolor cyan "<[^= ]*>" ""(\\.|[^"])*"" +icolor cyan "<[^= ]*>" "'(\\.|[^"])*'" + +## Comment highlighting +icolor brightred "!.*$" "(^[Cc]| [Cc]) .*$" diff --git a/gentoo.nanorc b/gentoo.nanorc new file mode 100644 index 0000000..a0432fe --- /dev/null +++ b/gentoo.nanorc @@ -0,0 +1,50 @@ +## Here is an example for ebuilds/eclasses +## +syntax "ebuild" "\.e(build|class)$" +## All the standard portage functions +color brightgreen "^src_(unpack|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 "(\{|\}|\(|\)|\;|\]|\[|`|\\|\$|<|>|!|=|&|\|)" +color green "-(e|d|f|r|g|u|w|x|L)\>" +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 "\<(ARCH|HOMEPAGE|DESCRIPTION|IUSE|SRC_URI|LICENSE|SLOT|KEYWORDS|FILESDIR|WORKDIR|(P|R)?DEPEND|PROVIDE|DISTDIR|RESTRICT|USERLAND)\>" +color red "\<(S|D|T|PV|PF|P|PN|A)\>" "\" "\" "\" +## Highlight portage commands +color magenta "\ [!a-zA-Z0-9_+ -]*" "inherit.*" +color brightblue "\" +color brightblue "\" "\" "\" "\" "\<(has|best)_version\>" "\" +color brightblue "\<(do|new)(ins|s?bin|doc|lib(\.so|\.a)|man|info|exe|initd|confd|envd|pam|menu|icon)\>" +color brightblue "\" "\" +color brightblue "prepall(docs|info|man|strip)" "prep(info|lib|lib\.(so|a)|man|strip)" +color brightblue "\<(doc|ins|exe)into\>" "\" "\<(exe|ins|dir)opts\>" +## Highlight common commands used in ebuilds +color blue "\" "\<(cat|cd|chmod|chown|cp|echo|env|export|grep|let|ln|mkdir|mv|rm|sed|set|tar|touch|unset)\>" +## Highlight comments (doesnt work that well) +color yellow "#.*$" +## 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 numbers: +color magenta "-[[:digit:]].*([[:space:]]|$)" +## Accepted arches: +color white "[~-]?\<(alpha|amd64|arm|hppa|ia64|mips|ppc|ppc64|s390|sh|sparc|x86|x86-fbsd)\>" +color white "[[:space:]][~-]?\*" +## Categories: +color cyan "^[[:space:]]*.*/" +## Masking regulators: +color brightmagenta "^[[:space:]]*(=|~|<|<=|=<|>|>=|=>)" +## Comments: +color yellow "#.*$" diff --git a/git.nanorc b/git.nanorc new file mode 100644 index 0000000..9ab2b35 --- /dev/null +++ b/git.nanorc @@ -0,0 +1,80 @@ +syntax "gitconfig" "git(config|modules)$|\.git/config$" + +color brightcyan "\<(true|false)\>" +color cyan "^[[:space:]]*[^=]*=" +color brightmagenta "^[[:space:]]*\[.*\]$" +color yellow ""(\\.|[^"])*"|'(\\.|[^'])*'" +color brightblack "(^|[[:space:]])#([^{].*)?$" +color ,green "[[:space:]]+$" +color ,red " +" + +# This code is free software; you can redistribute it and/or modify it under +# the terms of the new BSD License. +# +# Copyright (c) 2010, Sebastian Staudt + +# A nano configuration file to enable syntax highlighting of some Git specific +# files with the GNU nano text editor (http://www.nano-editor.org) +# +syntax "git commit/tag messages" "COMMIT_EDITMSG|TAG_EDITMSG" + +# Commit message +color yellow ".*" + +# Comments +color brightblack "^#.*" + +# Files changes +color white "#[[:space:]](deleted|modified|new file|renamed):[[:space:]].*" +color red "#[[:space:]]deleted:" +color green "#[[:space:]]modified:" +color brightgreen "#[[:space:]]new file:" +color brightblue "#[[:space:]]renamed:" + +# Untracked filenames +color black "^# [^/?*:;{}\\]+\.[^/?*:;{}\\]+$" + +color brightmagenta "^#[[:space:]]Changes.*[:]" +color brightred "^#[[:space:]]Your branch and '[^']+" +color brightblack "^#[[:space:]]Your branch and '" +color brightwhite "^#[[:space:]]On branch [^ ]+" +color brightblack "^#[[:space:]]On branch" + +# Recolor hash symbols + +# Recolor hash symbols +color brightblack "#" + +# Trailing spaces (+LINT is not ok, git uses tabs) +color ,red "[[:space:]]+$" + + +# This syntax format is used for interactive rebasing +syntax "git rebase todo" "git-rebase-todo" + +# Default +color yellow ".*" + +# Comments +color brightblack "^#.*" + +# Rebase commands +color green "^(e|edit) [0-9a-f]{7,40}" +color green "^# (e, edit)" +color brightgreen "^(f|fixup) [0-9a-f]{7,40}" +color brightgreen "^# (f, fixup)" +color brightwhite "^(p|pick) [0-9a-f]{7,40}" +color brightwhite "^# (p, pick)" +color blue "^(r|reword) [0-9a-f]{7,40}" +color blue "^# (r, reword)" +color brightred "^(s|squash) [0-9a-f]{7,40}" +color brightred "^# (s, squash)" +color yellow "^(x|exec) [^ ]+ [0-9a-f]{7,40}" +color yellow "^# (x, exec)" + +# Recolor hash symbols +color brightblack "#" + +# Commit IDs +color brightblue "[0-9a-f]{7,40}" + diff --git a/gitcommit.nanorc b/gitcommit.nanorc new file mode 120000 index 0000000..22ae20d --- /dev/null +++ b/gitcommit.nanorc @@ -0,0 +1 @@ +git.nanorc \ No newline at end of file diff --git a/glsl.nanorc b/glsl.nanorc new file mode 100644 index 0000000..6da2639 --- /dev/null +++ b/glsl.nanorc @@ -0,0 +1,15 @@ +syntax "glsl" "\.(frag|vert|fp|vp|glsl)$" + +color brightblue "[A-Za-z_][A-Za-z0-9_]*[[:space:]]*[()]" +color green "\<(void|bool|bvec2|bvec3|bvec4|int|ivec2|ivec3|ivec4|float|vec2|vec3|vec4|mat2|mat3|mat4|struct|sampler1D|sampler2D|sampler3D|samplerCUBE|sampler1DShadow|sampler2DShadow)\>" +color green "\" +color cyan "\<(const|attribute|varying|uniform|in|out|inout|if|else|return|discard|while|for|do)\>" +color brightred "\<(break|continue)\>" +color brightcyan "\<(true|false)\>" +color red "[-+/*=<>?:!~%&|^]" +color blue "\<([0-9]+|0x[0-9a-fA-F]*)\>" +color brightblack "(^|[[:space:]])//.*" +color brightblack start="/\*" end="\*/" +color brightwhite,cyan "TODO:?" +color ,green "[[:space:]]+$" +color ,red " + +| + +" diff --git a/go.nanorc b/go.nanorc new file mode 100644 index 0000000..92803cd --- /dev/null +++ b/go.nanorc @@ -0,0 +1,22 @@ +syntax "go" "\.go$" + +color brightblue "[A-Za-z_][A-Za-z0-9_]*[[:space:]]*[()]" +color brightblue "\<(append|cap|close|complex|copy|delete|imag|len)\>" +color brightblue "\<(make|new|panic|print|println|protect|real|recover)\>" +color green "\<(u?int(8|16|32|64)?|float(32|64)|complex(64|128))\>" +color green "\<(uintptr|byte|rune|string|interface|bool|map|chan|error)\>" +color cyan "\<(package|import|const|var|type|struct|func|go|defer|nil|iota)\>" +color cyan "\<(for|range|if|else|case|default|switch|return)\>" +color brightred "\<(go|goto|break|continue)\>" +color brightcyan "\<(true|false)\>" +color red "[-+/*=<>!~%&|^]|:=" +color blue "\<([0-9]+|0x[0-9a-fA-F]*)\>|'.'" +color yellow ""(\\.|[^"])*"|'(\\.|[^'])*'" +color magenta "\\[abfnrtv'\"\\]" +color magenta "\\([0-7]{3}|x[A-Fa-f0-9]{2}|u[A-Fa-f0-9]{4}|U[A-Fa-f0-9]{8})" +color yellow "`[^`]*`" +color brightblack "(^|[[:space:]])//.*" +color brightblack start="/\*" end="\*/" +color brightwhite,cyan "TODO:?" +color ,green "[[:space:]]+$" +color ,red " + +| + +" diff --git a/groff.nanorc b/groff.nanorc new file mode 100644 index 0000000..02b82b8 --- /dev/null +++ b/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/haml.nanorc b/haml.nanorc new file mode 100644 index 0000000..ef9be34 --- /dev/null +++ b/haml.nanorc @@ -0,0 +1,16 @@ +syntax "haml" "\.haml$" + +color cyan "-|=" +color white "->|=>" +icolor cyan "([ ]|^)%[0-9A-Z_]+\>" +icolor magenta ":[0-9A-Z_]+\>" +icolor yellow "\.[A-Z_]+\>" +## Double quote & single quote +color green ""([^"]|(\\"))*"" "%[QW]?\{[^}]*\}" "%[QW]?\([^)]*\)" "%[QW]?<[^>]*>" "%[QW]?\$[^$]*\$" "%[QW]?\^[^^]*\^" "%[QW]?![^!]*!" +color green "'([^']|(\\'))*'" "%[qw]\{[^}]*\}" "%[qw]\([^)]*\)" "%[qw]<[^>]*>" "%[qw]\[[^]]*\]" "%[qw]\$[^$]*\$" "%[qw]\^[^^]*\^" "%[qw]![^!]*!" +## Vars +color brightgreen "#\{[^}]*\}" +color brightblue "(@|@@)[0-9A-Z_a-z]+" +## Comments +color brightcyan "#[^{].*$" "#$" + diff --git a/haskell.nanorc b/haskell.nanorc new file mode 100644 index 0000000..8c6bdf0 --- /dev/null +++ b/haskell.nanorc @@ -0,0 +1,31 @@ +syntax "haskell" "\.hs$" + +## Keywords +color red "[ ](as|case|of|class|data|default|deriving|do|forall|foreign|hiding|if|then|else|import|infix|infixl|infixr|instance|let|in|mdo|module|newtype|qualified|type|where)[ ]" +color red "(^data|^foreign|^import|^infix|^infixl|^infixr|^instance|^module|^newtype|^type)[ ]" +color red "[ ](as$|case$|of$|class$|data$|default$|deriving$|do$|forall$|foreign$|hiding$|if$|then$|else$|import$|infix$|infixl$|infixr$|instance$|let$|in$|mdo$|module$|newtype$|qualified$|type$|where$)" + +## Various symbols +color cyan "(\||@|!|:|_|~|=|\\|;|\(\)|,|\[|\]|\{|\})" + +## Operators +color magenta "(==|/=|&&|\|\||<|>|<=|>=)" + +## Various symbols +color cyan "(->|<-)" +color magenta "\.|\$" + +## Data constructors +color magenta "(True|False|Nothing|Just|Left|Right|LT|EQ|GT)" + +## Data classes +color magenta "[ ](Read|Show|Enum|Eq|Ord|Data|Bounded|Typeable|Num|Real|Fractional|Integral|RealFrac|Floating|RealFloat|Monad|MonadPlus|Functor)" + +## Strings +color yellow ""[^\"]*"" + +## Comments +color green "--.*" +color green start="\{-" end="-\}" + +color brightred "undefined" diff --git a/html.nanorc b/html.nanorc new file mode 100644 index 0000000..62984df --- /dev/null +++ b/html.nanorc @@ -0,0 +1,7 @@ +## Here is a short improved example for HTML. +## +syntax "html" "\.htm[l]?$" +color brightblue start="<" end=">" +color red "&[^;[[:space:]]]*;" +color yellow ""[^"]*"|qq\|.*\|" +color red "(alt|bgcolor|height|href|label|longdesc|name|onclick|onfocus|onload|onmouseover|size|span|src|style|target|type|value|width)=" diff --git a/ini.nanorc b/ini.nanorc new file mode 100644 index 0000000..26daea3 --- /dev/null +++ b/ini.nanorc @@ -0,0 +1,11 @@ +syntax "ini" "\.(ini|desktop|lfl|override)$" "(mimeapps\.list|pinforc|setup\.cfg)$" "weechat/.+\.conf$" +header "^\[[A-Za-z]+\]$" + +color brightcyan "\<(true|false)\>" +color cyan "^[[:space:]]*[^=]*=" +color brightmagenta "^[[:space:]]*\[.*\]$" +color red "[=;]" +color yellow ""(\\.|[^"])*"|'(\\.|[^'])*'" +color brightblack "(^|[[:space:]])#([^{].*)?$" +color ,green "[[:space:]]+$" +color ,red " + +| + +" diff --git a/inputrc.nanorc b/inputrc.nanorc new file mode 100644 index 0000000..c0b8f6e --- /dev/null +++ b/inputrc.nanorc @@ -0,0 +1,10 @@ +syntax "inputrc" "inputrc$" + +color red "\<(off|none)\>" +color green "\" +color brightblue "\" +color yellow ""(\\.|[^"])*"|'(\\.|[^'])*'" +color magenta "\\.?" +color brightblack "(^|[[:space:]])#([^{].*)?$" +color ,green "[[:space:]]+$" +color ,red " + +| + +" diff --git a/install.sh b/install.sh new file mode 100755 index 0000000..6f3ba8e --- /dev/null +++ b/install.sh @@ -0,0 +1,20 @@ +wget -O /tmp/nanorc.zip https://github.com/scopatz/nanorc/archive/master.zip +if [ ! -d ~/.nano/ ] +then + mkdir ~/.nano/ +fi + +cd ~/.nano/ + +unzip -o "/tmp/nanorc.zip" +mv nanorc-master/* ./ +rm -rf nanorc-master + +if [ ! -f ~/.nanorc ] +then + touch ~/.nanorc +fi + +cat ~/.nano/nanorc >> ~/.nanorc +sort -u ~/.nanorc > /tmp/nanorc2 +cat /tmp/nanorc2 > ~/.nanorc diff --git a/java.nanorc b/java.nanorc new file mode 100644 index 0000000..a432f81 --- /dev/null +++ b/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/javascript.nanorc b/javascript.nanorc new file mode 100644 index 0000000..4b6a46e --- /dev/null +++ b/javascript.nanorc @@ -0,0 +1,22 @@ +syntax "JavaScript" "\.js$" + +color blue "\<[-+]?([1-9][0-9]*|0[0-7]*|0x[0-9a-fA-F]+)([uU][lL]?|[lL][uU]?)?\>" +color blue "\<[-+]?([0-9]+\.[0-9]*|[0-9]*\.[0-9]+)([EePp][+-]?[0-9]+)?[fFlL]?" +color blue "\<[-+]?([0-9]+[EePp][+-]?[0-9]+)[fFlL]?" +color brightblue "[A-Za-z_][A-Za-z0-9_]*[[:space:]]*[(]" +color cyan "\<(break|case|catch|continue|default|delete|do|else|finally)\>" +color cyan "\<(for|function|get|if|in|instanceof|new|return|set|switch)\>" +color cyan "\<(switch|this|throw|try|typeof|var|void|while|with)\>" +color cyan "\<(null|undefined|NaN)\>" +color brightcyan "\<(true|false)\>" +color green "\<(Array|Boolean|Date|Enumerator|Error|Function|Math)\>" +color green "\<(Number|Object|RegExp|String)\>" +color red "[-+/*=<>!~%?:&|]" +color magenta "/[^*]([^/]|(\\/))*[^\\]/[gim]*" +color magenta "\\[0-7][0-7]?[0-7]?|\\x[0-9a-fA-F]+|\\[bfnrt'"\?\\]" +color brightblack "(^|[[:space:]])//.*" +color brightblack "/\*.+\*/" +color brightwhite,cyan "TODO:?" +color yellow ""(\\.|[^"])*"|'(\\.|[^'])*'" +color ,green "[[:space:]]+$" +color ,red " + +| + +" diff --git a/js.nanorc b/js.nanorc new file mode 100644 index 0000000..79a4af0 --- /dev/null +++ b/js.nanorc @@ -0,0 +1,46 @@ +### all *js files ( e.g. Firefox user.js, prefs.js ) + +## Old version + +#syntax "jsfiles" "(\.|/|)js$" +#color green "//.*$" start="\/\*" end="\*\/" +#color blue "'(\\.|[^'])*'" +#color red ""(\\.|[^\"])*"" +#color brightgreen "\<(true)\>" +#color brightred "\<(false)\>" "http\:\/\/.*$" +#color brightmagenta "[0-9](\\.|[^\"])*)" + +## New updated taken from http://wiki.linuxhelp.net/index.php/Nano_Syntax_Highlighting + +syntax "JavaScript" "\.(js)$" + +## Default +color white "^.+$" + +## Decimal, cotal and hexadecimal numbers +color yellow "\<[-+]?([1-9][0-9]*|0[0-7]*|0x[0-9a-fA-F]+)([uU][lL]?|[lL][uU]?)?\>" + +## Floating point number with at least one digit before decimal point +color yellow "\<[-+]?([0-9]+\.[0-9]*|[0-9]*\.[0-9]+)([EePp][+-]?[0-9]+)?[fFlL]?" +color yellow "\<[-+]?([0-9]+[EePp][+-]?[0-9]+)[fFlL]?" + +## Keywords +color green "\<(break|case|catch|continue|default|delete|do|else|finally)\>" +color green "\<(for|function|if|in|instanceof|new|null|return|switch)\>" +color green "\<(switch|this|throw|try|typeof|undefined|var|void|while|with)\>" + +## Type specifiers +color red "\<(Array|Boolean|Date|Enumerator|Error|Function|Math)\>" +color red "\<(Number|Object|RegExp|String)\>" +color red "\<(true|false)\>" + +## String +color brightyellow "L?\"(\\"|[^"])*\"" +color brightyellow "L?'(\'|[^'])*'" + +## Escapes +color red "\\[0-7][0-7]?[0-7]?|\\x[0-9a-fA-F]+|\\[bfnrt'"\?\\]" + +## Comments +color brightblue start="/\*" end="\*/" +color brightblue "//.*$" diff --git a/json.nanorc b/json.nanorc new file mode 100644 index 0000000..d6338c9 --- /dev/null +++ b/json.nanorc @@ -0,0 +1,11 @@ +syntax "json" "\.json$" +header "^\{$" + +color blue "\<[-]?[1-9][0-9]*([Ee][+-]?[0-9]+)?\>" "\<[-]?[0](\.[0-9]+)?\>" +color cyan "\" +color brightcyan "\<(true|false)\>" +color yellow ""(\\.|[^"])*"|'(\\.|[^'])*'" +color brightyellow "\"(\\"|[^"])*\"[[:space:]]*:" "'(\'|[^'])*'[[:space:]]*:" +color magenta "\\u[0-9a-fA-F]{4}|\\[bfnrt'"/\\]" +color ,green "[[:space:]]+$" +color ,red " + +| + +" diff --git a/keymap.nanorc b/keymap.nanorc new file mode 100644 index 0000000..bd89707 --- /dev/null +++ b/keymap.nanorc @@ -0,0 +1,10 @@ +syntax "keymap" "\.(k|key)?map$|Xmodmap$" + +color cyan "\<(add|clear|compose|keycode|keymaps|keysym|remove|string)\>" +color cyan "\<(control|alt|shift)\>" +color blue "\<[0-9]+\>" +color red "=" +color yellow ""(\\.|[^"])*"|'(\\.|[^'])*'" +color brightblack "^!.*$" +color ,green "[[:space:]]+$" +color ,red " + +| + +" diff --git a/kickstart.nanorc b/kickstart.nanorc new file mode 100644 index 0000000..255618f --- /dev/null +++ b/kickstart.nanorc @@ -0,0 +1,15 @@ +syntax "KickStart" "\.ks$" "\.kickstart$" + +color brightmagenta "%[a-z]+" +color cyan "^[[:space:]]*(install|cdrom|text|graphical|volgroup|logvol|reboot|timezone|lang|keyboard|authconfig|firstboot|rootpw|user|firewall|selinux|repo|part|partition|clearpart|bootloader)" +color cyan "--(name|mirrorlist|baseurl|utc)(=|\>)" +color brightyellow "\$(releasever|basearch)\>" + +# Packages and groups +color brightblack "^@[A-Za-z][A-Za-z-]*" +color brightred "^-@[a-zA-Z0-9*-]+" +color red "^-[a-zA-Z0-9*-]+" + +color brightblack "(^|[[:space:]])#([^{].*)?$" +color ,green "[[:space:]]+$" +color ,red " + +| + +" diff --git a/ledger.nanorc b/ledger.nanorc new file mode 100644 index 0000000..18fbb7a --- /dev/null +++ b/ledger.nanorc @@ -0,0 +1,10 @@ +syntax "ledger" "(^|\.|/)ledger|ldgr|beancount|bnct$" + +color brightmagenta "^([0-9]{4}(/|-)[0-9]{2}(/|-)[0-9]{2}|[=~]) .*" +color blue "^[0-9]{4}(/|-)[0-9]{2}(/|-)[0-9]{2}" +color brightyellow "^~ .*" +color brightblue "^= .*" +color cyan "^[[:space:]]+(![[:space:]]+)?\(?[A-Za-z ]+(:[A-Za-z ]+)*\)?" +color cyan "^[[:space:]]+(![[:space:]]+)?\(?[A-Za-z_-]+(:[A-Za-z_-]+)*\)?" +color red "[*!]" +color brightblack "^[[:space:]]*;.*" diff --git a/license b/license new file mode 100644 index 0000000..9032bab --- /dev/null +++ b/license @@ -0,0 +1,15 @@ + nano run control files + Copyright (C) 2014+ Anthony Scopatz et al. + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . diff --git a/lisp.nanorc b/lisp.nanorc new file mode 100644 index 0000000..f892a70 --- /dev/null +++ b/lisp.nanorc @@ -0,0 +1,13 @@ +syntax "lisp" "(emacs|zile)$" "\.(el|li?sp|scm|ss)$" + +color brightblue "\([a-z-]+" +color red "\(([-+*/<>]|<=|>=)|'" +color blue "\<[0-9]+\>" +icolor cyan "\" +color brightcyan "\<[tT]\>" +color yellow "\"(\\.|[^"])*\"" +color magenta "'[A-Za-z][A-Za-z0-9_-]+" +color magenta "\\.?" +color brightblack "(^|[[:space:]]);.*" +color ,green "[[:space:]]+$" +color ,red " + +| + +" diff --git a/lua.nanorc b/lua.nanorc new file mode 100644 index 0000000..e41c8d4 --- /dev/null +++ b/lua.nanorc @@ -0,0 +1,72 @@ +############################################################################## +# +# Lua syntax highlighting for Nano. +# +# Author: Matthew Wild +# License: GPL 2 or later +# +# Version: 2007-06-06 +# +# Notes: Originally based on Ruby syntax rc by Josef 'Jupp' Schugt +############################################################################## + + +# Automatically use for '.lua' files +syntax "lua" ".*\.lua$" + +# General +color brightwhite ".+" + +# Operators +color brightyellow ":|\*\*|\*|/|%|\+|-|\^|>|>=|<|<=|~=|=|\.\.|\<(not|and|or)\>" + +# Statements +color brightblue "\<(do|end|while|repeat|until|if|elseif|then|else|for|in|function|local|return)\>" + +# Keywords +color brightyellow "\<(debug|string|math|table|io|coroutine|os)\>\." +color brightyellow "\<(_G|_VERSION|assert|collectgarbage|dofile|error|getfenv|getmetatable|ipairs|load|loadfile|module|next|pairs|pcall|print|rawequal|rawget|rawset|require|select|setfenv|setmetatable|tonumber|tostring|type|unpack|xpcall)\s*\(" + +# Standard library +color brightyellow "io\.\<(close|flush|input|lines|open|output|popen|read|tmpfile|type|write)\>" +color brightyellow "math\.\<(abs|acos|asin|atan2|atan|ceil|cosh|cos|deg|exp|floor|fmod|frexp|huge|ldexp|log10|log|max|min|modf|pi|pow|rad|random|randomseed|sinh|tan)\>" +color brightyellow "os\.\<(clock|date|difftime|execute|exit|getenv|remove|rename|setlocale|time|tmpname)\>" +color brightyellow "package\.\<(cpath|loaded|loadlib|path|preload|seeall)\>" +color brightyellow "string\.\<(byte|char|dump|find|format|gmatch|gsub|len|lower|match|rep|reverse|sub|upper)\>" +color brightyellow "table\.\<(concat|insert|maxn|remove|sort)\>" +color brightyellow "coroutine\.\<(create|resume|running|status|wrap|yield)\>" +color brightyellow "debug\.\<(debug|getfenv|gethook|getinfo|getlocal|getmetatable|getregistry|getupvalue|setfenv|sethook|setlocal|setmetatable|setupvalue|traceback)\>" + +# File handle methods +color brightyellow "\:\<(close|flush|lines|read|seek|setvbuf|write)\>" + +# false, nil, true +color brightmagenta "\<(false|nil|true)\>" + +# External files +color brightgreen "(\<(dofile|require|include)|%q|%!|%Q|%r|%x)\>" + +# Numbers +color red "\<([0-9]+)\>" + +# Symbols +color brightmagenta "(\(|\)|\[|\]|\{|\})" + +# Strings +#color green "\"(\\.|[^\\\"])*\"|'(\\.|[^\\'])*'" + +# Strings +color red "\"(\\.|[^\\\"])*\"|'(\\.|[^\\'])*'" + +# Escapes +color red "\\[0-7][0-7][0-7]|\\x[0-9a-fA-F][0-9a-fA-F]|\\[abefnrs]|(\\c|\\C-|\\M-|\\M-\\C-)." + + +# Shebang +color brightcyan "^#!.*" + +# Simple comments +color green "\-\-.*$" + +# Multiline comments +color green start="\-\-\[" end="]" diff --git a/makefile.nanorc b/makefile.nanorc new file mode 100644 index 0000000..3e751a2 --- /dev/null +++ b/makefile.nanorc @@ -0,0 +1,22 @@ +syntax "makefile" "([Mm]akefile|\.ma?k)$" +header "^#!.*/(env +)?[bg]?make( |$)" + +color cyan "\<(ifeq|ifdef|ifneq|ifndef|else|endif)\>" +color cyan "^(export|include|override)\>" +color brightmagenta "^[^:= ]+:" +color red "[=,%]" "\+=|\?=|:=|&&|\|\|" +color brightblue "\$\((abspath|addprefix|addsuffix|and|basename|call|dir)[[:space:]]" +color brightblue "\$\((error|eval|filter|filter-out|findstring|firstword)[[:space:]]" +color brightblue "\$\((flavor|foreach|if|info|join|lastword|notdir|or)[[:space:]]" +color brightblue "\$\((origin|patsubst|realpath|shell|sort|strip|suffix)[[:space:]]" +color brightblue "\$\((value|warning|wildcard|word|wordlist|words)[[:space:]]" +color black "[()$]" +color yellow ""(\\.|[^"])*"|'(\\.|[^'])*'" +color brightyellow "\$+(\{[^} ]+\}|\([^) ]+\))" +color brightyellow "\$[@^<*?%|+]|\$\([@^<*?%+-][DF]\)" +color magenta "\$\$|\\.?" +color brightblack "(^|[[:space:]])#([^{].*)?$" +color brightblack "^ @#.*" + +# Show trailing whitespace +color ,green "[[:space:]]+$" diff --git a/man.nanorc b/man.nanorc new file mode 100644 index 0000000..85efd26 --- /dev/null +++ b/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/markdown.nanorc b/markdown.nanorc new file mode 100644 index 0000000..5c513bd --- /dev/null +++ b/markdown.nanorc @@ -0,0 +1,17 @@ +syntax "markdown" "\.(md|mkd|mkdn|markdown)$" + +# Emphasis +color green "(^|[[:space:]])(_[^ ][^_]*_|\*[^ ][^*]*\*)" + +# Strong emphasis +color brightgreen "(^|[[:space:]])(__[^ ][^_]*__|\*\*[^ ][^*]*\*\*)" + +color brightmagenta "^=====*$|^-----*$|^#{1,6}.*" +color blue "^[[:space:]]*[\*+-] |^[[:space:]]*[0-9]+\. " +color black "^[[:space:]]+" +color magenta "\(([CcRr]|[Tt][Mm])\)" "\.{3}" "(^|[[:space:]])\-\-($$)" +color brightyellow "\!?\[[^]]*\]([[:space:]]*\[[^]]*\]|\(.*\))?" +color brightyellow "^\[.*\]:[[:space:]]*[^"]*" +color yellow "`[^`]*`|^ {4}[^-+*].*" +color brightblack "^>.*" + diff --git a/mpdconf.nanorc b/mpdconf.nanorc new file mode 100644 index 0000000..347e6f4 --- /dev/null +++ b/mpdconf.nanorc @@ -0,0 +1,9 @@ +syntax "mpdconf" "mpd\.conf$" + +color cyan "\<(user|group|bind_to_address|host|port|plugin|name|type)\>" +color cyan "\<((music|playlist)_directory|(db|log|state|pid|sticker)_file)\>" +color brightmagenta "^(input|audio_output|decoder)[[:space:]]*\{|\}" +color yellow ""(\\.|[^"])*"|'(\\.|[^'])*'" +color brightblack "(^|[[:space:]])#([^{].*)?$" +color ,green "[[:space:]]+$" +color ,red " + +| + +" diff --git a/mutt.nanorc b/mutt.nanorc new file mode 100644 index 0000000..2e68399 --- /dev/null +++ b/mutt.nanorc @@ -0,0 +1,4 @@ +## Here is an example for quoted emails (under e.g. mutt). +## +syntax "mutt" +color green "^>.*" diff --git a/nanorc b/nanorc new file mode 100644 index 0000000..0c41250 --- /dev/null +++ b/nanorc @@ -0,0 +1,75 @@ +include "~/.nano/apacheconf.nanorc" +include "~/.nano/arduino.nanorc" +include "~/.nano/asciidoc.nanorc" +include "~/.nano/asm.nanorc" +include "~/.nano/awk.nanorc" +include "~/.nano/c.nanorc" +include "~/.nano/cmake.nanorc" +include "~/.nano/coffeescript.nanorc" +include "~/.nano/colortest.nanorc" +include "~/.nano/conf.nanorc" +include "~/.nano/csharp.nanorc" +include "~/.nano/css.nanorc" +include "~/.nano/cython.nanorc" +include "~/.nano/dot.nanorc" +include "~/.nano/email.nanorc" +include "~/.nano/Dockerfile.nanorc" +include "~/.nano/fish.nanorc" +include "~/.nano/fortran.nanorc" +include "~/.nano/gentoo.nanorc" +include "~/.nano/git.nanorc" +include "~/.nano/gitcommit.nanorc" +include "~/.nano/glsl.nanorc" +include "~/.nano/go.nanorc" +include "~/.nano/groff.nanorc" +include "~/.nano/haml.nanorc" +include "~/.nano/haskell.nanorc" +include "~/.nano/html.nanorc" +include "~/.nano/ini.nanorc" +include "~/.nano/inputrc.nanorc" +include "~/.nano/java.nanorc" +include "~/.nano/javascript.nanorc" +include "~/.nano/js.nanorc" +include "~/.nano/json.nanorc" +include "~/.nano/keymap.nanorc" +include "~/.nano/kickstart.nanorc" +include "~/.nano/ledger.nanorc" +include "~/.nano/lisp.nanorc" +include "~/.nano/lua.nanorc" +include "~/.nano/makefile.nanorc" +include "~/.nano/man.nanorc" +include "~/.nano/markdown.nanorc" +include "~/.nano/mpdconf.nanorc" +include "~/.nano/mutt.nanorc" +include "~/.nano/nanorc.nanorc" +include "~/.nano/nginx.nanorc" +include "~/.nano/ocaml.nanorc" +include "~/.nano/patch.nanorc" +include "~/.nano/peg.nanorc" +include "~/.nano/perl.nanorc" +include "~/.nano/php.nanorc" +include "~/.nano/pkg-config.nanorc" +include "~/.nano/pkgbuild.nanorc" +include "~/.nano/po.nanorc" +include "~/.nano/pov.nanorc" +include "~/.nano/privoxy.nanorc" +include "~/.nano/python.nanorc" +include "~/.nano/reST.nanorc" +include "~/.nano/rpmspec.nanorc" +include "~/.nano/ruby.nanorc" +include "~/.nano/rust.nanorc" +include "~/.nano/scala.nanorc" +include "~/.nano/sed.nanorc" +include "~/.nano/sh.nanorc" +include "~/.nano/sls.nanorc" +include "~/.nano/sql.nanorc" +include "~/.nano/systemd.nanorc" +include "~/.nano/tcl.nanorc" +include "~/.nano/tex.nanorc" +include "~/.nano/vala.nanorc" +include "~/.nano/vi.nanorc" +include "~/.nano/xml.nanorc" +include "~/.nano/xresources.nanorc" +include "~/.nano/yaml.nanorc" +include "~/.nano/yum.nanorc" +include "~/.nano/zsh.nanorc" diff --git a/nanorc.nanorc b/nanorc.nanorc new file mode 100644 index 0000000..1aa85e0 --- /dev/null +++ b/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:]]+(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|speller|suspend|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/nginx.nanorc b/nginx.nanorc new file mode 100644 index 0000000..66148b3 --- /dev/null +++ b/nginx.nanorc @@ -0,0 +1,13 @@ +syntax "nginx" "nginx.*\.conf$" "\.nginx$" +header "^(server|upstream)[a-z ]*\{$" + +color brightmagenta "\<(events|server|http|location|upstream)[[:space:]]*\{" +color cyan "(^|[[:space:]{;])(access_log|add_after_body|add_before_body|add_header|addition_types|aio|alias|allow|ancient_browser|ancient_browser_value|auth_basic|auth_basic_user_file|autoindex|autoindex_exact_size|autoindex_localtime|break|charset|charset_map|charset_types|chunked_transfer_encoding|client_body_buffer_size|client_body_in_file_only|client_body_in_single_buffer|client_body_temp_path|client_body_timeout|client_header_buffer_size|client_header_timeout|client_max_body_size|connection_pool_size|create_full_put_path|daemon|dav_access|dav_methods|default_type|deny|directio|directio_alignment|disable_symlinks|empty_gif|env|error_log|error_page|expires|fastcgi_buffer_size|fastcgi_buffers|fastcgi_busy_buffers_size|fastcgi_cache|fastcgi_cache_bypass|fastcgi_cache_key|fastcgi_cache_lock|fastcgi_cache_lock_timeout|fastcgi_cache_min_uses|fastcgi_cache_path|fastcgi_cache_use_stale|fastcgi_cache_valid|fastcgi_connect_timeout|fastcgi_hide_header|fastcgi_ignore_client_abort|fastcgi_ignore_headers|fastcgi_index|fastcgi_intercept_errors|fastcgi_keep_conn|fastcgi_max_temp_file_size|fastcgi_next_upstream|fastcgi_no_cache|fastcgi_param|fastcgi_pass|fastcgi_pass_header|fastcgi_read_timeout|fastcgi_send_timeout|fastcgi_split_path_info|fastcgi_store|fastcgi_store_access|fastcgi_temp_file_write_size|fastcgi_temp_path|flv|geo|geoip_city|geoip_country|gzip|gzip_buffers|gzip_comp_level|gzip_disable|gzip_http_version|gzip_min_length|gzip_proxied|gzip_static|gzip_types|gzip_vary|if|if_modified_since|ignore_invalid_headers|image_filter|image_filter_buffer|image_filter_jpeg_quality|image_filter_sharpen|image_filter_transparency|include|index|internal|ip_hash|keepalive|keepalive_disable|keepalive_requests|keepalive_timeout|large_client_header_buffers|limit_conn|limit_conn_log_level|limit_conn_zone|limit_except|limit_rate|limit_rate_after|limit_req|limit_req_log_level|limit_req_zone|limit_zone|lingering_close|lingering_time|lingering_timeout|listen|location|log_format|log_not_found|log_subrequest|map|map_hash_bucket_size|map_hash_max_size|master_process|max_ranges|memcached_buffer_size|memcached_connect_timeout|memcached_next_upstream|memcached_pass|memcached_read_timeout|memcached_send_timeout|merge_slashes|min_delete_depth|modern_browser|modern_browser_value|mp4|mp4_buffer_size|mp4_max_buffer_size|msie_padding|msie_refresh|open_file_cache|open_file_cache_errors|open_file_cache_min_uses|open_file_cache_valid|open_log_file_cache|optimize_server_names|override_charset|pcre_jit|perl|perl_modules|perl_require|perl_set|pid|port_in_redirect|postpone_output|proxy_buffer_size|proxy_buffering|proxy_buffers|proxy_busy_buffers_size|proxy_cache|proxy_cache_bypass|proxy_cache_key|proxy_cache_lock|proxy_cache_lock_timeout|proxy_cache_min_uses|proxy_cache_path|proxy_cache_use_stale|proxy_cache_valid|proxy_connect_timeout|proxy_cookie_domain|proxy_cookie_path|proxy_hide_header|proxy_http_version|proxy_ignore_client_abort|proxy_ignore_headers|proxy_intercept_errors|proxy_max_temp_file_size|proxy_next_upstream|proxy_no_cache|proxy_pass|proxy_pass_header|proxy_read_timeout|proxy_redirect|proxy_send_timeout|proxy_set_header|proxy_ssl_session_reuse|proxy_store|proxy_store_access|proxy_temp_file_write_size|proxy_temp_path|random_index|read_ahead|real_ip_header|recursive_error_pages|request_pool_size|reset_timedout_connection|resolver|resolver_timeout|return|rewrite|root|satisfy|satisfy_any|secure_link_secret|send_lowat|send_timeout|sendfile|sendfile_max_chunk|server|server|server_name|server_name_in_redirect|server_names_hash_bucket_size|server_names_hash_max_size|server_tokens|set|set_real_ip_from|source_charset|split_clients|ssi|ssi_silent_errors|ssi_types|ssl|ssl_certificate|ssl_certificate_key|ssl_ciphers|ssl_client_certificate|ssl_crl|ssl_dhparam|ssl_engine|ssl_prefer_server_ciphers|ssl_protocols|ssl_session_cache|ssl_session_timeout|ssl_verify_client|ssl_verify_depth|sub_filter|sub_filter_once|sub_filter_types|tcp_nodelay|tcp_nopush|timer_resolution|try_files|types|types_hash_bucket_size|types_hash_max_size|underscores_in_headers|uninitialized_variable_warn|upstream|user|userid|userid_domain|userid_expires|userid_name|userid_p3p|userid_path|userid_service|valid_referers|variables_hash_bucket_size|variables_hash_max_size|worker_priority|worker_processes|worker_rlimit_core|worker_rlimit_nofile|working_directory|xml_entities|xslt_stylesheet|xslt_types)([[:space:]]|$)" +color brightcyan "\<(on|off)\>" +color brightyellow "\$[A-Za-z][A-Za-z0-9_]*" +color red "[*]" +color yellow ""(\\.|[^"])*"|'(\\.|[^'])*'" +color yellow start="'$" end="';$" +color brightblack "(^|[[:space:]])#([^{].*)?$" +color ,green "[[:space:]]+$" +color ,red " + +| + +" diff --git a/ocaml.nanorc b/ocaml.nanorc new file mode 100644 index 0000000..6f9fc60 --- /dev/null +++ b/ocaml.nanorc @@ -0,0 +1,25 @@ +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/patch.nanorc b/patch.nanorc new file mode 100644 index 0000000..a788b35 --- /dev/null +++ b/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/peg.nanorc b/peg.nanorc new file mode 100644 index 0000000..858d5f8 --- /dev/null +++ b/peg.nanorc @@ -0,0 +1,12 @@ +syntax "peg" "\.l?peg$" + +color cyan "^[[:space:]]*[A-Za-z][A-Za-z0-9_]*[[:space:]]*<-" +color blue "\^[+-]?[0-9]+" +color red "[-+*?^/!&]|->|<-|=>" +color brightyellow "%[A-Za-z][A-Za-z0-9_]*" +color magenta "\[[^]]*\]" +color yellow ""(\\.|[^"])*"|'(\\.|[^'])*'" +color brightblack "(^|[[:space:]])\-\-.*$" +color brightwhite,cyan "TODO:?" +color ,green "[[:space:]]+$" +color ,red " + +| + +" diff --git a/perl.nanorc b/perl.nanorc new file mode 100644 index 0000000..9a96528 --- /dev/null +++ b/perl.nanorc @@ -0,0 +1,13 @@ +## Here is an example for Perl. +## +syntax "perl" "\.p[lm]$" +header "^#!.*/(env +)?perl( |$)" + +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/perl6.nanorc b/perl6.nanorc new file mode 100644 index 0000000..a192ba3 --- /dev/null +++ b/perl6.nanorc @@ -0,0 +1,16 @@ +## Here is an example for perl +## Hybrid perl5 / perl6 syntax highlighting +### Found in CPAN - http://cpansearch.perl.org/src/NIGE/Goo-0.09/lib/.gooskel/nanorc + +syntax "perl" "\.p6$" +color brightblue "\<(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|seekdir|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 brightblue "\<(continue|else|elsif|do|for|foreach|if|unless|until|while|eq|ne|lt|gt|le|ge|cmp|x|my|sub|use|package|can|isa)\>" + +# Perl 6 words +color brightcyan "\<(has|is|class|role|given|when|BUILD|multi|returns|method|submethod|slurp|say|sub)\>" +color brightmagenta start="[$@%]" end="( |\\W|-)" +color brightred "".*"|qq\|.*\|" +color white "[sm]/.*/" +color brightblue start="(^use| = new)" end=";" +color brightgreen "#.*" +color brightred start="<]" +color white "\->[a-zA-Z_0-9$]*|[=!<>]" +# Special Characters +color yellow "[.,{}();]" +color yellow "\[" +color yellow "\]" +color yellow "[=][^>]" +# Numbers +color magenta "[+-]*([0-9]\.)*[0-9]+([eE][+-]?([0-9]\.)*[0-9])*" +color magenta "0x[0-9a-zA-Z]*" +# Special Variables +color brightblue "(\$this|parent::|self::|\$this-\>)" +# Bitwise Operations +color magenta "(\;|\||\^){1}" +# And/Or/SRO/etc +color green "(\;\;|\|\||::|=>|->)" +# Online Comments +color brightyellow "(#.*|//.*)$" +# STRINGS! +color red "('[^']*')|(\"[^\"]*\")" +# Inline Variables +color white "\{\$[^}]*\}" +# PHP Tags +color red "(<\?(php)?|\?>)" +# General HTML +color red start="\?>" end="<\?(php|=)?" +# trailing whitespace +color ,green "[^[:space:]]{1}[[:space:]]+$" +# multi-line comments +color brightyellow start="/\*" end="\*/" diff --git a/pkg-config.nanorc b/pkg-config.nanorc new file mode 100644 index 0000000..6dff0f6 --- /dev/null +++ b/pkg-config.nanorc @@ -0,0 +1,8 @@ +syntax "pkg-config" "\.pc$" + +color cyan "^(Name|Description|URL|Version|Conflicts|Cflags):" +color cyan "^(Requires|Libs)(\.private)?:" +color red "=" +color brightyellow "\$\{[A-Za-z_][A-Za-z0-9_]*\}" +color ,green "[[:space:]]+$" +color ,red " + +| + +" diff --git a/pkgbuild.nanorc b/pkgbuild.nanorc new file mode 100644 index 0000000..c601523 --- /dev/null +++ b/pkgbuild.nanorc @@ -0,0 +1,23 @@ +## Arch PKGBUILD files +## +syntax "pkgbuild" "^.*PKGBUILD$" +color green start="^." end="$" +color cyan "^.*(pkgbase|pkgname|pkgver|pkgrel|pkgdesc|arch|url|license).*=.*$" +color brightcyan "\<(pkgbase|pkgname|pkgver|pkgrel|pkgdesc|arch|url|license)\>" +color brightcyan "(\$|\$\{|\$\()(pkgbase|pkgname|pkgver|pkgrel|pkgdesc|arch|url|license)(\}|\))" +color cyan "^.*(depends|makedepends|optdepends|conflicts|provides|replaces).*=.*$" +color brightcyan "\<(depends|makedepends|optdepends|conflicts|provides|replaces)\>" +color brightcyan "(\$|\$\{|\$\()(depends|makedepends|optdepends|conflicts|provides|replaces)(\}|\))" +color cyan "^.*(groups|backup|noextract|options).*=.*$" +color brightcyan "\<(groups|backup|noextract|options)\>" +color brightcyan "(\$|\$\{|\$\()(groups|backup|noextract|options)(\}|\))" +color cyan "^.*(install|source|md5sums|sha1sums|sha256sums|sha384sums|sha512sums).*=.*$" +color brightcyan "\<(install|source|md5sums|sha1sums|sha256sums|sha384sums|sha512sums)\>" +color brightcyan "(\$|\$\{|\$\()(install|source|md5sums|sha1sums|sha256sums|sha384sums|sha512sums)(\}|\))" +color brightcyan "\<(startdir|srcdir|pkgdir)\>" +color cyan "\.install" +color brightwhite "=" "'" "\(" "\)" "\"" "#.*$" "\," "\{" "\}" +color brightred "build\(\)" +color brightred "package_.*.*$" +color brightred "\<(configure|make|cmake|scons)\>" +color red "\<(DESTDIR|PREFIX|prefix|sysconfdir|datadir|libdir|includedir|mandir|infodir)\>" diff --git a/po.nanorc b/po.nanorc new file mode 100644 index 0000000..f35e49f --- /dev/null +++ b/po.nanorc @@ -0,0 +1,8 @@ +syntax "po" "\.pot?$" + +color cyan "\<(msgid|msgstr)\>" +color yellow ""(\\.|[^"])*"|'(\\.|[^'])*'" +color magenta "\\.?" +color brightblack "(^|[[:space:]])#([^{].*)?$" +color ,green "[[:space:]]+$" +color ,red " + +| + +" diff --git a/pov.nanorc b/pov.nanorc new file mode 100644 index 0000000..298b201 --- /dev/null +++ b/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/privoxy.nanorc b/privoxy.nanorc new file mode 100644 index 0000000..473df51 --- /dev/null +++ b/privoxy.nanorc @@ -0,0 +1,28 @@ +syntax "privoxy-config" "privoxy/config$" + +color cyan "(accept-intercepted-requests|actionsfile|admin-address|allow-cgi-request-crunching|buffer-limit|compression-level|confdir|connection-sharing|debug|default-server-timeout|deny-access|enable-compression|enable-edit-actions|enable-remote-http-toggle|enable-remote-toggle|enforce-blocks|filterfile|forward|forwarded-connect-retries|forward-socks4|forward-socks4a|forward-socks5|handle-as-empty-doc-returns-ok|hostname|keep-alive-timeout|listen-address|logdir|logfile|max-client-connections|permit-access|proxy-info-url|single-threaded|socket-timeout|split-large-forms|templdir|toggle|tolerate-pipelining|trustfile|trust-info-url|user-manual)[[:space:]]" +color brightblack "(^|[[:space:]])#([^{].*)?$" +color ,green "[[:space:]]+$" +color ,red " + +| + +" + +syntax "privoxy-action" "\.action$" + +color brightred "[{[:space:]]\-block([[:space:]{}]|$)" +color brightgreen "[{[:space:]]\+block([[:space:]{}]|$)" + +color brightred "-(add-header|change-x-forwarded-for|client-header-filter|client-header-tagger|content-type-overwrite|crunch-client-header|crunch-if-none-match|crunch-incoming-cookies|crunch-outgoing-cookies|crunch-server-header|deanimate-gifs|downgrade-http-version|fast-redirects|filter|force-text-mode|forward-override|handle-as-empty-document|handle-as-image|hide-accept-language|hide-content-disposition|hide-from-header|hide-if-modified-since|hide-referrer|hide-user-agent|limit-connect|overwrite-last-modified|prevent-compression|redirect|server-header-filter|server-header-tagger|session-cookies-only|set-image-blocker)" +color brightgreen "\+(add-header|change-x-forwarded-for|client-header-filter|client-header-tagger|content-type-overwrite|crunch-client-header|crunch-if-none-match|crunch-incoming-cookies|crunch-outgoing-cookies|crunch-server-header|deanimate-gifs|downgrade-http-version|fast-redirects|filter|force-text-mode|forward-override|handle-as-empty-document|handle-as-image|hide-accept-language|hide-content-disposition|hide-from-header|hide-if-modified-since|hide-referrer|hide-user-agent|limit-connect|overwrite-last-modified|prevent-compression|redirect|server-header-filter|server-header-tagger|session-cookies-only|set-image-blocker)" +color magenta "\\.?" +color brightblack "(^|[[:space:]])#([^{].*)?$" +color ,green "[[:space:]]+$" +color ,red " + +| + +" + +syntax "privoxy-filter" "\.filter$" + +color cyan "^(FILTER|CLIENT-HEADER-FILTER|CLIENT-HEADER-TAGGER|SERVER-HEADER-FILTER|SERVER-HEADER-TAGGER): [a-z-]+" +color brightblue "^(FILTER|CLIENT-HEADER-FILTER|CLIENT-HEADER-TAGGER|SERVER-HEADER-FILTER|SERVER-HEADER-TAGGER):" +color magenta "\\.?" +color brightblack "(^|[[:space:]])#([^{].*)?$" +color ,green "[[:space:]]+$" +color ,red " + +| + +" + diff --git a/puppet.nanorc b/puppet.nanorc new file mode 100644 index 0000000..022c1fc --- /dev/null +++ b/puppet.nanorc @@ -0,0 +1,38 @@ +## Nano syntax highlighting for Puppet. +## +syntax "puppet" "\.pp$" + +#This goes first, so the normal builtins will override in some classes +## Paramerers +color brightwhite "^[[:space:]]([a-z][a-z0-9_]+)" +color brightgreen "\$[a-z:][a-z0-9_:]+" + +## List of built in types, also catches defines +color yellow "\<(augeas|computer|cron|exec|file|filebucket|group|host|interface|k5login|macauthorization|mailalias|maillist|mcx|mount|nagios_command|nagios_contact|nagios_contactgroup|nagios_host|nagios_hostdependency|nagios_hostescalation|nagios_hostextinfo|nagios_hostgroup|nagios_service|nagios_servicedependency|nagios_serviceescalation|nagios_serviceextinfo|nagios_servicegroup|nagios_timeperiod|notify|package|resources|router|schedule|scheduled_task|selboolean|selmodule|service|ssh_authorized_key|sshkey|stage|tidy|user|vlan|yumrepo|zfs|zone|zpool|anchor)\>" +color yellow "\<(class|define|if|else|undef|inherits)\>" +color red "(=|-|~|>)" + +## Constants +color brightblue "(\$|@|@@)?\<[A-Z]+[0-9A-Z_a-z]*" +## Ruby "symbols" +color magenta "([ ]|^):[0-9A-Z_]+\>" +## 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 "##[^{].*$" "##$" +## Some common markers +color brightcyan "(XXX|TODO|FIXME|\?\?\?)" +## Trailing spaces +color red "[[:space:]]+$" + diff --git a/python.nanorc b/python.nanorc new file mode 100644 index 0000000..7ef5d1a --- /dev/null +++ b/python.nanorc @@ -0,0 +1,48 @@ +## Here is an example for Python. +## +syntax "python" "\.py$" +header "^#!.*/(env +)?python( |$)" + +## built-in objects +color cyan "\<(None|self|True|False)\>" +## built-in attributes +color cyan "\<(__builtin__|__dict__|__methods__|__members__|__class__|__bases__|__import__|__name__|__doc__|__self__|__debug__)\>" +## built-in functions +color cyan "\<(abs|append|apply|buffer|callable|chr|clear|close|closed|cmp|coerce|compile|complex|conjugate|copy|count|delattr|dir|divmod|eval|execfile|extend|fileno|filter|float|flush|get|getattr|globals|has_key|hasattr|hash|hex|id|index|input|insert|int|intern|isatty|isinstance|issubclass|items|keys|len|list|locals|long|map|max|min|mode|name|oct|open|ord|pop|pow|range|raw_input|read|readline|readlines|reduce|reload|remove|repr|reverse|round|seek|setattr|slice|softspace|sort|str|tell|truncate|tuple|type|unichr|unicode|update|values|vars|write|writelines|xrange|zip)\>" +## special method names +color cyan "\<(__abs__|__add__|__and__|__call__|__cmp__|__coerce__|__complex__|__concat__|__contains__|__del__|__delattr__|__delitem__|__delslice__|__div__|__divmod__|__float__|__getattr__|__getitem__|__getslice__|__hash__|__hex__|__init__|__int__|__inv__|__invert__|__len__|__long__|__lshift__|__mod__|__mul__|__neg__|__nonzero__|__oct__|__or__|__pos__|__pow__|__radd__|__rand__|__rcmp__|__rdiv__|__rdivmod__|__repeat__|__repr__|__rlshift__|__rmod__|__rmul__|__ror__|__rpow__|__rrshift__|__rshift__|__rsub__|__rxor__|__setattr__|__setitem__|__setslice__|__str__|__sub__|__xor__)\>" +## exception classes +# color cyan "\<(Exception|StandardError|ArithmeticError|LookupError|EnvironmentError|AssertionError|AttributeError|EOFError|FloatingPointError|IOError|ImportError|IndexError|KeyError|KeyboardInterrupt|MemoryError|NameError|NotImplementedError|OSError|OverflowError|RuntimeError|SyntaxError|SystemError|SystemExit|TypeError|UnboundLocalError|UnicodeError|ValueError|WindowsError|ZeroDivisionError)\>" +## types +color brightcyan "\<(NoneType|TypeType|IntType|LongType|FloatType|ComplexType|StringType|UnicodeType|BufferType|TupleType|ListType|DictType|FunctionType|LambdaType|CodeType|ClassType|UnboundMethodType|InstanceType|MethodType|BuiltinFunctionType|BuiltinMethodType|ModuleType|FileType|XRangeType|TracebackType|FrameType|SliceType|EllipsisType)\>" +## definitions +color brightcyan "def [a-zA-Z_0-9]+" +## keywords +color brightblue "\<(and|as|assert|break|class|continue|def|del|elif|else|except|exec|finally|for|from|global|if|import|in|is|lambda|map|not|or|pass|print|raise|return|try|with|while|yield)\>" + +## decorators +color brightgreen "@.*[(]" + +## operators +color magenta "[.:;,+*|=!\%@]" "<" ">" "/" "-" "&" + +## parentheses +color magenta "[(){}]" "\[" "\]" + +## numbers +color brightyellow "\b[0-9]+\b" + +## strings +color yellow "['][^']*[^\\][']" "[']{3}.*[^\\][']{3}" +color yellow "["][^"]*[^\\]["]" "["]{3}.*[^\\]["]{3}" + +## comments +color green "#.*$" + +## block comments +color green start=""""([^"]|$)" end=""""" start="'''([^']|$)" end="'''" +#color cyan start=""""[^"]" end=""""" start="'''[^']" end="'''" +#color cyan start="([[:space:]]"""|^""")" end=""""" start="'''[^']" end="'''" +#color cyan start=""""" end=""""" start="'''" end="'''" +#color cyan start="("""[^"]|[^"]""")" end="("""[^"]|[^"]""")" start="'''[^']" end="'''" +#color cyan start="\"\"\"" end="\"\"\"" diff --git a/reST.nanorc b/reST.nanorc new file mode 100644 index 0000000..233e697 --- /dev/null +++ b/reST.nanorc @@ -0,0 +1,27 @@ +## For reST +syntax "rest" "\.rest$" "\.rst$" +# italics +#color magenta "\*[^*]\*" +# bold +color red "\*\*[^*]+\*\*" +# code block +color brightred "::" +# link reference +color blue "`[^`]+`_{1,2}" +# code +color yellow "``[^`]+``" +# directives or comments +color cyan "^\.\. .*$" +# anon link targets +color cyan "^__ .*$" +# h1 +color yellow "^###+$" +color yellow "^\*\*\*+$" +# h2 +color magenta "^===+$" +# h3 +color red "^---+$" +# h4 +color green "^\^\^\^+$" +# h5 +color blue "^"""+$" diff --git a/rpmspec.nanorc b/rpmspec.nanorc new file mode 100644 index 0000000..e05ad6a --- /dev/null +++ b/rpmspec.nanorc @@ -0,0 +1,27 @@ +syntax "rpmspec" "\.spec$" "\.rpmspec$" + +color cyan "\<(Icon|ExclusiveOs|ExcludeOs):" +color cyan "\<(BuildArch|BuildArchitectures|ExclusiveArch|ExcludeArch):" +color cyan "\<(Conflicts|Obsoletes|Provides|Requires|Requires\(.*\)|Enhances|Suggests|BuildConflicts|BuildRequires|Recommends|PreReq|Supplements):" +color cyan "\<(Epoch|Serial|Nosource|Nopatch):" +color cyan "\<(AutoReq|AutoProv|AutoReqProv):" +color cyan "\<(Copyright|License|Summary|Summary\(.*\)|Distribution|Vendor|Packager|Group|Source[0-9]*|Patch[0-9]*|BuildRoot|Prefix):" +color cyan "\<(Name|Version|Release|Url|URL):" +color cyan start="^(Source|Patch)" end=":" +color cyan "(i386|i486|i586|i686|athlon|ia64|alpha|alphaev5|alphaev56|alphapca56|alphaev6|alphaev67|sparc|sparcv9|sparc64armv3l|armv4b|armv4lm|ips|mipsel|ppc|ppc|iseries|ppcpseries|ppc64|m68k|m68kmint|Sgi|rs6000|i370|s390x|s390|noarch)" +color cyan "(ifarch|ifnarch|ifos|ifnos)" +color yellow ""(\\.|[^"])*"|'(\\.|[^'])*'" +color brightyellow "%(if|else|endif|define|global|undefine)" +color brightyellow "%_?([A-Z_a-z_0-9_]*)" +color brightyellow start="%\{" end="\}" +color brightyellow start="%\{__" end="\}" +color brightyellow "\$(RPM_BUILD_ROOT)\>" +color brightmagenta "^%(build$|changelog|check$|clean$|description)" +color brightmagenta "^%(files|install$|package|prep$)" +color brightmagenta "^%(pre|preun|pretrans|post|postun|posttrans)" +color brightmagenta "^%(trigger|triggerin|triggerpostun|triggerun|verifyscript)" +color brightblack "(^|[[:space:]])#([^{].*)?$" +color blue "^\*.*$" +color ,green "[[:space:]]+$" +color ,red " + +| + +" +color brightwhite,cyan "TODO:?" diff --git a/ruby.nanorc b/ruby.nanorc new file mode 100644 index 0000000..36cadf8 --- /dev/null +++ b/ruby.nanorc @@ -0,0 +1,32 @@ +## Here is an example for Ruby. +## +syntax "ruby" "\.rb$" "Gemfile" "config.ru" "Rakefile" "Capfile" "Vagrantfile" +header "^#!.*/(env +)?ruby( |$)" + +## 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/rust.nanorc b/rust.nanorc new file mode 100644 index 0000000..a8e2e90 --- /dev/null +++ b/rust.nanorc @@ -0,0 +1,36 @@ +# Nano configuration for Rust +# Copyright 2015 The Rust Project Developers. +# +# NOTE: Rules are applied in order: later rules re-colorize matching text. +syntax "rust" "\.rs" + +# function definition +color magenta "fn [a-z0-9_]+" + +# Reserved words +color yellow "\<(abstract|alignof|as|become|box|break|const|continue|crate|do|else|enum|extern|false|final|fn|for|if|impl|in|let|loop|macro|match|mod|move|mut|offsetof|override|priv|pub|pure|ref|return|sizeof|static|self|struct|super|true|trait|type|typeof|unsafe|unsized|use|virtual|where|while|yield)\>" + +# macros +color red "[a-z_]+!" + +# Constants +color magenta "[A-Z][A-Z_]+" + +# Traits/Enums/Structs/Types/etc. +color magenta "[A-Z][a-z]+" + +# Strings +color green "\".*\"" +color green start="\".*\\$" end=".*\"" +# NOTE: This isn't accurate but matching "#{0,} for the end of the string is too liberal +color green start="r#+\"" end="\"#+" + +# Comments +color blue "//.*" +color blue start="/\*" end="\*/" + +# Attributes +color magenta start="#!\[" end="\]" + +# Some common markers +color brightcyan "(XXX|TODO|FIXME|\?\?\?)" diff --git a/scala.nanorc b/scala.nanorc new file mode 100644 index 0000000..b5cf0ea --- /dev/null +++ b/scala.nanorc @@ -0,0 +1,12 @@ +## Here is an example for Scala. +## +syntax "scala" "\.scala$" +color green "\<(boolean|byte|char|double|float|int|long|new|short|this|transient|void)\>" +color red "\<(match|val|var|break|case|catch|continue|default|do|else|finally|for|if|return|switch|throw|try|while)\>" +color cyan "\<(def|object|case|trait|lazy|implicit|abstract|class|extends|final|implements|import|instanceof|interface|native|package|private|protected|public|static|strictfp|super|synchronized|throws|volatile|sealed)\>" +color red ""[^"]*"" +color yellow "\<(true|false|null)\>" +color blue "//.*" +color blue start="/\*" end="\*/" +color brightblue start="/\*\*" end="\*/" +color ,green "[[:space:]]+$" diff --git a/sed.nanorc b/sed.nanorc new file mode 100644 index 0000000..84cbafc --- /dev/null +++ b/sed.nanorc @@ -0,0 +1,9 @@ +syntax "sed" "\.sed$" +header "^#!.*bin/(env +)?sed( |$)" + +color red "[|^$.*+]" +color brightyellow "\{[0-9]+,?[0-9]*\}" +color magenta "\\." +color brightblack "(^|[[:space:]])#([^{].*)?$" +color ,green "[[:space:]]+$" +color ,red " + +| + +" diff --git a/sh.nanorc b/sh.nanorc new file mode 100644 index 0000000..5f0f729 --- /dev/null +++ b/sh.nanorc @@ -0,0 +1,15 @@ +## Here is an example for Bourne shell scripts. +## +syntax "sh" "\.sh$" "\.bashrc" "bashrc" "\.bash_aliases" "bash_aliases" "\.bash_functions" "bash_functions" "\.bash_profile" "bash_profile" +header "^#!.*/(env +)?(ba)?sh( |$)" + +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 brightgreen "^\s+[0-9A-Z_]+\s+\(\)" +icolor brightred "\$\{?[0-9A-Z_!@#$*?-]+\}?" +color brightyellow ""(\\.|[^"])*"" "'(\\.|[^'])*'" +color cyan "(^|[[:space:]])#.*$" +#color ,green "[[:space:]]+$" diff --git a/sls.nanorc b/sls.nanorc new file mode 100644 index 0000000..c600865 --- /dev/null +++ b/sls.nanorc @@ -0,0 +1,26 @@ +## SaltStack files (*.sls) +## + +syntax "salt" "\.sls$" + +# Anything ending in a colon (:), including things that start with a dash (-) +color blue "^[^ -].*:$" +color blue ".*:" +# Except for salt:// URLs +color white "salt:" + +# Numbers, etc +color red "/*[0-9]/*" +color red "\<(True|False)\>" + +# Anything between two single quotes +color green ""(\\.|[^"])*"|'(\\.|[^'])*'" + +# Matching keywords +color yellow "\<(grain|grains|compound|pcre|grain_pcre|list|pillar)\>" + +# Comments +color brightblack "^#.*" + +# Logic keywords +color magenta "\<(if|elif|else|or|not|and|endif|end)\>" diff --git a/sql.nanorc b/sql.nanorc new file mode 100644 index 0000000..650214a --- /dev/null +++ b/sql.nanorc @@ -0,0 +1,34 @@ +syntax "sql" "\.sql$" "sqliterc$" + +icolor cyan "\<(ALL|ASC|AS|ALTER|AND|ADD|AUTO_INCREMENT)\>" +icolor cyan "\<(BETWEEN|BINARY|BOTH|BY|BOOLEAN)\>" +icolor cyan "\<(CHANGE|CHECK|COLUMNS|COLUMN|CROSS|CREATE)\>" +icolor cyan "\<(DATABASES|DATABASE|DATA|DELAYED|DESCRIBE|DESC|DISTINCT|DELETE|DROP|DEFAULT)\>" +icolor cyan "\<(ENCLOSED|ESCAPED|EXISTS|EXPLAIN)\>" +icolor cyan "\<(FIELDS|FIELD|FLUSH|FOR|FOREIGN|FUNCTION|FROM)\>" +icolor cyan "\<(GROUP|GRANT|HAVING)\>" +icolor cyan "\<(IGNORE|INDEX|INFILE|INSERT|INNER|INTO|IDENTIFIED|IN|IS|IF)\>" +icolor cyan "\<(JOIN|KEYS|KILL|KEY)\>" +icolor cyan "\<(LEADING|LIKE|LIMIT|LINES|LOAD|LOCAL|LOCK|LOW_PRIORITY|LEFT|LANGUAGE)\>" +icolor cyan "\<(MODIFY|NATURAL|NOT|NULL|NEXTVAL)\>" +icolor cyan "\<(OPTIMIZE|OPTION|OPTIONALLY|ORDER|OUTFILE|OR|OUTER|ON)\>" +icolor cyan "\<(PROCEDURE|PROCEDURAL|PRIMARY)\>" +icolor cyan "\<(READ|REFERENCES|REGEXP|RENAME|REPLACE|RETURN|REVOKE|RLIKE|RIGHT)\>" +icolor cyan "\<(SHOW|SONAME|STATUS|STRAIGHT_JOIN|SELECT|SETVAL|SET)\>" +icolor cyan "\<(TABLES|TERMINATED|TO|TRAILING|TRUNCATE|TABLE|TEMPORARY|TRIGGER|TRUSTED)\>" +icolor cyan "\<(UNIQUE|UNLOCK|USE|USING|UPDATE|VALUES|VARIABLES|VIEW)\>" +icolor cyan "\<(WITH|WRITE|WHERE|ZEROFILL|TYPE|XOR)\>" +color green "\<(VARCHAR|TINYINT|TEXT|DATE|SMALLINT|MEDIUMINT|INT|INTEGER|BIGINT|FLOAT|DOUBLE|DECIMAL|DATETIME|TIMESTAMP|TIME|YEAR|UNSIGNED|CHAR|TINYBLOB|TINYTEXT|BLOB|MEDIUMBLOB|MEDIUMTEXT|LONGBLOB|LONGTEXT|ENUM|BOOL|BINARY|VARBINARY)\>" + +# SQLite meta commands +icolor cyan "\.\<(databases|dump|echo|exit|explain|header(s)?|help)\>" +icolor cyan "\.\<(import|indices|mode|nullvalue|output|prompt|quit|read)\>" +icolor cyan "\.\<(schema|separator|show|tables|timeout|width)\>" +color brightcyan "\<(ON|OFF)\>" + +color blue "\<([0-9]+)\>" +color yellow ""(\\.|[^"])*"|'(\\.|[^'])*'" +color yellow "`(\\.|[^\\`])*`" +color brightblack "\-\-.*$" +color ,green "[[:space:]]+$" +color ,red " + +| + +" diff --git a/systemd.nanorc b/systemd.nanorc new file mode 100644 index 0000000..1a3ea91 --- /dev/null +++ b/systemd.nanorc @@ -0,0 +1,12 @@ +syntax "systemd" "\.(service|socket)$" +header "^\[Unit\]$" + +color cyan "^(Accept|After|Alias|AllowIsolate|Also|ANSI_COLOR|_AUDIT_LOGINUID|_AUDIT_SESSION|Backlog|Before|BindIPv6Only|BindsTo|BindToDevice|BlockIOReadBandwidth|BlockIOWeight|BlockIOWriteBandwidth|_BOOT_ID|Broadcast|BUG_REPORT_URL|BusName|Capabilities|CapabilityBoundingSet|CHASSIS|cipher|class|_CMDLINE|CODE_FILE|CODE_FUNC|CODE_LINE|_COMM|Compress|ConditionACPower|ConditionCapability|ConditionDirectoryNotEmpty|ConditionFileIsExecutable|ConditionFileNotEmpty|ConditionHost|ConditionKernelCommandLine|ConditionNull|ConditionPathExists|ConditionPathExistsGlob|ConditionPathIsDirectory|ConditionPathIsMountPoint|ConditionPathIsReadWrite|ConditionPathIsSymbolicLink|ConditionSecurity|ConditionVirtualization|Conflicts|ControlGroup|ControlGroupAttribute|ControlGroupModify|ControlGroupPersistent|controllers|Controllers|CPE_NAME|CPUAffinity|CPUSchedulingPolicy|CPUSchedulingPriority|CPUSchedulingResetOnFork|CPUShares|CrashChVT|CrashShell|__CURSOR|debug|DefaultControllers|DefaultDependencies|DefaultLimitAS|DefaultLimitCORE|DefaultLimitCPU|DefaultLimitDATA|DefaultLimitFSIZE|DefaultLimitLOCKS|DefaultLimitMEMLOCK|DefaultLimitMSGQUEUE|DefaultLimitNICE|DefaultLimitNOFILE|DefaultLimitNPROC|DefaultLimitRSS|DefaultLimitRTPRIO|DefaultLimitRTTIME|DefaultLimitSIGPENDING|DefaultLimitSTACK|DefaultStandardError|DefaultStandardOutput|Description|DeviceAllow|DeviceDeny|DirectoryMode|DirectoryNotEmpty|Documentation|DumpCore|entropy|Environment|EnvironmentFile|ERRNO|event_timeout|_EXE|ExecReload|ExecStart|ExecStartPost|ExecStartPre|ExecStop|ExecStopPost|ExecStopPre|filter|FONT|FONT_MAP|FONT_UNIMAP|ForwardToConsole|ForwardToKMsg|ForwardToSyslog|FreeBind|freq|FsckPassNo|fstab|_GID|Group|GuessMainPID|HandleHibernateKey|HandleLidSwitch|HandlePowerKey|HandleSuspendKey|hash|HibernateKeyIgnoreInhibited|HOME_URL|_HOSTNAME|ICON_NAME|ID|IdleAction|IdleActionSec|ID_LIKE|ID_MODEL|ID_MODEL_FROM_DATABASE|IgnoreOnIsolate|IgnoreOnSnapshot|IgnoreSIGPIPE|InaccessibleDirectories|InhibitDelayMaxSec|init|IOSchedulingClass|IOSchedulingPriority|IPTOS|IPTTL|JobTimeoutSec|JoinControllers|KeepAlive|KEYMAP|KEYMAP_TOGGLE|KillExcludeUsers|KillMode|KillOnlyUsers|KillSignal|KillUserProcesses|LidSwitchIgnoreInhibited|LimitAS|LimitCORE|LimitCPU|LimitDATA|LimitFSIZE|LimitLOCKS|LimitMEMLOCK|LimitMSGQUEUE|LimitNICE|LimitNOFILE|LimitNPROC|LimitRSS|LimitRTPRIO|LimitRTTIME|LimitSIGPENDING|LimitSTACK|link_priority|valueListenDatagram|ListenFIFO|ListenMessageQueue|ListenNetlink|ListenSequentialPacket|ListenSpecial|ListenStream|LogColor|LogLevel|LogLocation|LogTarget|luks|_MACHINE_ID|MakeDirectory|Mark|MaxConnections|MaxFileSec|MaxLevelConsole|MaxLevelKMsg|MaxLevelStore|MaxLevelSyslog|MaxRetentionSec|MemoryLimit|MemorySoftLimit|MESSAGE|MESSAGE_ID|MessageQueueMaxMessages|MessageQueueMessageSize|__MONOTONIC_TIMESTAMP|MountFlags|NAME|NAutoVTs|Nice|NonBlocking|NoNewPrivileges|NotifyAccess|OnActiveSec|OnBootSec|OnCalendar|OnFailure|OnFailureIsolate|OnStartupSec|OnUnitActiveSec|OnUnitInactiveSec|OOMScoreAdjust|Options|output|PAMName|PartOf|PassCredentials|PassSecurity|PathChanged|PathExists|PathExistsGlob|PathModified|PermissionsStartOnly|_PID|PIDFile|PipeSize|PowerKeyIgnoreInhibited|PRETTY_HOSTNAME|PRETTY_NAME|Priority|PRIORITY|PrivateNetwork|PrivateTmp|PropagatesReloadTo|pss|RateLimitBurst|RateLimitInterval|ReadOnlyDirectories|ReadWriteDirectories|__REALTIME_TIMESTAMP|ReceiveBuffer|RefuseManualStart|RefuseManualStop|rel|ReloadPropagatedFrom|RemainAfterExit|RequiredBy|Requires|RequiresMountsFor|RequiresOverridable|Requisite|RequisiteOverridable|ReserveVT|ResetControllers|Restart|RestartPreventExitStatus|RestartSec|RootDirectory|RootDirectoryStartOnly|RuntimeKeepFree|RuntimeMaxFileSize|RuntimeMaxUse|RuntimeWatchdogSec|samples|scale_x|scale_y|Seal|SecureBits|_SELINUX_CONTEXT|SendBuffer|SendSIGKILL|Service|ShowStatus|ShutdownWatchdogSec|size|SmackLabel|SmackLabelIPIn|SmackLabelIPOut|SocketMode|Sockets|SourcePath|_SOURCE_REALTIME_TIMESTAMP|SplitMode|StandardError|StandardInput|StandardOutput|StartLimitAction|StartLimitBurst|StartLimitInterval|static_node|StopWhenUnneeded|Storage|string_escape|none|replaceSuccessExitStatus|SupplementaryGroups|SUPPORT_URL|SuspendKeyIgnoreInhibited|SyslogFacility|SYSLOG_FACILITY|SyslogIdentifier|SYSLOG_IDENTIFIER|SyslogLevel|SyslogLevelPrefix|SYSLOG_PID|SystemCallFilter|SYSTEMD_ALIAS|_SYSTEMD_CGROUP|_SYSTEMD_OWNER_UID|SYSTEMD_READY|_SYSTEMD_SESSION|_SYSTEMD_UNIT|_SYSTEMD_USER_UNIT|SYSTEMD_WANTS|SystemKeepFree|SystemMaxFileSize|SystemMaxUse|SysVStartPriority|TCPCongestion|TCPWrapName|timeout|TimeoutSec|TimeoutStartSec|TimeoutStopSec|TimerSlackNSec|Transparent|_TRANSPORT|tries|TTYPath|TTYReset|TTYVHangup|TTYVTDisallocate|Type|_UID|UMask|Unit|User|UtmpIdentifier|VERSION|VERSION_ID|WantedBy|Wants|WatchdogSec|What|Where|WorkingDirectory)=" +color brightblue "^\.include\>" +color red "=" +color brightmagenta "^\[(Unit|Install|Service|Socket)\]" +color brightyellow "\$MAINPID" +color brightcyan "\<(true|false)\>" +color brightblack "(^|[[:space:]])#([^{].*)?$" +color ,green "[[:space:]]+$" +color ,red " + +| + +" diff --git a/tcl.nanorc b/tcl.nanorc new file mode 100644 index 0000000..2959512 --- /dev/null +++ b/tcl.nanorc @@ -0,0 +1,24 @@ +syntax "tcl" "\.tcl$" +header "^#!.*/(env +)?tclsh( |$)" + +## Standard Tcl [info commands] +color cyan "\<(after|append|array|auto_execok|auto_import|auto_load|auto_load_index|auto_qualify|binary|break|case|catch|cd|clock|close|concat|continue|else|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 cyan "\<(array anymore|array donesearch|array exists|array get|array names|array nextelement|array set|array size|array startsearch|array statistics|array unset)\>" +color cyan "\<(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 cyan "\<(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)\>" +## Function declaration +color brightblue "proc[[:space:]]" "(\{|\})" +## Syntax +color green "(\(|\)|\;|`|\\|\$|<|>|!|=|&|\|)" +## Numbers +color brightyellow "\<[0-9]+(\.[0-9]+)?\>" +## Strings +color yellow ""(\\.|[^"])*"" "'(\\.|[^'])*'" +## Variables +icolor brightred "\$\{?[0-9A-Z_!@#$*?-]+\}?" +## Comments +color magenta "(^|;)[[:space:]]*#.*" +## Trailing whitespace +color ,blue "[[:space:]]+$" diff --git a/tex.nanorc b/tex.nanorc new file mode 100644 index 0000000..76cc469 --- /dev/null +++ b/tex.nanorc @@ -0,0 +1,8 @@ +## Here is a short example for TeX files. +## +syntax "tex" "\.tex$" "bib" "\.bib$" "cls" "\.cls$" +color yellow "\$[^$]*\$" +icolor green "\\.|\\[A-Z]*" +color magenta "[{}]" +color blue "%.*" +color blue start="\\begin\{comment\}" end="\\end\{comment\}" diff --git a/vala.nanorc b/vala.nanorc new file mode 100644 index 0000000..34509bd --- /dev/null +++ b/vala.nanorc @@ -0,0 +1,18 @@ +syntax "vala" "\.vala$" + +color green "\<(float|double|bool|char|int|uint|short|long|void|(un)?signed)\>" +color brightblue "[A-Za-z_][A-Za-z0-9_]*[[:space:]]*[()]" +color cyan "\<(for|if|while|do|else|case|default|switch|try|throw|catch)\>" +color cyan "\<(inline|typedef|struct|enum|union|extern|static|const)\>" +color cyan "\<(operator|new|delete|return|null)\>" +color cyan "\<(class|override|private|public|signal|this|weak)\>" +color brightred "\<(goto|break|continue)\>" +color brightcyan "\<(true|false)\>" +color blue "\<([0-9]+)\>" +color red "[-+/*=<>?:!~%&|]" "->" +color yellow ""(\\.|[^"])*"|'(\\.|[^'])*'" +color brightblack "(^|[[:space:]])//.*" +color brightblack start="/\*" end="\*/" +color brightwhite,cyan "TODO:?" +color ,green "[[:space:]]+$" +color ,red " + +| + +" diff --git a/vi.nanorc b/vi.nanorc new file mode 100644 index 0000000..719dd16 --- /dev/null +++ b/vi.nanorc @@ -0,0 +1,10 @@ +syntax "vi" "(^|/|\.)(ex|vim)rc$|\.vim" + +color brightblue "[A-Za-z_][A-Za-z0-9_]*[[:space:]]*[()]" +color cyan "\<([nvxsoilc]?(nore|un)?map|[nvlx]n|[ico]?no|[cilovx][um]|s?unm)\>" +color cyan "\<(snor|nun|nm|set|if|endif|let|unlet)\>" +color red "[!&=]" +color yellow ""(\\.|[^"])*"|'(\\.|[^'])*'" +color brightblack "(^|[[:space:]])\"[^"]*$" +color ,green "[[:space:]]+$" +color ,red " + +| + +" diff --git a/xml.nanorc b/xml.nanorc new file mode 100644 index 0000000..859f0dc --- /dev/null +++ b/xml.nanorc @@ -0,0 +1,11 @@ +## Here is an example for xml files. +## + +syntax "ml" ".*\.([jrs]?html?|xml|sgml?|rng)$" +color white "^.+$" +color green start="<" end=">" +color cyan "<[^> ]+" +color cyan ">" +color yellow start="" +color yellow start="" +color red "&[^;]*;" diff --git a/xresources.nanorc b/xresources.nanorc new file mode 100644 index 0000000..a49cb3f --- /dev/null +++ b/xresources.nanorc @@ -0,0 +1,10 @@ +syntax "xresources" "X(defaults|resources)$" + +color green "^[[:alnum:]]+\*" +color brightyellow "\*[[:alnum:]]+\:" +color blue "\<[0-9]+\>" +color red "[*:=]" +color brightcyan "\<(true|false)\>" +color brightblack "(^|[[:space:]])#([^{].*)?$" +color ,green "[[:space:]]+$" +color ,red " + +| + +" diff --git a/yaml.nanorc b/yaml.nanorc new file mode 100644 index 0000000..c2b926b --- /dev/null +++ b/yaml.nanorc @@ -0,0 +1,13 @@ +syntax "yaml" "\.ya?ml$" +header "^---" "%YAML" + +color green "(^| )!!(binary|bool|float|int|map|null|omap|seq|set|str) " +color brightcyan "\<(YES|yes|Y|y|ON|on|NO|no|N|n|OFF|off)\>" +color brightcyan "\<(true|false)\>" +color red ":[[:space:]]" "\[" "\]" ":[[:space:]]+[|>]" "^[[:space:]]*- " +color brightyellow "[[:space:]][\*&][A-Za-z0-9]+" +color yellow ""(\\.|[^"])*"|'(\\.|[^'])*'" +color brightblack "(^|[[:space:]])#([^{].*)?$" +color brightmagenta "^---" "^\.\.\." "^%YAML" "^%TAG" +color ,green "[[:space:]]+$" +color ,red " + +| + +" diff --git a/yum.nanorc b/yum.nanorc new file mode 100644 index 0000000..6ca9f05 --- /dev/null +++ b/yum.nanorc @@ -0,0 +1,8 @@ +syntax "yum" "\.repo$|yum.*\.conf$" + +color cyan "^[[:space:]]*[^=]*=" +color brightmagenta "^[[:space:]]*\[.*\]$" +color brightyellow "\$(releasever|arch|basearch|uuid|YUM[0-9])" +color brightblack "(^|[[:space:]])#([^{].*)?$" +color ,green "[[:space:]]+$" +color ,red " + +| + +" diff --git a/zsh.nanorc b/zsh.nanorc new file mode 100644 index 0000000..2cea839 --- /dev/null +++ b/zsh.nanorc @@ -0,0 +1,41 @@ +## Syntax highlighting for ZSH scripts (initially copied from sh.nanorc) +syntax "zsh" "\.zsh$" "\.?(zshenv|zprofile|zshrc|zlogin|zlogout)$" +header "^#!.*/(env +)?zsh( |$)" + +## Numbers +color brightyellow "\b[0-9]+\b" + +## Conditionals and control flow +color green "\<(always|break|bye|case|continue|disown|do|done|elif|else|esac|exit|fi|for|function|if|in|local|read|return|select|shift|then|time|until|while)\>" + +color green "(\{|\}|\(|\)|\;|\]|\[|`|\\|\$|<|>|!|=|&|\|)" +## Conditional flags +color green "-[Ldefgruwx]\>" +color green "-(eq|ne|gt|lt|ge|le|s|n|z)\>" + +## Bash-inherited +color brightblue "\<((un)?alias|bindkey|builtin|cd|declare|eval|exec|export|jobs|let|popd|pushd|set|source|typeset|umask|unset)\>" +## ZSH-specific +color brightblue "\<(add-zsh-hook|autoload|chdir|compinit|dirs|(dis|en)able|echotc|emulate|print|prompt(init)?|(un)?setopt|zle|zmodload|zstyle|whence)\>" + +## Common linux commands +color brightmagenta "\<((g|ig)?awk|find|\w{0,4}grep|kill|killall|\w{0,4}less|make|pkill|sed|tar)\>" +## Coreutils commands +color brightmagenta "\<(base64|basename|cat|chcon|chgrp|chmod|chown|chroot|cksum|comm|cp|csplit|cut|date|dd|df|dir|dircolors|dirname|du|echo|env|expand|expr|factor|false|fmt|fold|head|hostid|id|install|join|link|ln|logname|ls|md5sum|mkdir|mkfifo|mknod|mktemp|mv|nice|nl|nohup|nproc|numfmt|od|paste|pathchk|pinky|pr|printenv|printf|ptx|pwd|readlink|realpath|rm|rmdir|runcon|seq|(sha1|sha224|sha256|sha384|sha512)sum|shred|shuf|sleep|sort|split|stat|stdbuf|stty|sum|sync|tac|tail|tee|test|timeout|touch|tr|true|truncate|tsort|tty|uname|unexpand|uniq|unlink|users|vdir|wc|who|whoami|yes)\>" + +## Function definition +icolor brightgreen "^\s+(function\s+)[0-9A-Z_]+\s+\(\)" + +## Variables +icolor brightred "\$\{?[0-9A-Z_!@#$*?-]+\}?" + +## Strings +color yellow ""(\\.|[^"])*"" +color yellow "'(\\.|[^'])*'" + +## Comments +color cyan "(^|[[:space:]])#.*$" +color brightcyan "(^|[[:space:]])##.*$" + +## Trailing spaces +color ,blue "[[:space:]]+$" diff --git a/zshrc.nanorc b/zshrc.nanorc new file mode 120000 index 0000000..925a14a --- /dev/null +++ b/zshrc.nanorc @@ -0,0 +1 @@ +zsh.nanorc \ No newline at end of file