forked from extern/ohmyzsh
feat(zbell): add option not to use notify-send (#10082)
This commit is contained in:
parent
65bbd24eec
commit
8d58994d76
@ -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).
|
||||
|
@ -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"
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user