summaryrefslogtreecommitdiff
path: root/oh-my-zsh/plugins/sudo/README.md
diff options
context:
space:
mode:
authorAditya <bluenerd@protonmail.com>2023-02-27 20:04:56 +0530
committerAditya <bluenerd@protonmail.com>2023-02-27 20:04:56 +0530
commitedc449275b6c04445f58b108ca0937a87c1e8430 (patch)
tree9fd484d58145b616f29a78857cc0b1c8b1c18f05 /oh-my-zsh/plugins/sudo/README.md
parent6f5424ca96c4221ef433f545642669e9c104d0ed (diff)
add zsh
Diffstat (limited to 'oh-my-zsh/plugins/sudo/README.md')
-rw-r--r--oh-my-zsh/plugins/sudo/README.md75
1 files changed, 75 insertions, 0 deletions
diff --git a/oh-my-zsh/plugins/sudo/README.md b/oh-my-zsh/plugins/sudo/README.md
new file mode 100644
index 0000000..27cd20c
--- /dev/null
+++ b/oh-my-zsh/plugins/sudo/README.md
@@ -0,0 +1,75 @@
+# sudo
+
+Easily prefix your current or previous commands with `sudo` by pressing <kbd>esc</kbd> twice.
+
+To use it, add `sudo` to the plugins array in your zshrc file:
+
+```zsh
+plugins=(... sudo)
+```
+
+## Usage
+
+### Current typed commands
+
+Say you have typed a long command and forgot to add `sudo` in front:
+
+```console
+$ apt-get install build-essential
+```
+
+By pressing the <kbd>esc</kbd> key twice, you will have the same command with `sudo` prefixed without typing:
+
+```console
+$ sudo apt-get install build-essential
+```
+
+The same happens for editing files with your default editor (defined in `$SUDO_EDITOR`, `$VISUAL` or `$EDITOR`, in that order):
+
+If the editor defined were `vim`:
+
+```console
+$ vim /etc/hosts
+```
+
+By pressing the <kbd>esc</kbd> key twice, you will have the same command with `sudo -e` instead of the editor, that would open that editor with root privileges:
+
+```console
+$ sudo -e /etc/hosts
+```
+
+### Previous executed commands
+
+Say you want to delete a system file and denied:
+
+```console
+$ rm some-system-file.txt
+-su: some-system-file.txt: Permission denied
+$
+```
+
+By pressing the <kbd>esc</kbd> key twice, you will have the same command with `sudo` prefixed without typing:
+
+```console
+$ rm some-system-file.txt
+-su: some-system-file.txt: Permission denied
+$ sudo rm some-system-file.txt
+Password:
+$
+```
+
+The same happens for file editing, as told before.
+
+## Key binding
+
+By default, the `sudo` plugin uses <kbd>Esc</kbd><kbd>Esc</kbd> as the trigger.
+If you want to change it, you can use the `bindkey` command to bind it to a different key:
+
+```sh
+bindkey -M emacs '<seq>' sudo-command-line
+bindkey -M vicmd '<seq>' sudo-command-line
+bindkey -M viins '<seq>' sudo-command-line
+```
+
+where `<seq>` is the sequence you want to use. You can find the keyboard sequence
+by running `cat` and pressing the keyboard combination you want to use.