1

Если нажатие клавиш H и L приведет вас к предыдущей и следующей страницам соответственно (Alt+Left/Right на ванильном Firefox), что является ключом для открытия предыдущей / следующей страницы в новой вкладке?

Функциональность, которую я пытаюсь достичь, подобна среднему щелчку левой и правой стрелок рядом с адресной строкой, желательно без необходимости доступа к истории (т. Е. Для режима частного просмотра). Если возможно, есть ли способ сделать это для другого элементы в списке :ju (прыжок)?

Примечание (2015/05/15): Некоторое время назад я переключился на Vimperator, и мне по-прежнему не хватает «открыть следующую / предыдущую страницу в новой вкладке», но решение, отмеченное ниже, прекрасно работает, когда я снова включил пентадактиль.

Примечание (2015/05/17): Pyrocrasty добавил версию Vimperator к решению, которая также прекрасно работает.

1 ответ1

1

ОБНОВЛЕНИЕ: полностью рабочее решение (см. Нижнюю часть ответа)


Встроенное решение: сломано?

На самом деле есть клавиша Ctrl +T, которая предназначена для выполнения следующего отображения в новой вкладке. Тем не менее, это не работает для меня вообще. Я не знаю почему.

Также есть tab команды ex, которая делает то же самое для следующей команды ex. Тем не менее, он не работает должным образом с командами истории. Он дублирует вкладку, но не возвращается.


Двухступенчатое решение

Вы можете достичь этого, комбинируя две команды:

  1. tabduplicate (или tabdu) дублирует текущую вкладку, сохраняя историю.

    Вы можете привязать его к ключу, добавив такую строку в ваш файл .pentadactylrc:

        map -g user -ex C :tabduplicate
    
  2. H и L назад и вперед, как вы упомянули.

    Поэтому, если вы используете приведенный выше пример привязки, вы можете использовать C H, чтобы открыть предыдущую страницу в новой вкладке.

примечание: положение новых вкладок.

Одним из важных предостережений является то, что, в зависимости от ваших настроек, этот метод может открывать новую вкладку в другом положении, чем нажатие правой кнопки мыши на кнопках истории. Команда C, как определено выше, откроет вкладку в конце панели вкладок, а не после текущей вкладки.

Если вы предпочитаете, чтобы вкладки открывались рядом с текущей, вы можете использовать расширение, чтобы открывать все новые вкладки после текущей вкладки. Tab Mix Plus является популярным выбором.


Первая попытка решения с одной командой.

У меня возникли проблемы при попытке получить одну команду, чтобы дублировать вкладку, а затем двигаться вперед или назад в ней. Тем не менее, легко скопировать вкладку в фоновом режиме, а затем переместиться вперед или назад в исходной вкладке.

Это имеет в основном тот же эффект, за исключением того, что позиции двух вкладок переключаются: вы возвращаетесь в историю, где находитесь, и вкладка в ее первоначальном состоянии остается там, где открываются новые вкладки. Возможно, вы захотите учесть это, только если вы используете расширение, чтобы все новые вкладки открывались рядом с текущей.

    map -g user -ex [t :execute "tabduplicate! | back"
    map -g user -ex ]t :execute "tabduplicate! | forward"

Затем вы можете открыть предыдущую страницу в новой вкладке с помощью [ t (вы можете использовать однобуквенную привязку клавиш, если она у вас есть).


ОБНОВЛЕНИЕ: Полностью рабочее решение Javascript

У меня это работает сейчас, с помощью команды Javascript. Проблема с моими ранними наивными попытками заключалась в том, что они пытались вернуться в историю до того, как история станет доступной. После некоторых исследований я решил проблему со слушателем событий.

Код находится в этой сути (обновление: версия vimperator). Либо включите его непосредственно в файл .pentadactylrc, либо сохраните его отдельно (предпочтительно в каталоге .pentadactyl) и получите его из .pentadactylrc. например.

:source "~/.pentadactyl/backt-forwardt.penta"

Затем вы можете использовать g h и g l для достижения тех же результатов, что и при нажатии средней кнопки «назад» /«вперед».

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