Add upstream oh_my_zsh repo
This commit is contained in:
@@ -2,25 +2,13 @@
|
||||
|
||||
Easily prefix your current or previous commands with `sudo` by pressing <kbd>esc</kbd> twice
|
||||
|
||||
## Enabling the plugin
|
||||
To use it, add `sudo` to the plugins array in your zshrc file:
|
||||
|
||||
1. Open your `.zshrc` file and add `sudo` in the plugins section:
|
||||
```zsh
|
||||
plugins=(... sudo)
|
||||
```
|
||||
|
||||
```zsh
|
||||
plugins=(
|
||||
# all your enabled plugins
|
||||
sudo
|
||||
)
|
||||
```
|
||||
|
||||
2. Reload the source file or restart your Terminal session:
|
||||
|
||||
```console
|
||||
$ source ~/.zshrc
|
||||
$
|
||||
```
|
||||
|
||||
## Usage examples
|
||||
## Usage
|
||||
|
||||
### Current typed commands
|
||||
|
||||
|
||||
@@ -13,18 +13,42 @@
|
||||
# ------------------------------------------------------------------------------
|
||||
|
||||
sudo-command-line() {
|
||||
[[ -z $BUFFER ]] && zle up-history
|
||||
if [[ $BUFFER == sudo\ * ]]; then
|
||||
LBUFFER="${LBUFFER#sudo }"
|
||||
elif [[ $BUFFER == $EDITOR\ * ]]; then
|
||||
LBUFFER="${LBUFFER#$EDITOR }"
|
||||
LBUFFER="sudoedit $LBUFFER"
|
||||
[[ -z $BUFFER ]] && LBUFFER="$(fc -ln -1)"
|
||||
|
||||
# Save beginning space
|
||||
local WHITESPACE=""
|
||||
if [[ ${LBUFFER:0:1} == " " ]] ; then
|
||||
WHITESPACE=" "
|
||||
LBUFFER="${LBUFFER:1}"
|
||||
fi
|
||||
|
||||
if [[ -n $EDITOR && $BUFFER == $EDITOR\ * ]]; then
|
||||
if [[ ${#LBUFFER} -le ${#EDITOR} ]]; then
|
||||
RBUFFER=" ${BUFFER#$EDITOR }"
|
||||
LBUFFER="sudoedit"
|
||||
else
|
||||
LBUFFER="sudoedit ${LBUFFER#$EDITOR }"
|
||||
fi
|
||||
elif [[ $BUFFER == sudoedit\ * ]]; then
|
||||
LBUFFER="${LBUFFER#sudoedit }"
|
||||
LBUFFER="$EDITOR $LBUFFER"
|
||||
if [[ ${#LBUFFER} -le 8 ]]; then
|
||||
RBUFFER=" ${BUFFER#sudoedit }"
|
||||
LBUFFER="$EDITOR"
|
||||
else
|
||||
LBUFFER="$EDITOR ${LBUFFER#sudoedit }"
|
||||
fi
|
||||
elif [[ $BUFFER == sudo\ * ]]; then
|
||||
if [[ ${#LBUFFER} -le 4 ]]; then
|
||||
RBUFFER="${BUFFER#sudo }"
|
||||
LBUFFER=""
|
||||
else
|
||||
LBUFFER="${LBUFFER#sudo }"
|
||||
fi
|
||||
else
|
||||
LBUFFER="sudo $LBUFFER"
|
||||
fi
|
||||
|
||||
# Preserve beginning space
|
||||
LBUFFER="${WHITESPACE}${LBUFFER}"
|
||||
}
|
||||
zle -N sudo-command-line
|
||||
# Defined shortcut keys: [Esc] [Esc]
|
||||
|
||||
Reference in New Issue
Block a user