]> git.lizzy.rs Git - micro.git/blobdiff - runtime/help/commands.md
Merge branch 'master' into patch-1
[micro.git] / runtime / help / commands.md
index 45264f2ac32f5e3546b164ad660354eab1a10e40..61f6fe10a791ecf9d57ec554f189d14275809e5b 100644 (file)
@@ -9,11 +9,12 @@ Here are the possible commands that you can use.
   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.
@@ -28,9 +29,6 @@ Here are the possible commands that you can use.
 
 * `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.
 
@@ -47,26 +45,19 @@ Here are the possible commands that you can use.
 
 * `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.
 
@@ -76,11 +67,33 @@ Here are the possible commands that you can use.
 
 * `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.