Browse Source

feat(bgnotify): add option to disable terminal bell (#12077)

Benjamin Neff 5 months ago
parent
commit
0a9d82780e
2 changed files with 6 additions and 1 deletions
  1. 2 0
      plugins/bgnotify/README.md
  2. 4 1
      plugins/bgnotify/bgnotify.plugin.zsh

+ 2 - 0
plugins/bgnotify/README.md

@@ -35,12 +35,14 @@ Just add bgnotify to your plugins list in your `.zshrc`
 
 One can configure a few things:
 
+- `bgnotify_bell` enabled or disables the terminal bell (default true)
 - `bgnotify_threshold` sets the notification threshold time (default 6 seconds)
 - `function bgnotify_formatted` lets you change the notification. You can for instance customize the message and pass in an icon.
 
 Use these by adding a function definition before the your call to source. Example:
 
 ```sh
+bgnotify_bell=false   ## disable terminal bell
 bgnotify_threshold=4  ## set your own notification threshold
 
 function bgnotify_formatted {

+ 4 - 1
plugins/bgnotify/bgnotify.plugin.zsh

@@ -27,7 +27,7 @@ function bgnotify_end {
     # check if Terminal app is not active
     [[ $(bgnotify_appid) != "$bgnotify_termid" ]] || return
 
-    printf '\a' # beep sound
+    [[ $bgnotify_bell = true ]] && printf '\a' # beep sound
     bgnotify_formatted "$exit_status" "$bgnotify_lastcmd" "$elapsed"
   } always {
     bgnotify_timestamp=0
@@ -136,6 +136,9 @@ function bgnotify {
 
 ## Defaults
 
+# enable terminal bell on notify by default
+bgnotify_bell=${bgnotify_bell:-true}
+
 # notify if command took longer than 5s by default
 bgnotify_threshold=${bgnotify_threshold:-5}