Fork of micro-editor/micro
micro runtime syntax
162 files

ada.yaml
apacheconf.yaml
arduino.yaml
asciidoc.yaml
asm.yaml
ats.yaml
awk.yaml
b.yaml
bat.yaml
c.yaml
caddyfile.yaml
cake.yaml
clojure.yaml
cmake.yaml
coffeescript.yaml
colortest.yaml
conky.yaml
cpp.yaml
crontab.yaml
crystal.yaml
csharp.yaml
css.yaml
csx.yaml
cuda.yaml
cython.yaml
d.yaml
dart.yaml
default.yaml
dockerfile.yaml
dot.yaml
elixir.yaml
elm.yaml
erb.yaml
erlang.yaml
fish.yaml
forth.yaml
fortran.yaml
freebsd-kernel.yaml
fsharp.yaml
gdscript.yaml
gemini.yaml
gentoo-ebuild.yaml
gentoo-etc-portage.yaml
git-commit.yaml
git-config.yaml
git-rebase-todo.yaml
gleam.yaml
glsl.yaml
gnuplot.yaml
go.yaml
godoc.yaml
golo.yaml
gomod.yaml
graphql.yaml
groff.yaml
groovy.yaml
haml.yaml
hare.yaml
haskell.yaml
hc.yaml
html.yaml
html4.yaml
html5.yaml
ini.yaml
inputrc.yaml
java.yaml
javascript.yaml
jinja2.yaml
json.yaml
jsonnet.yaml
julia.yaml
justfile.yaml
keymap.yaml
kickstart.yaml
kotlin.yaml
kvlang.yaml
ledger.yaml
lfe.yaml
LICENSE
lilypond.yaml
lisp.yaml
log.yaml
lua.yaml
mail.yaml
make_headers.go
makefile.yaml
man.yaml
markdown.yaml
mc.yaml
meson.yaml
micro.yaml
mpdconf.yaml
msbuild.yaml
nanorc.yaml
nftables.yaml
nginx.yaml
nim.yaml
nix.yaml
nu.yaml
objc.yaml
ocaml.yaml
octave.yaml
odin.yaml
pascal.yaml
patch.yaml
peg.yaml
perl.yaml
php.yaml
pkg-config.yaml
po.yaml
pony.yaml
pov.yaml
PowerShell.yaml
privoxy-action.yaml
privoxy-config.yaml
privoxy-filter.yaml
proto.yaml
prql.yaml
puppet.yaml
python2.yaml
python3.yaml
r.yaml
raku.yaml
README.md
renpy.yaml
reST.yaml
rpmspec.yaml
ruby.yaml
rust.yaml
sage.yaml
scad.yaml
scala.yaml
sed.yaml
sh.yaml
sls.yaml
smalltalk.yaml
solidity.yaml
sql.yaml
stata.yaml
svelte.yaml
swift.yaml
syntax_converter.go
systemd.yaml
tcl.yaml
terraform.yaml
tex.yaml
toml.yaml
twig.yaml
typescript.yaml
v.yaml
vala.yaml
verilog.yaml
vhdl.yaml
vi.yaml
vue.yaml
xml.yaml
xresources.yaml
yaml.yaml
yum.yaml
zig.yaml
zscript.yaml
zsh.yaml
README.md

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).*"

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.