Подтвердить что ты не робот

Временно отключить Vimperator

Как временно отключить Vimperator? Например, я хотел бы временно отключить Vimperator, когда я использую приложение электронной почты. Есть ли для этого команда?

4b9b3361

Ответ 1

Я предполагаю, что вы уже знаете о Shift-Esc, чтобы временно отключить vimperator. Поэтому я написал, как отключить vimperator на основе вашего текущего местоположения.

Во-первых, решение:

autocmd LocationChange .*                             js modes.passAllKeys = false
autocmd LocationChange mail\\.google\\.com            js modes.passAllKeys = true
autocmd LocationChange www\\.google\\.com/calendar    js modes.passAllKeys = true
autocmd LocationChange www\\.google\\.com/reader      js modes.passAllKeys = true
autocmd LocationChange mail\\.google\\.com/tasks      js modes.passAllKeys = false

Этот фильтр gMail, gCalendar, gReader, но не gTask.

Решение, которое я дал, - это каскадный подход, когда вы определяете все веб-сайты, чтобы включить vimperator, затем он выборочно отключается для каждого веб-сайта. Таким образом, несмотря на то, что gTask использует тот же родительский сайт, что и gmail, он активирован vimperator.

Теперь объяснение:

Эти команды входят в ваш .vimperatorrc в домашнем каталоге. Вы можете изменить расположение .vimperatorrc на

source! *directory*

в файле .vimperatorrc, но по умолчанию это файл .vimperatorrc в вашем домашнем каталоге. (% userprofile% в Windows)

Альтернативное решение:

autocmd LocationChange .* js modes.passAllKeys = /mail\.google\.com/.test(buffer.URL)

* Обратите внимание на обратную косую черту, чтобы избежать точки.

Проблема с этим подходом заключается в том, что только последняя строка команды с autocmd будет работать. Значение последней команды autocmd перезаписывает первую. Таким образом, в результате вы получите логическую операцию над командой:

autocmd LocationChange .* js modes.passAllKeys = /(mail\.google\.com|google\.com\/reader)/.test(buffer.URL)

Как вы можете видеть, это может усложниться, когда у вас есть много сайтов, которые вы хотите отфильтровать.

Документация: http://vimperator.sourceforge.net/help/vimperator/autocommands.xhtml
Источник решения: http://code.google.com/p/vimperator-labs/issues/detail?id=406

Ответ 2

Используйте Shift + Esc, чтобы временно отключить Vimperator. Нажмите его еще раз, чтобы заставить его работать.

Ответ 3

вы можете использовать команду ignorekeys

ignorekeys add mail.yahoo.com
ignorekeys add mail.google.com

чтобы отключить все виртуальные ключи vimperator в тех доменах.

Ответ 4

Вы можете использовать клавиатуру-shorcuts для gmail/feedly с помощью feedSomeKeys (плагин для Vimperator).

Как?

  • Получить this и этот файл.
  • Скопируйте оба файла в ~/.vimperator/plugins (если его не существует)
  • Добавьте эти строки в файл ~/.vimperatorrc:

    : источник ~/.vimperator/plugin_libly.js : Команда! -nargs = + lazy autocmd VimperatorEnter. * : lazy fmaps -u = 'mail.google.com/mail' c/j k n p o u e x s r a # []? gi gs gt gd ga gc

  • Попробуйте!

Ответ 5

Используя решение autocmd, может возникнуть раздражение, возникающее при каждом появлении сообщения "Выполнение команд LocationChange Auto для...".

В последней версии vimperator (3.8.3) это сообщение не отображается по умолчанию, только в подробном режиме.
Но текущая версия в Firefox Addons - 3.8.2, поэтому нам нужно установить ее вручную. Просто:

git clone https://github.com/vimperator/vimperator-labs.git . 
make xpi

Затем установите vimperator из каталога downloads.