概要
Noise 是 Firefox 的附加元件,讓瀏覽器在事件發生時,發出對應的聲音。
例如擋下彈出視窗的時候,可以發出嗶聲,或其他你選擇的 .wav 音效。
請注意:這個網頁已經過時,Noise 在 Firefox 57 後整個重寫了。
未來所有的文件將以 github 和 AMO 上的說明為主。
預設可用的事件包括 視窗開啟、下載完成…… 等,
其實只要能以某些 observer/listener 捕捉的事件便有可能支援,詳情請見後述。
下載
最新版本放在
Noise :: Firefox 附加元件
Ver.
1.4
更新/版本記錄
|
相容於 Firefox 4.0 - 33.*
也有 git repository 在 GitHub: bootleq's Noise at master - GitHub
支援
任何意見、錯誤回報請利用 Google 論壇: Noise (Firefox Extension)
或直接寄信給 [email protected]
支援語言
此套件使用 BabelZilla 管理本地化檔案。
目前支援的語言包括:
Dansk
Deutsch
English (US)
Français
עברית
日本語
Polski
Português (do Brasil)
Türkçe
中文 (简体)
中文 (繁體)
使用方式
試試看按 Ctrl + F 在頁面中尋找文字,當多次尋找「下一筆」而搜尋至頁尾時,再找下一筆便會聽到「咚」的聲音。
接著你可以打開選項視窗,設定哪些事件要對應哪些音效。詳情可參考 設定。
目前 Noise 安裝檔並未包含聲音檔案,所以預設只能發出「咚」的聲音。
這裡提供一些建議,希望你找到喜歡的音效:
- Soundsnap.com: Find and Share Free Sound Effects and Loops
- ザ・マッチメイカァズ2nd 【フリー効果音素材】
- 使用 snailrush 開發的 PSound 抽取 PS 或 PS2 遊戲光碟中的聲音資料。
設定
選項視窗的使用 | 編輯視窗的使用
-
進入擴充套件管理員(工具 > 附加元件 > 擴充套件)找到 Noise,
點兩下滑鼠或按下選項以進入 Noise 選項。 -
選項視窗包含核取方塊、表格、和一些按鈕,解釋如下:
-
啟用聲音:
此選項將全域設定 Noise 的有效/無效。
如果不勾選,Noise 就不會發出聲音(但有個例外,就是 Noise 編輯視窗仍會播放聲音以便測試。)
提示:在瀏覽器視窗可以按「accel + alt + shift + N」快捷鍵來開關 Noise。 -
表格:
這裡列出所有事件和相對應的聲音。
- 連按兩下滑鼠,可以編輯項目。
- 可以用拖曳的方式改變項目次序。
- 可以用按 Enter 鍵編輯,按空白鍵則是啟用/停用一個項目。
-
按右鍵可以顯示編輯用的選單,目前這是新增分隔線的唯一方法。
選擇 新增 → 副本 可以複製目前選取的項目。
-
按鈕:
- 新增、編輯、試聽、啟用、移除 可用來編輯表格項目。
-
設定值支援 匯出/匯入/復原為預設值 等功能,設定檔是以 rdf 檔案儲存的。
- 確定、取消 按鈕沒有什麼特別,按下確定後,設定會立即生效。
-
事件導覽:
「事件導覽」鏈結會開啟一個導覽視窗,裡面列出所有 Noise 預設的事件選項。
如果你想找回某個預設選項,或者想知道新版本提供了什麼新功能,就來這兒瞧瞧吧:
選取的項目會被加進 Noise 選項視窗。
-
編輯視窗的使用 | 選項視窗的使用
-
在 Noise 選項視窗,在表格項目上按兩下便會開啟 Noise 編輯視窗。
各欄位說明如下:-
名稱
這個項目的名稱。隨便改也沒關係。
-
事件
根據不同的事件類型,需要填的值也不一樣,應該是 topic 或 event type,請參考「事件類型」說明。
請留步!
如果你對內部程式碼興趣不大,那麼可以不必往下看「事件類型」的說明,
直接前往事件參考找出需要的值會比較方便。
對於進階使用者(知道當機了能怎麼辦),可以使用「事件過濾」來進一步篩選想捕捉的事件:
作法是在事件字串後加上&
連接事件處理式,這樣就只有運算結果為 true 的時候,才會發出聲音了。
例如DOMContentLoaded&event.target.baseURI=='http://127.0.0.1/'
只會在讀取 http://127.0.0.1/ 網址的時候發出音效。
詳細說明請參考 事件過濾。 -
事件類型
Noise 以三種方式捕捉事件:
-
事件主題
有些事件藉由 nsIObserverService 的 notifyObservers 來通知系統某個「事件主題(topic)」發生了,
Noise 會產生 nsIObserver 來捕捉這些事件主題。
所以這個「事件主題」(topic)字串就是需要填進空格的東西,例:domwindowclosed
-
瀏覽器事件
如果一個事件能夠以
gBrowser.addEventListener
捕捉的話,
將這個事件的 event type 填入即可,例如click
、copy
、TabOpen
等。 -
視窗事件
同上,但改為以
window.addEventListener
捕捉事件。
-
-
聲音檔案
要播放的聲音檔案,接受以下格式的字串:
-
beep
直接輸入
beep
就會播放系統預設的嗶聲。 -
系統音效
使用
event:aEventId
(需要 Gecko 1.9.2 以上的版本)或sys:soundAlias
可指定系統音效。
例:event:EVENT_MENU_POPUP
。
參考 aEventId。 -
本地端 wav 檔案
按下「瀏覽...」並選取檔案便能得到這個字串,例如
C:\WINDOWS\Media\ding.wav
。
你也可以使用相對路徑,配合一個主目錄來管理聲音檔。
作法是啟用「使用聲音目錄」方塊,接著「瀏覽...」就會由指定的主目錄開始了,
結果就是只需要filename.wav
便能指定檔案,增加不少可攜性。註:一次只能使用一個主目錄,否則原本的相對路徑會找不到檔案。
有此需要時,Noise 會先詢問是否要更改主目錄,請別見怪。 -
Chrome URL 格式的本地端 wav 檔案
其實和本地端檔案一樣,只不過寫為 Chrome URL 的型式。
在包裝自訂版本的 Noise 時可能有用…… 我也不確定。
-
-
試聽
播放聲音聽聽看。即使 Noise 未啟用聲音,此按鈕仍不受影響。
-
已知問題
雜項
感謝!
- 此套件初期大量參考了 nrlz 的附加元件 PopupSound 和 Gomita 的附加元件 FireGestures
- 在附加元件面板的「關於」對話框,可以看到其他的貢獻者。
解除安裝
- 在「工具 > 附加元件 > 擴充套件」選擇「移除」即可。
- 如果你真的很在乎沒砍乾淨,把以下設定清掉也沒關係。
- 進入 Profiles 資料夾,刪除 noise-mappings.rdf 檔案。這是你 事件/音效 表格的設定檔。
- 同樣在 Profiles 資料夾,刪除 noise 資料夾。這是預設用來放聲音檔案的地方。
- 從網址列進入 about:config,若有 extensions.noise.base、extensions.noise.enabled、extensions.noise.version 和 [email protected] 也可以刪。
替代方案
- PopupSound 0.1.5 - 可設定 阻擋廣告視窗、點選鏈結、下載完成 音效。
- Navigational Sounds 1.1.0 - 直接使用 Windows 系統音效配置。 可設定 點選鏈結、阻擋廣告視窗、系統通知 音效。