Skip to content

Commit

Permalink
Adding Syntax Higlighting for nano (#123)
Browse files Browse the repository at this point in the history
  • Loading branch information
adiee5 committed Feb 8, 2024
1 parent 386a391 commit 3cc858d
Show file tree
Hide file tree
Showing 2 changed files with 80 additions and 0 deletions.
66 changes: 66 additions & 0 deletions syntax-files/nano/prog8.nanorc
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
## Prog8 syntax

## Created by Adiee5
## If issues encountered, make an issue on prog8 github page and ping @Adiee5
## Licensed under GPL v3

syntax prog8 "\.p8$"
comment ";"

# Index thing and Array literals
##color teal "\[[^]]*\]" ## nword
color teal "\]"
color teal "\["

# Scope Parents
color lightblack "[[:alpha:]][[:alnum:]_]*\."

# function
color brightyellow "[[:alpha:]][[:alnum:]_]*[[:blank:]]*\("

# Key Words
color lightgreen "\<(true|if_cs|if_eq|if_mi|if_vs|if_z|if_neg)\>"
color lightred "\<(false|if_cc|if_ne|if_pl|if_vc|if_nz|if_pos)\>"
color red "\<if(\>|_)"
color red "\<(sub|(inline[[:space:]]+)?asmsub|romsub|else|void|not|and|x?or|for|in|(down)?to|return|while|repeat|break|continue|step|goto|when|as|const|do|until|unroll)\>"

# Labels
color sky "^[[:alpha:]][[:alnum:]_]*:"

# Data Types
color crimson "\<(u?byte|u?word|str|bool|float)\>"

# Brackets
color yellow "[()]"

# @
color brightmagenta "@[[:blank:]]*[[:alnum:]_]*"

# &
color brick "&"

# Arrows
color lagoon "->"

# Encoding
color cyan "[[:alnum:]_]+:["']"

# char literal
color brightcyan "'([^\\]|\\([^ux]|u[0-9A-Fa-f]{4}|x[[:alnum:]]{2}))'"

# %asm handling
color normal start="%[Aa][Ss][Mm]" end="}}"
color magenta "%[Aa][Sm][Mm]"

# Directives
color magenta "^[[:space:]]*%[[:alpha:]]+"

# Strings
color brightblue ""([^"]|\\")*""

# Comments
color green ";.*"
color green start="/\*" end="\*/"

# Trailing Whitespace
color ,green "[[:space:]]+$"
14 changes: 14 additions & 0 deletions syntax-files/nano/readme.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
# Syntax Highlight for **nano**

Contributed to prog8 by Adiee5

In order to use this. you need to download the `prog8.nanorc` file. You can download it wherever you want to,
preferably at `~/.config/nano/`. Then, you need to include this file into your `nanorc` file
(it's at `~/.nanorc` or `~/.config/nano/nanorc`, alternatively, you could edit the global `/etc/nanorc` file).
All you neet to do is to add this to your config file:

```nanorc
## prog8 syntax file:
include "/path/to/your/prog8.nanorc"
```
After that, enjoy the syntax highlighting!

0 comments on commit 3cc858d

Please sign in to comment.