WDF

Firefoxのメインメニューをまとめる

Firefox のメインメニューのラベルを変更する不要なメニューを非表示にする を参考にしてメインメニューをまとめてラベルを変更する userChrome.js スクリプトを作ってみました。

(function() {
    var aTarget = getTopWin().document.getElementById('main-menubar');
    var menu = document.createElement('menu');
    menu.setAttribute('id', 'firefox-mainmenu');
    menu.setAttribute('label', 'Fox');
    menu.setAttribute('accesskey', 'F');

    var popup = document.createElement('menupopup');
    var menucount = aTarget.childNodes.length;
    var j = 0;
    var showFlag = {
        "File"      : false,
        "Edit"      : false,
        "View"      : false,
        "History"   : false,
        "Books"     : true,
        "Tools"     : false,
        "Help"      : false
    }

    for (var prop in showFlag) {
        aTarget.childNodes[j].setAttribute('label', prop);
        if (showFlag[prop]) {
            j++;
        } else {
            popup.appendChild(aTarget.childNodes[j]);
        }
    }

    menu.appendChild(popup);
    aTarget.appendChild(menu);
})();

こんな感じになります。
FoxメニューにBooks(Bookmarks)以外のメニューがまとめられます。
showFlagの部分を適当に変更すれば、カスタマイズできます。

参考サイト:Firefox の拡張機能、userChrome.js の私の使い方