will 'save as' the filename.
* `replace "search" "value" flags`: This will replace `search` with `value`.
- The `flags` are optional. At this point, there is only one flag: `-a`, which
- replaces all occurrences at once.
+ The `flags` are optional. Possible flags are:
+ * `-a`: Replace all occurrences at once
+ * `-l`: Do a literal search instead of a regex search
- Note that `search` must be a valid regex. If one of the arguments does not
- have any spaces in it, you may omit the quotes.
+ Note that `search` must be a valid regex (unless `-l` is passed). If one
+ of the arguments does not have any spaces in it, you may omit the quotes.
* `replaceall "search" "value"`: This will replace `search` with `value` without
user confirmation.
* `show option`: shows the current value of the given option.
-* `eval "expression"`: Evaluates a Lua expression. Note that micro will not
- print anything so you should use `messenger:Message(...)` to display a value.
-
* `run sh-command`: runs the given shell command in the background. The
command's output will be displayed in one line when it finishes running.
* `tabswitch tab`: This command will switch to the specified tab. The `tab` can
either be a tab number, or a name of a tab.
+
+* `textfilter sh-command`: filters the current selection through a shell command
+ as standard input and replaces the selection with the stdout of the shell command.
+ For example, to sort a list of numbers, first select them, and then execute
+ `> textfilter sort -n`.
* `log`: opens a log of all messages and debug statements.
-* `plugin install plugin_name`: installs the given plugin.
-
-* `plugin remove plugin_name`: removes the given plugin.
-
* `plugin list`: lists all installed plugins.
-* `plugin update`: updates all installed plugins.
-
-* `plugin search plugin_name`: searches for the given plugin. Note that you can
- find a list of all available plugins at
- github.com/micro-editor/plugin-channel.
-
- You can also see more information about the plugin manager in the
- `Plugin Manager` section of the `plugins` help topic.
+* `plugin version pl`: shows version for specified plugin.
-* `plugin available`: list plugins available for download (this includes any
- plugins that may be already installed).
+* `plugin info pl`: shows additional info for specified plugin.
* `reload`: reloads all runtime files.
* `open filename`: Open a file in the current buffer.
+* `reset option`: resets the given option to its default value
+
* `retab`: Replaces all leading tabs with spaces or leading spaces with tabs
depending on the value of `tabstospaces`.
+* `raw`: Micro will open a new tab and show the escape sequence for every event
+ it receives from the terminal. This shows you what micro actually sees from
+ the terminal and helps you see which bindings aren't possible and why. This
+ is most useful for debugging keybindings.
+
+* `showkey`: Show the action(s) bound to a given key. For example
+ running `> showkey CtrlC` will display `main.(*View).Copy`. Unfortuately
+ showkey does not work well for keys bound to plugin actions. For those
+ it just shows "LuaFunctionBinding."
+
---
The following commands are provided by the default plugins:
* `lint`: Lint the current file for errors.
+
+* `comment`: automatically comment or uncomment current selection or line.
+
+# Command Parsing
+
+When running a command, you can use extra syntax that micro will expand before
+running the command. To use an argument with a space in it, simply put it in
+quotes. You can also use environment variables in the command bar and they
+will be expanded to their value. Finally, you can put an expression in backticks
+and it will be evaluated by the shell beforehand.