summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--plugins/vi-mode/README.md15
-rw-r--r--plugins/vi-mode/vi-mode.plugin.zsh4
2 files changed, 12 insertions, 7 deletions
diff --git a/plugins/vi-mode/README.md b/plugins/vi-mode/README.md
index 46bb6d070..a1d6bc6b0 100644
--- a/plugins/vi-mode/README.md
+++ b/plugins/vi-mode/README.md
@@ -32,16 +32,21 @@ plugins=(... vi-mode)
- `MODE_INDICATOR`: controls the string displayed when the shell is in normal mode.
See [Mode indicator](#mode-indicator) for details.
-## Mode indicator
+- `INSERT_MODE_INDICATOR`: controls the string displayed when the shell is in insert mode.
+ See [Mode indicator](#mode-indicator) for details.
+
+## Mode indicators
*Normal mode* is indicated with a red `<<<` mark at the right prompt, when it
-hasn't been defined by theme.
+hasn't been defined by theme, *Insert mode* is not displayed by default.
-You can change this indicator by setting the `MODE_INDICATOR` variable. This setting
-supports Prompt Expansion sequences. For example:
+You can change these indicators by setting the `MODE_INDICATOR` (*Normal mode*) and
+`INSERT_MODE_INDICATORS` (*Insert mode*) variables.
+This settings support Prompt Expansion sequences. For example:
```zsh
-MODE_INDICATOR="%F{yellow}+%f"
+MODE_INDICATOR="%F{white}+%f"
+INSERT_MODE_INDICATOR="%F{yellow}+%f"
```
You can also use the `vi_mode_prompt_info` function in your prompt, which will display
diff --git a/plugins/vi-mode/vi-mode.plugin.zsh b/plugins/vi-mode/vi-mode.plugin.zsh
index dd4afdd8b..b40b29961 100644
--- a/plugins/vi-mode/vi-mode.plugin.zsh
+++ b/plugins/vi-mode/vi-mode.plugin.zsh
@@ -123,7 +123,7 @@ wrap_clipboard_widgets copy vi-yank vi-yank-eol vi-backward-kill-word vi-change-
wrap_clipboard_widgets paste vi-put-{before,after}
unfunction wrap_clipboard_widgets
-# if mode indicator wasn't setup by theme, define default
+# if mode indicator wasn't setup by theme, define default, we'll leave INSERT_MODE_INDICATOR empty by default
if [[ -z "$MODE_INDICATOR" ]]; then
MODE_INDICATOR='%B%F{red}<%b<<%f'
fi
@@ -136,7 +136,7 @@ function vi_mode_prompt_info() {
# set RPS1/RPROMPT to something else in their custom config.
: "${VI_MODE_RESET_PROMPT_ON_MODE_CHANGE:=true}"
- echo "${${VI_KEYMAP/vicmd/$MODE_INDICATOR}/(main|viins)/}"
+ echo "${${VI_KEYMAP/vicmd/$MODE_INDICATOR}/(main|viins)/$INSERT_MODE_INDICATOR}"
}
# define right prompt, if it wasn't defined by a theme