Изменение активации (вкладка "Фокус") Поведение для сопоставлений Vimperator
Я хочу создать новое сопоставление ключей vimperator, которое дублирует функциональность отмены, но открывает вкладку в несфокусированной / фоновой вкладке.
Я знаю, что Tabopen использует флаг! переключить поведение активации для новой вкладки, но команда: u! не работает таким же образом. Есть ли способ сделать это, не прибегая к JavaScript (который я не знаю)?
1 ответ
Решение
Добавьте следующий код к вашему .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
Пример привязки ключа Ccu:
nnoremap <C-c>u :undob<CR>