2016-07-28 22:52:31 +03:00
|
|
|
### Options
|
|
|
|
|
|
|
|
Micro stores all of the user configuration in its configuration directory.
|
|
|
|
|
|
|
|
Micro uses the `$XDG_CONFIG_HOME/micro` as the configuration directory. As per
|
|
|
|
the XDG spec, if `$XDG_CONFIG_HOME` is not set, `~/.config/micro` is used as
|
|
|
|
the config directory.
|
|
|
|
|
|
|
|
Here are the options that you can set:
|
|
|
|
|
|
|
|
* `colorscheme`: loads the colorscheme stored in
|
|
|
|
$(configDir)/colorschemes/`option`.micro
|
2016-08-26 00:24:13 +03:00
|
|
|
This setting is `global only`.
|
2016-07-28 22:52:31 +03:00
|
|
|
|
|
|
|
default value: `default`
|
|
|
|
Note that the default colorschemes (default, solarized, and solarized-tc)
|
2016-09-09 07:07:58 +03:00
|
|
|
are not located in configDir, because they are embedded in the micro binary.
|
2016-07-28 22:52:31 +03:00
|
|
|
|
|
|
|
The colorscheme can be selected from all the files in the
|
|
|
|
~/.config/micro/colorschemes/ directory. Micro comes by default with three
|
|
|
|
colorschemes:
|
|
|
|
|
2016-08-28 05:00:56 +03:00
|
|
|
You can read more about micro's colorschemes in the `colors` help topic
|
|
|
|
(`help colors`).
|
2016-07-28 22:52:31 +03:00
|
|
|
|
2016-09-08 00:17:51 +03:00
|
|
|
* `colorcolumn`: if this is not set to 0, it will display a column at the specified
|
|
|
|
column. This is useful if you want column 80 to be highlighted special for example.
|
|
|
|
|
|
|
|
default value: `0`
|
|
|
|
|
2016-10-24 01:37:29 +03:00
|
|
|
* `eofnewline`: micro will automatically add a newline to the file.
|
|
|
|
|
|
|
|
default value: `false`
|
|
|
|
|
2016-12-17 05:32:53 +03:00
|
|
|
* `rmtrailingws`: micro will automatically trim trailing whitespaces at eol.
|
|
|
|
|
|
|
|
default value: `false`
|
|
|
|
|
2016-07-28 22:52:31 +03:00
|
|
|
* `tabsize`: sets the tab size to `option`
|
|
|
|
|
|
|
|
default value: `4`
|
|
|
|
|
|
|
|
* `indentchar`: sets the indentation character
|
|
|
|
|
|
|
|
default value: ` `
|
|
|
|
|
2016-08-31 18:16:22 +03:00
|
|
|
* `infobar`: enables the line at the bottom of the editor where messages are printed.
|
|
|
|
This option is `global only`.
|
|
|
|
|
|
|
|
default value: `on`
|
|
|
|
|
2016-08-26 00:24:13 +03:00
|
|
|
* `filetype`: sets the filetype for the current buffer. This setting is `local only`
|
|
|
|
|
|
|
|
default value: this will be automatically set depending on the file you have open
|
|
|
|
|
2016-07-28 22:52:31 +03:00
|
|
|
* `ignorecase`: perform case-insensitive searches
|
|
|
|
|
|
|
|
default value: `off`
|
|
|
|
|
|
|
|
* `syntax`: turns syntax on or off
|
|
|
|
|
|
|
|
default value: `on`
|
|
|
|
|
|
|
|
* `tabstospaces`: use spaces instead of tabs
|
|
|
|
|
|
|
|
default value: `off`
|
|
|
|
|
2017-05-05 19:04:18 +03:00
|
|
|
* `tabmovement`: navigate spaces at the beginning of lines as if they are tabs (e.g. move over 4 spaces at once).
|
|
|
|
This option only does anything if `tabstospaces` is on.
|
|
|
|
|
|
|
|
default value: `off`
|
|
|
|
|
2016-07-28 22:52:31 +03:00
|
|
|
* `autoindent`: when creating a new line use the same indentation as the
|
|
|
|
previous line
|
|
|
|
|
|
|
|
default value: `on`
|
|
|
|
|
|
|
|
* `cursorline`: highlight the line that the cursor is on in a different color
|
|
|
|
(the color is defined by the colorscheme you are using)
|
|
|
|
|
2016-08-29 16:20:48 +03:00
|
|
|
default value: `on`
|
2016-07-28 22:52:31 +03:00
|
|
|
|
|
|
|
* `ruler`: display line numbers
|
|
|
|
|
|
|
|
default value: `on`
|
|
|
|
|
|
|
|
* `statusline`: display the status line at the bottom of the screen
|
|
|
|
|
|
|
|
default value: `on`
|
|
|
|
|
|
|
|
* `savecursor`: remember where the cursor was last time the file was opened and
|
|
|
|
put it there when you open the file again
|
|
|
|
|
|
|
|
default value: `off`
|
|
|
|
|
|
|
|
* `saveundo`: when this option is on, undo is saved even after you close a file
|
|
|
|
so if you close and reopen a file, you can keep undoing
|
|
|
|
|
|
|
|
default value: `off`
|
|
|
|
|
|
|
|
* `scrollmargin`: amount of lines you would like to see above and below the cursor
|
|
|
|
|
|
|
|
default value: `3`
|
|
|
|
|
|
|
|
* `scrollspeed`: amount of lines to scroll for one scroll event
|
|
|
|
|
|
|
|
default value: `2`
|
|
|
|
|
2016-10-12 23:34:34 +03:00
|
|
|
* `softwrap`: should micro wrap lines that are too long to fit on the screen
|
|
|
|
|
2017-02-08 03:21:25 +03:00
|
|
|
default value: `off`
|
2016-10-12 23:34:34 +03:00
|
|
|
|
2016-11-29 03:16:49 +03:00
|
|
|
* `splitRight`: when a vertical split is created, should it be created to the right of
|
|
|
|
the current split?
|
|
|
|
|
2017-02-08 03:21:25 +03:00
|
|
|
default value: `on`
|
2016-11-29 03:16:49 +03:00
|
|
|
|
2017-01-24 06:40:36 +03:00
|
|
|
* `splitBottom`: when a horizontal split is created, should it be created below the
|
2016-11-29 03:16:49 +03:00
|
|
|
current split?
|
|
|
|
|
2017-02-08 03:21:25 +03:00
|
|
|
default value: `on`
|
2016-11-29 03:16:49 +03:00
|
|
|
|
2016-09-28 20:07:05 +03:00
|
|
|
* `autosave`: micro will save the buffer every 8 seconds automatically.
|
2016-10-06 01:26:41 +03:00
|
|
|
Micro also will automatically save and quit when you exit without asking.
|
|
|
|
Be careful when using this feature, because you might accidentally save a file,
|
|
|
|
overwriting what was there before.
|
2016-09-28 20:07:05 +03:00
|
|
|
|
|
|
|
default value: `off`
|
|
|
|
|
2016-10-06 01:26:41 +03:00
|
|
|
* `pluginchannels`: contains all the channels micro's plugin manager will search
|
|
|
|
for plugins in. A channel is simply a list of 'repository' json files which contain
|
|
|
|
metadata about the given plugin. See the `Plugin Manager` section of the `plugins` help topic
|
|
|
|
for more information.
|
|
|
|
|
2017-02-08 03:21:25 +03:00
|
|
|
default value: `https://github.com/micro-editor/plugin-channel`
|
2016-10-06 01:26:41 +03:00
|
|
|
|
|
|
|
* `pluginrepos`: contains all the 'repositories' micro's plugin manager will search for
|
|
|
|
plugins in. A repository consists of a `repo.json` file which contains metadata for a
|
|
|
|
single plugin.
|
|
|
|
|
2017-02-08 03:21:25 +03:00
|
|
|
default value: ` `
|
|
|
|
|
|
|
|
* `useprimary` (only useful on Linux): defines whether or not micro will use the primary clipboard to copy selections
|
|
|
|
in the background. This does not affect the normal clipboard using Ctrl-C and Ctrl-V.
|
|
|
|
|
|
|
|
default value: `on`
|
2016-10-06 01:26:41 +03:00
|
|
|
|
2017-03-27 20:22:34 +03:00
|
|
|
* `keepautoindent`: when using autoindent, whitespace is added for you. This option determines if
|
|
|
|
when you move to the next line without any insertions the whitespace that was added should be deleted.
|
|
|
|
By default the autoindent whitespace is deleted if the line was left empty.
|
|
|
|
|
|
|
|
default value: `off`
|
|
|
|
|
2017-04-29 23:01:09 +03:00
|
|
|
* `termtitle`: defines whether or not your terminal's title will be set by micro when opened.
|
|
|
|
|
|
|
|
default value: `off`
|
|
|
|
|
2016-07-28 22:52:31 +03:00
|
|
|
---
|
|
|
|
|
|
|
|
Default plugin options:
|
|
|
|
|
2016-09-09 07:07:58 +03:00
|
|
|
* `autoclose`: Automatically close `{}` `()` `[]` `""` `''`. Provided by the `autoclose` plugin
|
2016-07-28 22:52:31 +03:00
|
|
|
|
|
|
|
default value: `on`
|
|
|
|
|
2016-10-07 03:28:10 +03:00
|
|
|
* `linter`: Automatically lint when the file is saved. Provided by the `linter` plugin
|
|
|
|
|
|
|
|
default value: `on`
|
|
|
|
|
2017-05-20 01:17:38 +03:00
|
|
|
* `ftoptions`: by default, micro will set some options based on the filetype. At the moment, micro will
|
|
|
|
use tabs for makefiles and spaces for python files regardless of your settings. If you would like to
|
|
|
|
disable this behavior turn this option off.
|
|
|
|
|
|
|
|
default value: `on`
|
|
|
|
|
2016-07-28 22:52:31 +03:00
|
|
|
Any option you set in the editor will be saved to the file
|
|
|
|
~/.config/micro/settings.json so, in effect, your configuration file will be
|
|
|
|
created for you. If you'd like to take your configuration with you to another
|
|
|
|
machine, simply copy the settings.json to the other machine.
|
2016-08-26 00:24:13 +03:00
|
|
|
|
|
|
|
# Global and local settings
|
|
|
|
|
|
|
|
You can set these settings either globally or locally. Locally means that the setting
|
|
|
|
won't be saved to `~/.config/micro/settings.json` and that it will only be set in
|
|
|
|
the current buffer. Setting an option globally is the default, and will set the option
|
|
|
|
in all buffers.
|
|
|
|
|
|
|
|
The `colorscheme` option is global only, and the `filetype` option is local only. To
|
|
|
|
set an option locally, use `setlocal` instead of `set`.
|
2016-08-26 03:15:58 +03:00
|
|
|
|
|
|
|
In the `settings.json` file you can also put set options locally by specifying a glob.
|
|
|
|
Here is an example which has `tabstospaces` on for all files except Go files, and
|
|
|
|
`tabsize` 4 for all files except Ruby files:
|
|
|
|
|
2016-08-30 10:35:21 +03:00
|
|
|
```json
|
2016-08-26 03:15:58 +03:00
|
|
|
{
|
|
|
|
"*.go": {
|
|
|
|
"tabstospaces": false
|
|
|
|
},
|
|
|
|
"*.rb": {
|
|
|
|
"tabsize": 2
|
2016-08-30 10:35:21 +03:00
|
|
|
},
|
2016-08-26 03:15:58 +03:00
|
|
|
"tabstospaces": true,
|
2016-08-30 10:35:21 +03:00
|
|
|
"tabsize": 4
|
2016-08-26 03:15:58 +03:00
|
|
|
}
|
|
|
|
```
|
|
|
|
|
|
|
|
As you can see it is quite easy to set options locally using the `settings.json` file.
|