diff options
| author | Matthieu Baerts <matttbe@gmail.com> | 2021-12-29 10:38:00 +0100 | 
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-12-29 10:38:00 +0100 | 
| commit | 8d58994d765de350f1dc66132eaab0358e10a4ab (patch) | |
| tree | 3ed3d60d607443c5089bf385238702b8ac358b6e /plugins | |
| parent | 65bbd24eec6b64f2f526c974781f08373277be0c (diff) | |
| download | zsh-8d58994d765de350f1dc66132eaab0358e10a4ab.tar.gz zsh-8d58994d765de350f1dc66132eaab0358e10a4ab.tar.bz2 zsh-8d58994d765de350f1dc66132eaab0358e10a4ab.zip | |
feat(zbell): add option not to use notify-send (#10082)
Diffstat (limited to 'plugins')
| -rw-r--r-- | plugins/zbell/README.md | 3 | ||||
| -rw-r--r-- | plugins/zbell/zbell.plugin.zsh | 17 | 
2 files changed, 18 insertions, 2 deletions
| diff --git a/plugins/zbell/README.md b/plugins/zbell/README.md index 1c1c13546..eb87699c4 100644 --- a/plugins/zbell/README.md +++ b/plugins/zbell/README.md @@ -24,6 +24,9 @@ These settings need to be set in your zshrc file, before Oh My Zsh is sourced.    zbell_ignore=($EDITOR $PAGER)    ``` +- `zbell_use_notify_send`: If set to `true`, `notify-send` tool is used -- if +  available -- to display a popup on the screen. Default: `true` (enabled). +  ## Author  Adapted from an original version by [Jean-Philippe Ouellet](https://github.com/jpouellet). diff --git a/plugins/zbell/zbell.plugin.zsh b/plugins/zbell/zbell.plugin.zsh index 6d0416502..8e374029b 100644 --- a/plugins/zbell/zbell.plugin.zsh +++ b/plugins/zbell/zbell.plugin.zsh @@ -29,18 +29,31 @@ autoload -Uz regexp-replace || return  # initialize zbell_ignore if not set  (( ${+zbell_ignore} )) || zbell_ignore=($EDITOR $PAGER) +# initialize zbell_use_notify_send if not set +(( ${+zbell_use_notify_send} )) || zbell_use_notify_send=true +  # initialize it because otherwise we compare a date and an empty string  # the first time we see the prompt. it's fine to have lastcmd empty on the  # initial run because it evaluates to an empty string, and splitting an  # empty string just results in an empty array.  zbell_timestamp=$EPOCHSECONDS +# UI notification function +# $1: command +# $2: duration in seconds +zbell_ui_notify() { +	[[ $zbell_use_notify_send != "true" ]] && return + +	if type notify-send > /dev/null; then +		notify-send -i terminal "Command completed in ${2}s:" $1 +	fi +} +  # default notification function  # $1: command  # $2: duration in seconds  zbell_notify() { -	type notify-send > /dev/null && \ -		notify-send -i terminal "Command completed in ${2}s:" $1 +	zbell_ui_notify "${@}"  	print -n "\a"  } | 
