Merge pull request #3697 from JoeKar/doc/syntax
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

doc: syntax: Add hint about incompatibilities to previous versions
This commit is contained in:
Jöran Karl 2025-03-15 20:29:04 +01:00 committed by GitHub
commit 219fb12482
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -6,11 +6,6 @@ Each yaml file specifies how to detect the filetype based on file extension or h
In addition, a signature can be provided to help resolving ambiguities when multiple matching filetypes are detected. 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. Then there are patterns and regions linked to highlight groups which tell micro how to highlight that filetype.
Making your own syntax files is very simple. I recommend you check the file after you are finished with the
[`syntax_checker.go`](./syntax_checker.go) program (located in this directory). Just place your yaml syntax
file in the current directory and run `go run syntax_checker.go` and it will check every file. If there are no
errors it will print `No issues!`.
You can read more about how to write syntax files (and colorschemes) in the [colors](../help/colors.md) documentation. You can read more about how to write syntax files (and colorschemes) in the [colors](../help/colors.md) documentation.
# Legacy '.micro' filetype # Legacy '.micro' filetype
@ -38,6 +33,19 @@ Micro syntax files are almost identical to Nano's, except for some key differenc
* Micro does not use `icolor`. Instead, for a case insensitive match, use the case insensitive flag (`i`) in the regular expression * 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).*"` * For example, `icolor green ".*"` would become `color green "(?i).*"`
# Incompatibilities with older versions of micro
With PR [#3458](https://github.com/zyedidia/micro/pull/3458) resp. commit
[a9b513a](https://github.com/zyedidia/micro/commit/a9b513a28adaaa7782505dc1e284e1a0132cb66f)
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](https://github.com/zyedidia/micro/tree/v2.0.14).
# Using with colorschemes # 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. 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.