Vimium: Добавлена ​​возможность временно включать/выключать vimium для страницы.

Созданный на 30 дек. 2011  ·  28Комментарии  ·  Источник: philc/vimium

Было бы неплохо, если бы я мог сделать комбинацию клавиш, которая временно отключила бы vimium на текущей странице; кроме того, было бы неплохо иметь редактируемый список доменов в настройках, на которых vimium не будет работать.

Самый полезный комментарий

@smblott-github Насколько я вижу, запрошенная исходная функция все еще недоступна. Невозможно включить vimium на странице, где он в данный момент отключен, без перезагрузки страницы. Было бы полезно иметь возможность переключать его, щелкнув значок расширения vimium.

Все 28 Комментарий

В настройках уже есть редактируемый список доменов, на которых не запускается vimium.

Что касается временного отключения vimium, подходит ли ввод «i» (режим вставки)?

@philc Я

Я протестировал его, и режим вставки определенно работает на сайтах с супер AJAX, таких как GMail. Спасибо!

@DeadDork , вы находите, что GMail иногда заставляет Vimium выходить из режима вставки? Например, предположим, что у вас открыто два окна чата.

Нажмите «i», чтобы войти в режим вставки
Введите С-. (Ярлык GMail для перехода к следующему окну, в данном случае к чату 1)
Введите С-. (фокус чат 2)

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

Поле изменения фокуса GMail каким-то образом вызывает событие, подобное «экранированию», которое отменяет режим вставки?

Точно так же в большинстве случаев (но не всегда) нажатие «/» для перехода к строке поиска GMail в режиме вставки выводит меня из режима вставки.

@philc Мне бы понравилось, если бы в дополнение к режиму вставки у нас было еще одно отображаемое нажатие клавиши (вероятно, довольно причудливый аккорд), которое отключало бы vimium и оставалось выключенным, пока он не был снова включен. Это позволило бы мне использовать escape-последовательности и подобные вещи в GMail без того, чтобы vimium иногда отменял режим вставки. Похоже на #186

Обходной путь в режиме вставки работает, но было бы очень неплохо иметь отключаемую функцию. Vimperator в Firefox использует Shift+Esc, что очень удобно для таких сайтов, как Google docs. Shift+Esc включает и выключает Vimperator, и это было бы здорово для Vimium, особенно для сайтов, которые используют Esc в качестве горячей клавиши (игры HTML5 и тому подобное).

@beatgammit это кажется довольно приятной функцией. Интересно, сколько кода вам придется рефакторить...

@dankessler Я не знаком с кодовой базой vimium, поэтому понятия не имею. Это должно быть так же просто, как:

if (shift && escape) enabled = !enabled;
if (!enabled) return;

Я также не знаком с расширениями Chromium, поэтому это может быть сложнее...

Я просмотрел код и нашел флаг isEnabled . Я постараюсь реализовать эту функцию, когда у меня будет время, и никто другой ее не реализовал.

Только что получил PL с этой функциональностью: https://github.com/philc/vimium/pull/959
Надеюсь, вам понравится!

+1

Я читаю различные повторяющиеся проблемы, кажется, что одним из основных вариантов использования является использование этого в Gmail. Мы собираемся отправить № 491 в ближайшее время; уменьшит ли это потребность в этом глобальном переключателе, или переключатель по-прежнему важен даже для сопоставлений, специфичных для сайта?

@филк

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

Помимо игр, сайты становятся все более сложными. Я работаю над приложением HTML5 (с ярлыками) на встроенной платформе, поэтому мне часто приходится обращаться к одному и тому же приложению с разных IP-адресов. Как и в случае с игрой, добавление исключений для каждого из этих IP-адресов требует слишком много усилий, и я обычно пытаюсь просто проковылять, переходя в режим вставки (что не является реальным решением).

@филк
Та же проблема с гугл документом.

Это, конечно, не только Gmail. Любой веб-сайт имеет возможность привязки пользовательских ярлыков. Кроме того, другие плагины Chrome могут сопоставлять любой из этих ключей. Например, плагин Vimsert позволяет открывать редактор vim в любой текстовой области. Это не работает с Vimium, потому что оба привязаны к одним и тем же клавишам. Я не могу представить пользователя, отключающего Vimium для каждого сайта, на котором может быть форма, которую он может заполнить, но я мог представить пользователя, просто нажимающего Shift + Escape и отключающего Vimium перед использованием Vimsert. Это может показаться маловероятным сценарием, но, по моему мнению, вполне вероятно, что у пользователей Vimium могут быть другие плагины, которые обеспечивают большую «vim-подобную» функциональность и могут столкнуться с такими типами конфликтов.

Это только один пример, но я уверен, что есть много других. Суть в том, что я не думаю, что имеет смысл предполагать, что пользователь будет предусмотрительно знать, когда Vimium будет конфликтовать с сайтом или плагином.

@тандроид1. Может здесь проверить?

Редактировать: Ах, хорошо. Я взглянул на вимсерт. Ваша проблема с Escape , да?

@ smblott-github Да, клавиша escape - одна из проблем, но, поскольку она использует редактор ace vim, я полагаю, что большинство привязок клавиш будут конфликтовать.

@tandroid1 расширение, на которое вы <textarea> , поэтому мы автоматически переходим в режим вставки, когда оно находится в фокусе. Единственная привязка во вставке more — это <esc> / <c-[> , так что это должно быть единственное (но существенное) столкновение.

@philc @idf Несмотря на то, что документы Google являются исключенной страницей:
https?://docs.google.com/* с исключенными ключами * , побег по-прежнему не работает должным образом. Это поведение возвращается к нормальному состоянию, когда vimium отключен.

@drwl. Чтобы полностью отключить Vimium, следует оставить «Ключи» пустыми. Может ли это быть вашей проблемой? Если нет, возможно, откройте новую проблему и объясните, что вы ожидаете, и что происходит на самом деле.

@ smblott-github Интересно исключить * (все ключи) вместо того, чтобы оставить его пустым, что отключит Vimium на странице. Тем не менее, оставить его пустым работает!

Отлично, @drwl.

Пожалуй, стоит закрыть эту тему.
Он охватывает множество функций и проблем, которые были реализованы с момента появления протектора.
Если есть определенные проблемы с определенными функциями, откройте новую проблему.

Спасибо @drwl @smblott-github за исправление.

Когда будет новый выпуск vimium для этого исправления?

@idf Если вы хотите отключить Vimium для документов Google, просто оставьте поле исключения ключей пустым.

screen shot 2015-08-18 at 4 04 00 pm

В противном случае вы спрашиваете о чем-то другом?

@drwl есть ли комбинация клавиш для переключения vimium, а не для полного отключения его по URL-адресу. Я пробовал ESC, он работает в электронной таблице Google, но не в Google Word.

Даже если он отключен, css и js для vimium спамят мою сетевую вкладку в инструментах разработчика.

Даже если он отключен, css и js для vimium спамят мою сетевую вкладку в инструментах разработчика.

@philc поднимал этот вопрос ранее... #1838.

а, ок спасибо!

@smblott-github Насколько я вижу, запрошенная исходная функция все еще недоступна. Невозможно включить vimium на странице, где он в данный момент отключен, без перезагрузки страницы. Было бы полезно иметь возможность переключать его, щелкнув значок расширения vimium.

Еще +1 за это. Я только что снова удалил vimium из-за этой проблемы ... режим вставки работает нормально, но он показывает тост «режим вставки». Кроме того, очень раздражает, когда я делаю свои собственные игры WebGL. Простое глобальное временное отключение сделало бы меня счастливым (фактически более быстрое удаление/переустановка, я думаю, с сохранением настроек)! Я собираюсь попробовать трюк с исключением, я думаю ... но это довольно тяжело для общего случая использования.

Была ли эта страница полезной?
0 / 5 - 0 рейтинги