Решение.
Следующий ex-файл Pentadactyl (со встроенным Javascript) должен содержать команду, которая будет сопоставлять метку всех вкладок регулярному выражению и перемещать соответствующие вкладки в группу с указанным идентификатором. Обратите внимание, что при сопоставлении регистр не учитывается.
" tgroup-moveselected.penta " Provides the command tgroup-moveselected, which moves all tabs matching a " given regular expression to the group with specified id. " eg. :tgroup-moveselected "penta" "pentadactyl" " moves any tabs whose label matches /pentadactyl/ to the group with id "penta" " Requires the TabGroupie plugin. command! tgroup-moveselected \ -nargs=+ \ -description "move tabs matching regex to a given group" \ -js tgroupMoveSelected(args[0], RegExp(args[1])) js <<EOF function getPlugin(s) { for (x in plugins.contexts) { if (x.contains(s)) return plugins.contexts[x][s]; } } var TabGroupie = getPlugin("TabGroupie"); function matchingTabs(rx) { var alltabs = tabs.allTabs; var alltabs = gBrowser.getTabsToTheEndFrom(0); function matches(t) { return rx.test(t.label.toLowerCase()); } var matching = alltabs.filter(matches); return matching; } function matchingTabsInGroup(rx) { var alltabs = gBrowser.getTabsToTheEndFrom(0); function matches(t) { return rx.test(t.label.toLowerCase()); } var matching = alltabs.filter(matches); return matching; } function tgroupMoveSelected (targetgrp, rx) { var matching = matchingTabs(rx); var tgrpId = TabGroupie.getIdByTitle(targetgrp); var i, t; for (i=0; i<matching.length; ++i) { t = matching[i]; TabView.moveTabTo(t, tgrpId); } TabView.hide(); } EOF
Я загрузил его в Github как Gist, так что вы можете скачать его оттуда, если хотите.
Этот скрипт требует плагина TabGroupie .
предупреждение : в моей системе размещение этого плагина
~/.pentadactyl/plugins
(для загрузки при запуске Pentadactyl) полностью нарушает функциональность групп вкладок. Чтобы это исправить, я должен отключить пентадактиль, перезапустить FF и включить пентадактиль. Похоже, решение состоит в том, чтобы загрузить TabGroupie после запуска Pentadactyl (удалив его из/plugins/
каталога и просто выбрав источник после запуска FF).
Рекомендуемая настройка
Сохраните оба tgroup-moveselected.penta и TabGroupie.js в вашем
~/.pentadactyl
каталоге.Добавьте следующую строку в ваш
.pentadactylrc
:command! tginit :source ~/.pentadactyl/TabGroupie.js | source ~/.pentadactyl/tgroupmoveselected.penta
Когда вы запускаете FF, вы можете инициализировать функциональность группы вкладок Pentadactyl с помощью команды
:tginit
.Если вы хотите часто использовать определенный шаблон и / или группу вкладок, вы можете создать отображение или команду в качестве ярлыка. Например, если вы хотите использовать C-mв качестве горячей клавиши отправку всех вкладок с «пентадактилем» в заголовке группе вкладок с идентификатором «penta», вы можете использовать эту команду:
:map <C-m> :tgroup-moveselected "penta" "pentadactyl"<CR>