diff --git a/README.md b/README.md index 79e7a9fd..3887d256 100644 --- a/README.md +++ b/README.md @@ -73,7 +73,7 @@ To uninstall micro, simply remove the binary, and the configuration directory at #### Third-party quick-install script -```bash +```sh curl https://getmic.ro | bash ``` @@ -83,13 +83,13 @@ The script will place the micro binary in the current directory. From there, you With [Eget](https://github.com/zyedidia/eget) installed, you can easily get a pre-built binary: -``` +```sh eget micro-editor/micro ``` Use `--tag VERSION` to download a specific tagged version. -``` +```sh eget --tag nightly micro-editor/micro # download the nightly version (compiled every day at midnight UTC) eget --tag v2.0.8 micro-editor/micro # download version 2.0.8 rather than the latest release ``` @@ -102,7 +102,7 @@ See [Eget](https://github.com/zyedidia/eget) for more information. You can install micro using Homebrew on Mac: -``` +```sh brew install micro ``` @@ -112,7 +112,7 @@ the section on [macOS terminals](https://github.com/micro-editor/micro#macos-ter On Linux, you can install micro through [snap](https://snapcraft.io/docs/installing-snapd) -``` +```sh snap install micro --classic ``` @@ -163,7 +163,7 @@ If your operating system does not have a binary release, but does run Go, you ca Make sure that you have Go version 1.19 or greater and Go modules are enabled. -``` +```sh git clone https://github.com/micro-editor/micro cd micro make build @@ -184,7 +184,7 @@ and doesn't disable debug mode. By default, the micro binary is linked statically to increase the portability of the prebuilt binaries. This behavior can simply be overridden by providing `CGO_ENABLED=1` to the build target. -``` +```sh CGO_ENABLED=1 make build ``` @@ -231,7 +231,7 @@ than the Windows default. Cygwin, Mingw, and Plan9 are unfortunately not officially supported. In Cygwin and Mingw, micro will often work when run using the `winpty` utility: -``` +```sh winpty micro.exe ... ``` diff --git a/runtime/help/colors.md b/runtime/help/colors.md index dab3a3cf..ffd3adc3 100644 --- a/runtime/help/colors.md +++ b/runtime/help/colors.md @@ -272,7 +272,7 @@ place them in `~/.config/micro/syntax` and Micro will use those instead. You must start the syntax file by declaring the filetype: -``` +```yaml filetype: go ``` @@ -280,7 +280,7 @@ filetype: go Then you must provide information about how to detect the filetype: -``` +```yaml detect: filename: "\\.go$" ``` @@ -290,7 +290,7 @@ Micro will match this regex against a given filename to detect the filetype. In addition to the `filename` regex (or even instead of it) you can provide a `header` regex that will check the first line of the file. For example: -``` +```yaml detect: filename: "\\.ya?ml$" header: "%YAML" @@ -316,7 +316,7 @@ filetype will be preferred over other matching filetypes. For example, to distinguish C++ header files from C and Objective-C header files that have the same `.h` extension: -``` +```yaml detect: filename: "\\.c(c|pp|xx)$|\\.h(h|pp|xx)?$" signature: "namespace|template|public|protected|private" @@ -331,7 +331,7 @@ lines and may have rules of its own inside the region. Here are some example patterns in Go: -``` +```yaml rules: - special: "\\b(break|case|continue|default|go|goto|range|return)\\b" - statement: "\\b(else|for|if|switch)\\b" @@ -343,7 +343,7 @@ the ones defined above them. And here are some example regions for Go: -``` +```yaml - constant.string: start: "\"" end: "\"" @@ -375,7 +375,7 @@ string ends at the correct place. You may also explicitly mark skip regexes if you don't want them to be highlighted. For example: -``` +```yaml - constant.string: start: "\"" end: "\"" @@ -387,7 +387,7 @@ highlighted. For example: You may also include rules from other syntax files as embedded languages. For example, the following is possible for html: -``` +```yaml - default: start: "" end: "" @@ -417,7 +417,7 @@ For example, if you work with various config files that use the `#` sign to mark the beginning of a comment, you can use the following custom `default.yaml` to highlight those comments by default: -``` +```yaml filetype: unknown detect: diff --git a/runtime/help/keybindings.md b/runtime/help/keybindings.md index 91a1a2a0..fa05a6fe 100644 --- a/runtime/help/keybindings.md +++ b/runtime/help/keybindings.md @@ -28,7 +28,7 @@ Each key is bound to an action. For example, to bind `Ctrl-y` to undo and `Ctrl-z` to redo, you could put the following in the `bindings.json` file. -```json +```jsonc { "Ctrl-y": "Undo", "Ctrl-z": "Redo" @@ -47,7 +47,7 @@ In addition to editing your `~/.config/micro/bindings.json`, you can run You can also chain commands when rebinding. For example, if you want `Alt-s` to save and quit you can bind it like so: -```json +```jsonc { "Alt-s": "Save,Quit" } @@ -60,7 +60,7 @@ will abort the chain if the action preceding it succeeds, and the `&` will abort the chain if the action preceding it fails. For example, in the default bindings, tab is bound as -``` +```jsonc "Tab": "Autocomplete|IndentSelection|InsertTab" ``` @@ -82,7 +82,7 @@ callbacks returned true. You can also bind a key to execute a command in command mode (see `help commands`). Simply prepend the binding with `command:`. For example: -```json +```jsonc { "Alt-p": "command:pwd" } @@ -102,7 +102,7 @@ micro won't immediately execute the command when you press the binding, but instead just place the string in the infobar in command mode. For example, you could rebind `Ctrl-g` to `> help`: -```json +```jsonc { "Ctrl-g": "command-edit:help " } @@ -117,7 +117,7 @@ cursor placement). You can also bind a key to a Lua function provided by a plugin, or by your own `~/.config/micro/init.lua`. For example: -```json +```jsonc { "Alt-q": "lua:foo.bar" } @@ -150,7 +150,7 @@ The return value of the lua function defines whether the action has succeeded. This is used when chaining lua functions with other actions. They can be chained the same way as regular actions as described above, for example: -``` +```jsonc "Alt-q": "lua:initlua.bar|Quit" ``` @@ -177,7 +177,7 @@ sequences you define. Then from micro you can directly bind those escape sequences to actions. For example, to bind `CtrlBackspace` you can instruct your terminal to send `\x1bctrlback` and then bind it in `bindings.json`: -```json +```jsonc { "\u001bctrlback": "DeleteWordLeft" } @@ -522,7 +522,7 @@ A select few keybindings are different on MacOS compared to other operating systems. This is because different OSes have different conventions for text editing defaults. -```json +```jsonc { "Up": "CursorUp", "Down": "CursorDown", @@ -646,7 +646,7 @@ conventions for text editing defaults. Keybindings can be specified for different pane types as well. For example, to make a binding that only affects the command bar, use the `command` subgroup: -``` +```jsonc { "command": { "Ctrl-w": "WordLeft" @@ -658,7 +658,7 @@ The possible pane types are `buffer` (normal buffer), `command` (command bar), and `terminal` (terminal pane). The defaults for the command and terminal panes are given below: -``` +```jsonc { "terminal": { "": "Exit", diff --git a/runtime/help/options.md b/runtime/help/options.md index 54208942..768b707b 100644 --- a/runtime/help/options.md +++ b/runtime/help/options.md @@ -556,7 +556,7 @@ at `~/.config/micro`), and should contain only options which have been modified from their default setting. Here is the full list of options in json format, so that you can see what the formatting should look like. -```json +```jsonc { "autoclose": true, "autoindent": true, @@ -659,7 +659,7 @@ In the `settings.json` file you can also put set options locally by specifying either a glob or a filetype. Here is an example which has `tabstospaces` on for all files except Go files, and `tabsize` 4 for all files except Ruby files: -```json +```jsonc { "ft:go": { "tabstospaces": false @@ -674,7 +674,7 @@ all files except Go files, and `tabsize` 4 for all files except Ruby files: Or similarly you can match with globs: -```json +```jsonc { "glob:*.go": { "tabstospaces": false @@ -689,7 +689,7 @@ Or similarly you can match with globs: You can also omit the `glob:` prefix before globs: -```json +```jsonc { "*.go": { "tabstospaces": false diff --git a/runtime/help/plugins.md b/runtime/help/plugins.md index c61d5990..2efea5b4 100644 --- a/runtime/help/plugins.md +++ b/runtime/help/plugins.md @@ -519,7 +519,7 @@ If you'd like to publish a plugin you've made as an official plugin, you should upload your plugin online (preferably to Github) and add a `repo.json` file. This file will contain the metadata for your plugin. Here is an example: -```json +```jsonc [{ "Name": "pluginname", "Description": "Here is a nice concise description of my plugin", diff --git a/runtime/help/tutorial.md b/runtime/help/tutorial.md index 7c7d5046..17107b11 100644 --- a/runtime/help/tutorial.md +++ b/runtime/help/tutorial.md @@ -29,7 +29,7 @@ the current buffer. Also micro will not save this local change to the `settings.json` file. For example, if you want the `tabsize` to be 2 only in Ruby files, and 4 otherwise, you could put the following in `settings.json`: -```json +```jsonc { "*.rb": { "tabsize": 2 @@ -51,7 +51,7 @@ Keybindings work in much the same way as options. You configure them using the For example if you would like to bind `Ctrl-r` to redo you could put the following in `bindings.json`: -```json +```jsonc { "Ctrl-r": "Redo" } @@ -102,7 +102,7 @@ end Alternatively, you could get rid of the `TryBindKey` line, and put this line in the `bindings.json` file: -```json +```jsonc { "Ctrl-r": "lua:initlua.gorun" } diff --git a/runtime/plugins/comment/help/comment.md b/runtime/plugins/comment/help/comment.md index fc0cfe01..a120221d 100644 --- a/runtime/plugins/comment/help/comment.md +++ b/runtime/plugins/comment/help/comment.md @@ -6,7 +6,7 @@ and `CtrlUnderscore`, which is equivalent in most terminals to `Ctrl-/`. You can easily modify that in your `bindings.json` file: -```json +```jsonc { "Alt-g": "lua:comment.comment" } @@ -88,7 +88,7 @@ set comment.type "/* %s */" Or in your `settings.json`: -```json +```jsonc { "*.c": { "comment.type": "/* %s */" diff --git a/runtime/syntax/README.md b/runtime/syntax/README.md index a31acc02..f99176d8 100644 --- a/runtime/syntax/README.md +++ b/runtime/syntax/README.md @@ -13,7 +13,7 @@ You can read more about how to write syntax files (and colorschemes) in the [col 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`](./syntax_converter.go) program (also located in this directory): -``` +```sh $ go run syntax_converter.go c.micro > c.yaml ```