Expertus metuit
Переключение между недавними табами в Chrome через Ctrl+Tab
2021-12-23 19:27

В Google Chrome переключение между табами по Ctrl+Tab всегда происходит по порядку следования табов. То есть нажатие на Ctrl+Tab всегда переключает на следующий по порядку таб, а Ctrl+Shift+Tab — на предыдущий. Это чрезвычайно неудобно, если приходится быстро и часто переключаться между несколькими табами, которые находятся в разных местах. Такая фича называется Most recently used switch (MRU Switch). В других браузерах такое поведение включается штатным образом через настройки, но не в chrome. Есть даже очень старая задача из трекера на эту тему, но она была без всяких комментариев закрыта гуглом несмотря на сотни комментариев.

Раньше было можно изменить поведение через расширения, но Google и эту возможность заблокировал, причём именно для сочетания Ctrl+Tab, внятного объяснения тоже не последовало.

Однако пользователи нашли способ. В chrome web store есть расширение QuicKey и в нём описана возможность включить MRU Switch через хак девелоперской консоли.

Для начала устанавливаем расширение со страницы в каталоге: https://chrome.google.com/webstore/detail/quickey-%E2%80%93-the-quick-tab-s/ldlghkoiihaelfnggonhjnfiabmaficg/related?hl=en. У этого расширения есть и другая функциональность по улучшению работы с табами, но в рамках этой статьи они нам не интересны.

Как настроить Ctrl+Tab, написано на сайте расширения: https://fwextensions.github.io/QuicKey/ctrl-tab/. Это делается через консоль разработчика на странице настроек клавиатурных сочетаний. Сначала открываем эту страницу, её адрес: chrome://extensions/shortcuts, скопируйте его, откройте новый таб, вставьте и нажмите Enter.

Дальше нужно открыть консоль разработчика для этой страницы, переключитесь на неё и нажмите Ctrl+Shift+J (для Windows или Linux) или Command-Option-J (⌘+⌥+j для macos). Откроется окно, в котором нужно выбрать закладку Console.

И дальше два варианта.

Вариант 1: Ctrl+Tab переключает только между двумя текущей и предыдущей вкладками.

Скопируйте этот кусок кода и выполните его в закладке Console (то есть вставьте и нажмите Enter):

chrome.developerPrivate.updateExtensionCommand({
    extensionId: "ldlghkoiihaelfnggonhjnfiabmaficg",
    commandName: "30-toggle-recent-tabs",
    keybinding: "Ctrl+Tab"
});

Вариант 2: Ctrl+Tab переключает между несколькими недавними вкладками при быстром последовательном нажатии

Скопируйте этот кусок кода и выполните его в закладке Console (то есть вставьте и нажмите Enter):

chrome.developerPrivate.updateExtensionCommand({
    extensionId: "ldlghkoiihaelfnggonhjnfiabmaficg",
    commandName: "1-previous-tab",
    keybinding: "Ctrl+Tab"
});
chrome.developerPrivate.updateExtensionCommand({
    extensionId: "ldlghkoiihaelfnggonhjnfiabmaficg",
    commandName: "2-next-tab",
    keybinding: "Ctrl+Shift+Tab"
});

После установки расширения ему нужно некоторое время, чтобы собрать информацию обо всех табах, чтобы корректно перключаться, поэтому поначалу могут быть небольшие проблемы.

Комментарии

Текст комментария (разметка: *курсив*, **полужирная**, [ссылка](http://example.com) или <http://example.com> ещё)
Имя (обязательно, 50 символов или меньше)
Опциональный email, на который получать ответы (не будет опубликован)
Веб-сайт
© 2006—2022 Sergey Stolyarov | Работает на Pyrone