diff --git a/plugins/available/sudo.plugin.bash b/plugins/available/sudo.plugin.bash new file mode 100644 index 00000000..f18219b5 --- /dev/null +++ b/plugins/available/sudo.plugin.bash @@ -0,0 +1,15 @@ +cite about-plugin +about-plugin 'Toggle sudo before your current or last command' + +function sudo-command-line() { + [[ ${#READLINE_LINE} -eq 0 ]] && READLINE_LINE=$(fc -l -n -1 | xargs) + if [[ $READLINE_LINE == sudo\ * ]]; then + READLINE_LINE="${READLINE_LINE#sudo }" + else + READLINE_LINE="sudo $READLINE_LINE" + fi + READLINE_POINT=${#READLINE_LINE} +} + +# Define shortcut keys: [Esc] [Esc] +bind -x '"\e\e": sudo-command-line'