Я хочу создать новое сопоставление ключей vimperator, которое дублирует функциональность отмены, но открывает вкладку в несфокусированной / фоновой вкладке.

Я знаю, что Tabopen использует флаг! переключить поведение активации для новой вкладки, но команда:u! не работает таким же образом. Есть ли способ сделать это, не прибегая к JavaScript (который я не знаю)?

1 ответ1

0

Добавьте следующий код в ваш файл .vimperatorrc чтобы создать команду undob которая вновь открывает закрытые вкладки в фоновом режиме, сохраняя их историю и не затрагивая текущую альтернативную вкладку.

command! undob -description "Undo closed tab in background" :js undob();
:js <<EOF
  undob = function() {
      var currT = gBrowser.selectedTab;
      var ssService = Components.interfaces.nsISessionStore;
      var ssClass = Components.classes['@mozilla.org/browser/sessionstore;1']
      var ss = ssClass.getService(ssService);
      var closedTabs = JSON.parse(ss.getClosedTabData(window));
      var ct0 = closedTabs[0]
      ss.undoCloseTab(window, ct0);
      gBrowser.selectedTab = currT;
  }
EOF

Пример привязки ключа Cc u:

nnoremap <C-c>u :undob<CR>

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .