mirror of
https://github.com/scopatz/nanorc
synced 2024-11-22 08:35:39 +01:00
Resolved merge conflict
This commit is contained in:
commit
225e9972ef
39
Rnw.nanorc
Normal file
39
Rnw.nanorc
Normal file
@ -0,0 +1,39 @@
|
|||||||
|
## Here is a short example for TeX files.
|
||||||
|
##
|
||||||
|
syntax "Tex" "\.Rnw$" "bib" "\.bib$" "cls" "\.cls$"
|
||||||
|
color yellow "\$(\\\$|[^$])*[^\\]\$"
|
||||||
|
color yellow "\$\$(\\\$|[^$])*[^\\]\$\$"
|
||||||
|
icolor green "\\.|\\[A-Z]*"
|
||||||
|
color magenta "[{}]"
|
||||||
|
color red start="<<" end=">>="
|
||||||
|
color white start=">>=" end="@"
|
||||||
|
|
||||||
|
color brightblue "%.*"
|
||||||
|
color brightblue "^[[:space:]]*#.*"
|
||||||
|
color brightblue start="\\begin\{comment\}" end="\\end\{comment\}"
|
||||||
|
|
||||||
|
color green "(class|extends|goto) ([a-zA-Z0-9_]*)"
|
||||||
|
color green "[^a-z0-9_-]{1}(var|class|function|echo|case|break|default|exit|switch|if|else|elseif|endif|foreach|endforeach|@|while|public|private|protected|return|true|false|null|TRUE|FALSE|NULL|const|static|extends|as|array|require|include|require_once|include_once|define|do|continue|declare|goto|print|in|namespace|use)[^a-z0-9_-]{1}"
|
||||||
|
|
||||||
|
# Functions
|
||||||
|
color blue "([a-zA-Z0-9_\-$\.]*)\("
|
||||||
|
|
||||||
|
# Variables
|
||||||
|
color magenta "[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 blue "(\$this|parent::|self::|\$this->)"
|
||||||
|
# Bitwise Operations
|
||||||
|
color magenta "(\;|\||\^){1}"
|
||||||
|
# And/Or/SRO/etc
|
||||||
|
color green "(\;\;|\|\||::|=>|->)"
|
||||||
|
# STRINGS!
|
||||||
|
color red "('[^']*')|(\"[^\"]*\")"
|
||||||
|
|
23
gradle.nanorc
Normal file
23
gradle.nanorc
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
syntax "groovy" "\.(groovy|gradle)$"
|
||||||
|
|
||||||
|
# Keywords
|
||||||
|
color brightblue "\<(boolean|byte|char|double|enum|float|int|long|new|short|super|this|transient)\>"
|
||||||
|
color brightblue "\<(as|assert|break|case|catch|continue|default|do|else|finally|for|goto|if|in|return|switch|throw|try|while)\>"
|
||||||
|
color brightblue "\<(abstract|class|extends|implements|import|interface|native|package|private|protected|public|static|strictfp|synchronized|throws|trait|void|volatile)\>"
|
||||||
|
color brightblue "\<(const|def|final|instanceof)\>"
|
||||||
|
color brightblue "\<(true|false|null)\>"
|
||||||
|
|
||||||
|
# Strings
|
||||||
|
color brightyellow ""(\\.|[^"])*"" "'(\\.|[^'])*'"
|
||||||
|
|
||||||
|
# Interpolation
|
||||||
|
icolor yellow "\$\{[^\}]*}"
|
||||||
|
|
||||||
|
# Comments
|
||||||
|
color cyan "^//.*"
|
||||||
|
color cyan "\s//.*"
|
||||||
|
color cyan start="^/\*(\*)?" end="\*/"
|
||||||
|
color cyan start="\s/\*(\*)?" end="\*/"
|
||||||
|
|
||||||
|
# Trailing whitespace
|
||||||
|
color ,green "[[:space:]]+$"
|
1
nanorc
1
nanorc
@ -24,6 +24,7 @@ include "~/.nano/git.nanorc"
|
|||||||
include "~/.nano/gitcommit.nanorc"
|
include "~/.nano/gitcommit.nanorc"
|
||||||
include "~/.nano/glsl.nanorc"
|
include "~/.nano/glsl.nanorc"
|
||||||
include "~/.nano/go.nanorc"
|
include "~/.nano/go.nanorc"
|
||||||
|
include "~/.nano/gradle.nanorc"
|
||||||
include "~/.nano/groff.nanorc"
|
include "~/.nano/groff.nanorc"
|
||||||
include "~/.nano/haml.nanorc"
|
include "~/.nano/haml.nanorc"
|
||||||
include "~/.nano/haskell.nanorc"
|
include "~/.nano/haskell.nanorc"
|
||||||
|
41
readme.md
41
readme.md
@ -2,11 +2,11 @@
|
|||||||
|
|
||||||
This repository holds ``{lang}.nanorc`` files that have improved definitions of syntax highlighting for various languages.
|
This repository holds ``{lang}.nanorc`` files that have improved definitions of syntax highlighting for various languages.
|
||||||
|
|
||||||
# Installation
|
## Installation
|
||||||
|
|
||||||
There are three ways to install this repo.
|
There are three ways to install this repo.
|
||||||
|
|
||||||
## 1. Automatic installer
|
### 1. Automatic installer
|
||||||
|
|
||||||
Copy the following code to download and run the installer script:
|
Copy the following code to download and run the installer script:
|
||||||
|
|
||||||
@ -20,28 +20,29 @@ If your machine doesn't have `curl` command, use this code:
|
|||||||
wget https://raw.githubusercontent.com/scopatz/nanorc/master/install.sh -O- | sh
|
wget https://raw.githubusercontent.com/scopatz/nanorc/master/install.sh -O- | sh
|
||||||
```
|
```
|
||||||
|
|
||||||
### Note:
|
#### Note
|
||||||
|
|
||||||
Some syntax definitions which exist in Nano upstream may be preferable to the ones provided by this package.
|
Some syntax definitions which exist in Nano upstream may be preferable to the ones provided by this package.
|
||||||
The ` install.sh` script may be run with `-l` or `--lite` to insert the included syntax definitions from this package with *lower* precedence than the ones provided by the standard package.
|
The ` install.sh` script may be run with `-l` or `--lite` to insert the included syntax definitions from this package with *lower* precedence than the ones provided by the standard package.
|
||||||
|
|
||||||
## 2. Package managers
|
### 2. Package managers
|
||||||
|
|
||||||
The follow table lists all systems with this package published.
|
The follow table lists all systems with this package published.
|
||||||
Fell free to add your official package manager.
|
Fell free to add your official package manager.
|
||||||
> Systems that are based in others' package managers or repositories are compatible. For example: `pacman/aur` based systems are compatible with `Arch Linux`.
|
> Systems that are based in others' package managers or repositories are compatible. For example: `pacman/aur` based systems are compatible with `Arch Linux`.
|
||||||
|
|
||||||
| System | Command |
|
| System | Command |
|
||||||
| --- | --- |
|
| ---------- | ---------------------------------------- |
|
||||||
| Arch Linux | `aurman -S nano-syntax-highlighting-git` or `aurman -Ss nano-syntax-highlight` |
|
| Arch Linux | `aurman -Ss nano-syntax-highlight` |
|
||||||
|
| | `aurman -S nano-syntax-highlighting-git` |
|
||||||
|
|
||||||
## 3. Clone repo (copy the files)
|
### 3. Clone repo (copy the files)
|
||||||
|
|
||||||
The files should be placed inside of the `~/.nano/` directory.
|
The files should be placed inside of the `~/.nano/` directory.
|
||||||
|
|
||||||
> You can put the files in another directory inside the correct `.nano` folder.
|
You can put the files in another directory inside the correct `.nano` folder.
|
||||||
> For example: `~/.nano/nanorc/`.
|
For example: `~/.nano/nanorc/`.
|
||||||
> For readability will use `$install_path` for the path of your choose (in *system wide* the path is always `/usr/share/nano-syntax-highlighting/`).
|
For readability will use `$install_path` for the path of your choose (in *system wide* the path is always `/usr/share/nano-syntax-highlighting/`).
|
||||||
|
|
||||||
For user, only run:
|
For user, only run:
|
||||||
|
|
||||||
@ -52,29 +53,29 @@ For system wide, run:
|
|||||||
|
|
||||||
`sudo git clone https://github.com/scopatz/nanorc.git $install_path`
|
`sudo git clone https://github.com/scopatz/nanorc.git $install_path`
|
||||||
|
|
||||||
# Configuration
|
## Configuration
|
||||||
|
|
||||||
After installation, you need to inform `nano` to used the new highlight files.
|
After installation, you need to inform `nano` to used the new highlight files.
|
||||||
The configuration file is located at `~/.nanorc`, for users, and at `/etc/nanorc`, for system wide.
|
The configuration file is located at `~/.nanorc`, for users, and at `/etc/nanorc`, for system wide.
|
||||||
> If this file doesn't exist, create a new one.
|
If this file doesn't exist, create a new one.
|
||||||
|
|
||||||
Again there are three ways:
|
Again there are three ways:
|
||||||
|
|
||||||
## 1. Include all
|
### 1. Include all
|
||||||
|
|
||||||
Append the content of the folder in one line, with wildcard::
|
Append the content of the folder in one line, with wildcard::
|
||||||
|
|
||||||
`echo "include $install_path/*.nanorc" >> ~/.nanorc` or
|
`echo "include $install_path/*.nanorc" >> ~/.nanorc` or
|
||||||
`echo "include $install_path/*.nanorc" >> /etc/nanorc`
|
`echo "include $install_path/*.nanorc" >> /etc/nanorc`
|
||||||
|
|
||||||
## 2. Include/append our `nanorc` file
|
### 2. Include/append our `nanorc` file
|
||||||
|
|
||||||
Simply run:
|
Simply run:
|
||||||
|
|
||||||
`cat $install_path/nanorc >> ~/.nanorc` or
|
`cat $install_path/nanorc >> ~/.nanorc` or
|
||||||
`cat $install_path/nanorc >> /etc/nanorc`
|
`cat $install_path/nanorc >> /etc/nanorc`
|
||||||
|
|
||||||
## 3. One by one
|
### 3. One by one
|
||||||
|
|
||||||
Add your preferable languages one by onento the file. For example:
|
Add your preferable languages one by onento the file. For example:
|
||||||
|
|
||||||
@ -83,16 +84,16 @@ Add your preferable languages one by onento the file. For example:
|
|||||||
include "~/.nano/c.nanorc"
|
include "~/.nano/c.nanorc"
|
||||||
```
|
```
|
||||||
|
|
||||||
# Tricks & Tweaks
|
## Tricks & Tweaks
|
||||||
|
|
||||||
## MacOS
|
### MacOS
|
||||||
|
|
||||||
`\<` and `\>` are regular character escapes on MacOS.
|
`\<` and `\>` are regular character escapes on MacOS.
|
||||||
The bug is fixed in Nano, but this might be a problem if you are using an older version
|
The bug is fixed in Nano, but this might be a problem if you are using an older version
|
||||||
If this is the case, replace them respectively with `[[:<:]]` and `[[:>:]]`.
|
If this is the case, replace them respectively with `[[:<:]]` and `[[:>:]]`.
|
||||||
This is reported in [Issue 52](https://github.com/scopatz/nanorc/issues/52).
|
This is reported in [Issue 52](https://github.com/scopatz/nanorc/issues/52).
|
||||||
|
|
||||||
## Why not include the original files?
|
### Why not include the original files?
|
||||||
|
|
||||||
It is a good question, but the way that nano reads the files matters.
|
It is a good question, but the way that nano reads the files matters.
|
||||||
In other words, the regex instructions should be in a specific order (you can see that in some nanorc files).
|
In other words, the regex instructions should be in a specific order (you can see that in some nanorc files).
|
||||||
@ -101,6 +102,6 @@ The best way to do is copying and editing the original files (if it is needed).
|
|||||||
The bug about it: https://savannah.gnu.org/bugs/index.php?5698
|
The bug about it: https://savannah.gnu.org/bugs/index.php?5698
|
||||||
But if some original nanorc file needs an update, feel free to [patch it](https://savannah.gnu.org/patch/?func=additem&group=nano)!
|
But if some original nanorc file needs an update, feel free to [patch it](https://savannah.gnu.org/patch/?func=additem&group=nano)!
|
||||||
|
|
||||||
# Acknowledgements
|
## Acknowledgements
|
||||||
|
|
||||||
Some of these files are derived from the original [Nano](https://www.nano-editor.org) editor [repo](https://git.savannah.gnu.org/cgit/nano.git)
|
Some of these files are derived from the original [Nano](https://www.nano-editor.org) editor [repo](https://git.savannah.gnu.org/cgit/nano.git)
|
||||||
|
Loading…
Reference in New Issue
Block a user