.bashrc.d/20nobeep: Disable accessibility.typeaheadfind.enablesound
authorW. Trevor King <wking@tremily.us>
Thu, 26 Mar 2015 18:18:07 +0000 (11:18 -0700)
committerW. Trevor King <wking@tremily.us>
Thu, 26 Mar 2015 18:27:07 +0000 (11:27 -0700)
I don't want Firefox beeping every time I type something that can't be
found in the current tab.  Override the default value by editing
user.js [1].

[1]: https://developer.mozilla.org/en-US/docs/Mozilla/Preferences/A_brief_guide_to_Mozilla_preferences

src/.bashrc.d/20nobeep

index b2a1d3e15718f1a1af36871eb804fa7bbddffff8..6e6176f739dc8882555fffc25a277de5ac9a38b1 100644 (file)
@@ -9,3 +9,19 @@ fi
 if [ -n "$TERM" ] && [ -z "$SSH_CLIENT" ]; then
        setterm --blength 0
 fi
+
+# turn off beeps in Firefox
+if [ -f ~/.mozilla/firefox/profiles.ini ]; then
+       for PROFILE in $(sed -n 's/Path=//p' .mozilla/firefox/profiles.ini); do
+               PREFERENCES=~/.mozilla/firefox/"${PROFILE}"/user.js
+               if [ -f "${PREFERENCES}" ]; then
+                       if grep accessibility.typeaheadfind.enablesound "${PREFERENCES}" >/dev/null; then
+                               sed -i 's/\("accessibility.typeaheadfind.enablesound"\)[^)]*/\1, false/' "${PREFERENCES}"
+                       else
+                               echo 'user_pref("accessibility.typeaheadfind.enablesound", false);' >>"${PREFERENCES}"
+                       fi
+               else
+                       echo 'user_pref("accessibility.typeaheadfind.enablesound", false);' >>"${PREFERENCES}"
+               fi
+       done
+fi