From 3819c3ee74094c3d413aa6863f2047563d1bfd06 Mon Sep 17 00:00:00 2001 From: Andrey Astafyev Date: Fri, 23 Dec 2022 16:44:39 +0300 Subject: [PATCH] =?UTF-8?q?=D0=92=D0=B8=D0=B4=D0=B6=D0=B5=D1=82=20=D0=B4?= =?UTF-8?q?=D0=BB=D1=8F=20=D0=B7=D0=B0=D0=B2=D0=B5=D1=80=D1=88=D0=B5=D0=BD?= =?UTF-8?q?=D0=B8=D1=8F=20=D0=BF=D1=80=D0=BE=D1=86=D0=B5=D1=81=D1=81=D0=BE?= =?UTF-8?q?=D0=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 72-widgets.zsh | 30 ++++++++++++++++++++++++------ 1 file changed, 24 insertions(+), 6 deletions(-) diff --git a/72-widgets.zsh b/72-widgets.zsh index c6dd04a..1ca2cc9 100644 --- a/72-widgets.zsh +++ b/72-widgets.zsh @@ -21,10 +21,28 @@ if command -v fzf > /dev/null 2>&1; then fi #}}} -#ZSH_FZF_PASTE_KEY=enter -#ZSH_FZF_EXEC_KEY=ctrl-r -#zinit wait'0' lucid light-mode depth'1' for \ -# atload"bindkey '^H' fzf-history; \ -# bindkey '^Z' fzf-kill-proc-by-list" \ -# amaya382/zsh-fzf-widgets +ZSH_FZF_PASTE_KEY=enter +ZSH_FZF_EXEC_KEY=ctrl-r +fzf-kill-proc-by-list() { + local cmd=$([ "$UID" != '0' ] && echo "ps -f -u $UID" || echo 'ps -ef') + local res=$(${=cmd} \ + | FZF_DEFAULT_OPTS="${FZF_DEFAULT_OPTS} + --no-sort + --reverse + --bind=\"${ZSH_FZF_PASTE_KEY}:execute@echo kill -9 \$(echo {} | awk '{print \$2}')@+abort\" + --bind=\"${ZSH_FZF_EXEC_KEY}:execute@kill -9 \$(echo {} | awk '{print \$2}')@+abort\" + " $(__fzfcmd)) + + if [[ -n "$res" ]]; then + LBUFFER=${LBUFFER}$res + zle redisplay + else + zle reset-prompt + fi +} + +if command -v fzf > /dev/null 2>&1; then + zle -N fzf-kill-proc-by-list + bindkey '^Z' fzf-kill-proc-by-list +fi