micro/runtime/syntax
Codemanticism bf255b6c35
Some checks failed
Build and Test / test (1.19.x, macos-latest) (push) Has been cancelled
Build and Test / test (1.19.x, ubuntu-latest) (push) Has been cancelled
Build and Test / test (1.19.x, windows-latest) (push) Has been cancelled
Build and Test / test (1.23.x, macos-latest) (push) Has been cancelled
Build and Test / test (1.23.x, ubuntu-latest) (push) Has been cancelled
Build and Test / test (1.23.x, windows-latest) (push) Has been cancelled
rust.yaml: Add the keyword "union" (#3759)
2025-05-25 12:59:59 +02:00
..
ada.yaml Fix trailing spaces/tabs in yaml syntax files (#3200) 2024-03-22 17:56:09 +01:00
apacheconf.yaml Add skip statements to all strings 2017-03-29 09:45:16 -04:00
arduino.yaml Fix trailing spaces/tabs in yaml syntax files (#3200) 2024-03-22 17:56:09 +01:00
asciidoc.yaml Fix trailing spaces/tabs in yaml syntax files (#3200) 2024-03-22 17:56:09 +01:00
asm.yaml syntax: asm: highlight C-like comments (#3696) 2025-03-15 14:29:45 +01:00
ats.yaml Update ats syntax (#1141) 2018-07-16 15:37:57 -04:00
awk.yaml Restore header instead of signature in most syntax files 2024-03-24 04:47:04 +01:00
bat.yaml syntax: remove some commented out garbage 2024-03-24 15:22:43 +01:00
c.yaml Some syntax highlighting updates for C and C#. (#3125) 2024-03-12 21:20:03 +01:00
caddyfile.yaml syntax: Remove empty rules in regions 2024-09-09 18:32:30 +02:00
cake.yaml Fix highlighting of load and reference directives in Cake syntax. (#3341) 2024-06-13 19:57:39 +02:00
clojure.yaml match .edn files 2018-10-16 10:39:09 -03:00
cmake.yaml syntax: Remove empty rules in regions 2024-09-09 18:32:30 +02:00
coffeescript.yaml Fix trailing spaces/tabs in yaml syntax files (#3200) 2024-03-22 17:56:09 +01:00
colortest.yaml Improve new syntax files and fix a region glitch 2017-03-21 15:07:39 -04:00
conky.yaml Improve new syntax files and fix a region glitch 2017-03-21 15:07:39 -04:00
cpp.yaml syntax: Prepare a concrete signature example for C++ 2023-10-26 20:59:37 +02:00
crontab.yaml Improve crontab filetype detection (#3222) 2024-04-01 19:50:42 +02:00
crystal.yaml syntax: Remove empty rules in regions 2024-09-09 18:32:30 +02:00
csharp.yaml Some syntax highlighting updates for C and C#. (#3125) 2024-03-12 21:20:03 +01:00
css.yaml syntax: Remove empty rules in regions 2024-09-09 18:32:30 +02:00
csx.yaml Restore header instead of signature in most syntax files 2024-03-24 04:47:04 +01:00
cuda.yaml Add CUDA syntax support (#2652) 2022-12-03 22:17:35 -08:00
cython.yaml Add skip statements to all strings 2017-03-29 09:45:16 -04:00
d.yaml syntax: Remove empty rules in regions 2024-09-09 18:32:30 +02:00
dart.yaml Add skip statements to all strings 2017-03-29 09:45:16 -04:00
default.yaml syntax: Optimize the patterns and remove the comment region 2024-04-18 18:20:11 +02:00
dockerfile.yaml Treat Containerfiles as Dockerfiles (#2846) 2023-07-08 14:07:19 -07:00
dot.yaml Add skip statements to all strings 2017-03-29 09:45:16 -04:00
elixir.yaml Elixir configuration (#1118) 2018-05-26 10:08:35 -04:00
elm.yaml Fix trailing spaces/tabs in yaml syntax files (#3200) 2024-03-22 17:56:09 +01:00
erb.yaml syntax: Remove empty rules in regions 2024-09-09 18:32:30 +02:00
erlang.yaml syntax: Remove empty rules in regions 2024-09-09 18:32:30 +02:00
fish.yaml syntax: Remove empty rules in regions 2024-09-09 18:32:30 +02:00
forth.yaml syntax: Remove empty rules in regions 2024-09-09 18:32:30 +02:00
fortran.yaml Fix trailing spaces/tabs in yaml syntax files (#3200) 2024-03-22 17:56:09 +01:00
freebsd-kernel.yaml Syntax Highlighting Support for FreeBSD Kernel Configuration Files (#2220) 2021-09-24 14:39:46 -07:00
fsharp.yaml syntax: Remove empty rules in regions 2024-09-09 18:32:30 +02:00
gdscript.yaml Improve the GDScript syntax file 2018-08-07 15:16:23 +02:00
gemini.yaml syntax: Remove empty rules in regions 2024-09-09 18:32:30 +02:00
gentoo-ebuild.yaml Add skip statements to all strings 2017-03-29 09:45:16 -04:00
gentoo-etc-portage.yaml syntax: Remove empty rules in regions 2024-09-09 18:32:30 +02:00
git-commit.yaml syntax: Remove empty rules in regions 2024-09-09 18:32:30 +02:00
git-config.yaml syntax: Remove empty rules in regions 2024-09-09 18:32:30 +02:00
git-rebase-todo.yaml syntax: Remove empty rules in regions 2024-09-09 18:32:30 +02:00
glsl.yaml Fix trailing spaces/tabs in yaml syntax files (#3200) 2024-03-22 17:56:09 +01:00
gnuplot.yaml Fix trailing spaces/tabs in yaml syntax files (#3200) 2024-03-22 17:56:09 +01:00
go.yaml syntax: Remove empty rules in regions 2024-09-09 18:32:30 +02:00
godoc.yaml Restore header instead of signature in most syntax files 2024-03-24 04:47:04 +01:00
golo.yaml Add skip statements to all strings 2017-03-29 09:45:16 -04:00
gomod.yaml Add go.mod syntax support (#3061) 2024-01-17 00:07:51 -08:00
graphql.yaml syntax: Remove empty rules in regions 2024-09-09 18:32:30 +02:00
groff.yaml syntax: Remove empty rules in regions 2024-09-09 18:32:30 +02:00
groovy.yaml syntax: Remove empty rules in regions 2024-09-09 18:32:30 +02:00
haml.yaml Fix trailing spaces/tabs in yaml syntax files (#3200) 2024-03-22 17:56:09 +01:00
hare.yaml Fix trailing spaces/tabs in yaml syntax files (#3200) 2024-03-22 17:56:09 +01:00
haskell.yaml Improve Haskell syntax highlighting (#3373) 2024-08-31 12:59:40 +02:00
hc.yaml Fix trailing spaces/tabs in yaml syntax files (#3200) 2024-03-22 17:56:09 +01:00
html4.yaml syntax: Remove empty rules in regions 2024-09-09 18:32:30 +02:00
html5.yaml syntax: Remove empty rules in regions 2024-09-09 18:32:30 +02:00
html.yaml Update html.yaml by adding support for dialog tags (#3255) 2024-04-18 14:36:19 +02:00
ini.yaml Highlight .tscn, .tres and project.godot files using INI syntax 2018-09-29 12:14:15 +02:00
inputrc.yaml Fix trailing spaces/tabs in yaml syntax files (#3200) 2024-03-22 17:56:09 +01:00
java.yaml Update java.yaml (#3526) 2024-10-31 23:01:56 +01:00
javascript.yaml Add .cjs (common javascript) to javascript syntax definition (#3539) 2024-11-20 14:51:51 +01:00
jinja2.yaml syntax: Remove empty rules in regions 2024-09-09 18:32:30 +02:00
json.yaml syntax/json: Add comment support to the syntax highlighting (#3434) 2024-08-19 22:16:42 +02:00
jsonnet.yaml syntax: Remove empty rules in regions 2024-09-09 18:32:30 +02:00
julia.yaml syntax: Remove empty rules in regions 2024-09-09 18:32:30 +02:00
justfile.yaml syntax: Remove empty rules in regions 2024-09-09 18:32:30 +02:00
keymap.yaml syntax: Remove empty rules in regions 2024-09-09 18:32:30 +02:00
kickstart.yaml Fix trailing spaces/tabs in yaml syntax files (#3200) 2024-03-22 17:56:09 +01:00
kotlin.yaml Fix trailing spaces/tabs in yaml syntax files (#3200) 2024-03-22 17:56:09 +01:00
kvlang.yaml syntax: Remove empty rules in regions 2024-09-09 18:32:30 +02:00
ledger.yaml Fix trailing spaces/tabs in yaml syntax files (#3200) 2024-03-22 17:56:09 +01:00
lfe.yaml Fix trailing spaces/tabs in yaml syntax files (#3200) 2024-03-22 17:56:09 +01:00
LICENSE Update readme 2020-02-10 00:38:57 -05:00
lilypond.yaml syntax: Remove empty rules in regions 2024-09-09 18:32:30 +02:00
lisp.yaml Fix trailing spaces/tabs in yaml syntax files (#3200) 2024-03-22 17:56:09 +01:00
log.yaml syntax: Remove empty rules in regions 2024-09-09 18:32:30 +02:00
lua.yaml syntax: Remove empty rules in regions 2024-09-09 18:32:30 +02:00
mail.yaml syntax: Remove empty rules in regions 2024-09-09 18:32:30 +02:00
make_headers.go ioutil: Remove deprecated functions where possible 2025-02-28 18:57:53 +01:00
makefile.yaml syntax: Remove empty rules in regions 2024-09-09 18:32:30 +02:00
man.yaml Fix trailing spaces/tabs in yaml syntax files (#3200) 2024-03-22 17:56:09 +01:00
markdown.yaml syntax: Remove empty rules in regions 2024-09-09 18:32:30 +02:00
mc.yaml syntax: Remove empty rules in regions 2024-09-09 18:32:30 +02:00
micro.yaml Fix micro file syntax 2017-12-30 12:13:52 -05:00
mpdconf.yaml Fix trailing spaces/tabs in yaml syntax files (#3200) 2024-03-22 17:56:09 +01:00
msbuild.yaml Some syntax highlighting updates for C and C#. (#3125) 2024-03-12 21:20:03 +01:00
nanorc.yaml Fix trailing spaces/tabs in yaml syntax files (#3200) 2024-03-22 17:56:09 +01:00
nftables.yaml Create nftables.yaml (#3325) 2024-10-06 13:04:32 +02:00
nginx.yaml syntax: Remove empty rules in regions 2024-09-09 18:32:30 +02:00
nim.yaml syntax: Remove empty rules in regions 2024-09-09 18:32:30 +02:00
nix.yaml syntax: Remove empty rules in regions 2024-09-09 18:32:30 +02:00
nu.yaml syntax: Remove empty rules in regions 2024-09-09 18:32:30 +02:00
objc.yaml syntax: Prepare a concrete signature example for objective C 2023-10-26 20:48:27 +02:00
ocaml.yaml syntax: Remove empty rules in regions 2024-09-09 18:32:30 +02:00
octave.yaml Added initial support for Octave/Matlab syntax highlighting 2017-10-02 14:08:22 +04:00
odin.yaml syntax: Remove empty rules in regions 2024-09-09 18:32:30 +02:00
pascal.yaml syntax: Remove empty rules in regions 2024-09-09 18:32:30 +02:00
patch.yaml Restore header instead of signature in most syntax files 2024-03-24 04:47:04 +01:00
peg.yaml Fix trailing spaces/tabs in yaml syntax files (#3200) 2024-03-22 17:56:09 +01:00
perl.yaml syntax: Remove empty rules in regions 2024-09-09 18:32:30 +02:00
php.yaml syntax: Remove empty rules in regions 2024-09-09 18:32:30 +02:00
pkg-config.yaml Fix trailing spaces/tabs in yaml syntax files (#3200) 2024-03-22 17:56:09 +01:00
po.yaml Fix trailing spaces/tabs in yaml syntax files (#3200) 2024-03-22 17:56:09 +01:00
pony.yaml syntax: Remove empty rules in regions 2024-09-09 18:32:30 +02:00
pov.yaml syntax: Remove empty rules in regions 2024-09-09 18:32:30 +02:00
PowerShell.yaml syntax: remove some commented out garbage 2024-03-24 15:22:43 +01:00
privoxy-action.yaml Fix trailing spaces/tabs in yaml syntax files (#3200) 2024-03-22 17:56:09 +01:00
privoxy-config.yaml Fix trailing spaces/tabs in yaml syntax files (#3200) 2024-03-22 17:56:09 +01:00
privoxy-filter.yaml Fix trailing spaces/tabs in yaml syntax files (#3200) 2024-03-22 17:56:09 +01:00
proto.yaml Add proto syntax file 2019-11-06 07:23:04 -05:00
puppet.yaml Fix trailing spaces/tabs in yaml syntax files (#3200) 2024-03-22 17:56:09 +01:00
python2.yaml syntax: Remove empty rules in regions 2024-09-09 18:32:30 +02:00
python3.yaml syntax: Remove empty rules in regions 2024-09-09 18:32:30 +02:00
r.yaml Fix trailing spaces/tabs in yaml syntax files (#3200) 2024-03-22 17:56:09 +01:00
raku.yaml syntax: Remove empty rules in regions 2024-09-09 18:32:30 +02:00
README.md doc: syntax: Add hint about incompatibilities to previous versions 2025-03-15 17:45:45 +01:00
renpy.yaml Add syntax support for Renpy (#1789) 2020-07-22 15:26:37 -04:00
reST.yaml Improve new syntax files and fix a region glitch 2017-03-21 15:07:39 -04:00
rpmspec.yaml syntax: Remove empty rules in regions 2024-09-09 18:32:30 +02:00
ruby.yaml syntax: Remove empty rules in regions 2024-09-09 18:32:30 +02:00
rust.yaml rust.yaml: Add the keyword "union" (#3759) 2025-05-25 12:59:59 +02:00
sage.yaml syntax: Remove empty rules in regions 2024-09-09 18:32:30 +02:00
scad.yaml syntax: Remove empty rules in regions 2024-09-09 18:32:30 +02:00
scala.yaml syntax: Remove empty rules in regions 2024-09-09 18:32:30 +02:00
sed.yaml Restore header instead of signature in most syntax files 2024-03-24 04:47:04 +01:00
sh.yaml sh.yaml: Match parameter expansions with braces using \w 2025-02-23 11:39:11 +08:00
sls.yaml Fix trailing spaces/tabs in yaml syntax files (#3200) 2024-03-22 17:56:09 +01:00
smalltalk.yaml syntax: Remove empty rules in regions 2024-09-09 18:32:30 +02:00
solidity.yaml syntax: Remove empty rules in regions 2024-09-09 18:32:30 +02:00
sql.yaml Fix trailing spaces/tabs in yaml syntax files (#3200) 2024-03-22 17:56:09 +01:00
stata.yaml syntax: Remove empty rules in regions 2024-09-09 18:32:30 +02:00
svelte.yaml Fix trailing spaces/tabs in yaml syntax files (#3200) 2024-03-22 17:56:09 +01:00
swift.yaml Add Swift shebang to syntax (#3451) 2024-09-05 18:41:39 +02:00
syntax_converter.go Build constraints: switch to new syntax 2025-03-24 22:54:32 +01:00
systemd.yaml Restore header instead of signature in most syntax files 2024-03-24 04:47:04 +01:00
tcl.yaml Restore header instead of signature in most syntax files 2024-03-24 04:47:04 +01:00
terraform.yaml Add Terraform syntax support (#2279) 2022-07-24 14:10:29 -07:00
tex.yaml syntax: Remove empty rules in regions 2024-09-09 18:32:30 +02:00
toml.yaml syntax: Remove empty rules in regions 2024-09-09 18:32:30 +02:00
twig.yaml syntax: Remove empty rules in regions 2024-09-09 18:32:30 +02:00
typescript.yaml syntax: Remove empty rules in regions 2024-09-09 18:32:30 +02:00
v.yaml syntax: Remove empty rules in regions 2024-09-09 18:32:30 +02:00
vala.yaml syntax: Remove empty rules in regions 2024-09-09 18:32:30 +02:00
verilog.yaml Syntax file change 2020-02-13 16:50:44 -05:00
vhdl.yaml Small fix for VHDL syntax (#3375) 2024-08-19 21:11:24 +02:00
vi.yaml syntax: Remove empty rules in regions 2024-09-09 18:32:30 +02:00
vue.yaml syntax: Remove empty rules in regions 2024-09-09 18:32:30 +02:00
xml.yaml syntax: Remove empty rules in regions 2024-09-09 18:32:30 +02:00
xresources.yaml Fix trailing spaces/tabs in yaml syntax files (#3200) 2024-03-22 17:56:09 +01:00
yaml.yaml Restore header instead of signature in most syntax files 2024-03-24 04:47:04 +01:00
yum.yaml Fix trailing spaces/tabs in yaml syntax files (#3200) 2024-03-22 17:56:09 +01:00
zig.yaml Update Zig syntax to handle ZON (Zig Object Notation) files. (#3329) 2024-06-09 17:57:22 +02:00
zscript.yaml Create zscript.yaml 2019-12-04 11:52:22 -07:00
zsh.yaml syntax: Remove empty rules in regions 2024-09-09 18:32:30 +02:00

Syntax Files

Here are micro's syntax files.

Each yaml file specifies how to detect the filetype based on file extension or header (first line of the line). In addition, a signature can be provided to help resolving ambiguities when multiple matching filetypes are detected. Then there are patterns and regions linked to highlight groups which tell micro how to highlight that filetype.

You can read more about how to write syntax files (and colorschemes) in the colors documentation.

Legacy '.micro' filetype

Micro used to use the .micro filetype for syntax files which is no longer supported. If you have .micro syntax files that you would like to convert to the new filetype, you can use the syntax_converter.go program (also located in this directory):

$ go run syntax_converter.go c.micro > c.yaml

Most of the syntax files here have been converted using that tool.

Note that the tool isn't perfect and though it is unlikely, you may run into some small issues that you will have to fix manually (about 4 files from this directory had issues after being converted).

Micro syntax highlighting files

These are the syntax highlighting files for micro. To install them, just put all the syntax files in ~/.config/micro/syntax.

They are taken from Nano, specifically from this repository. Micro syntax files are almost identical to Nano's, except for some key differences:

  • Micro does not use icolor. Instead, for a case insensitive match, use the case insensitive flag (i) in the regular expression
    • For example, icolor green ".*" would become color green "(?i).*"

Incompatibilities with older versions of micro

With PR #3458 resp. commit a9b513a empty rules: [] definitions are removed from all syntax files, since rules are no longer mandatory. Unfortunately they are mandatory for micro versions up to and including v2.0.14.

To use newer syntax definitions from this repository with older micro versions you have to add these rules: [] to all regions not including rules already. Otherwise you need to use syntax definitions before the above mentioned PR for example from version v2.0.14.

Using with colorschemes

Not all of these files have been converted to use micro's colorscheme feature. Most of them just hardcode the colors, which can be problematic depending on the colorscheme you use.

Here is a list of the files that have been converted to properly use colorschemes:

  • vi
  • go
  • c
  • d
  • markdown
  • html
  • lua
  • swift
  • rust
  • java
  • javascript
  • pascal
  • python
  • ruby
  • sh
  • git
  • tex
  • solidity

License

See LICENSE.