Некоторые намеки (каламбур не предназначен).
Добавление нового расширенного режима подсказок:
- Вы можете определить режим с помощью
hints.addMode
функции. - Вы можете установить шаблон для добавления подсказок с помощью
eht
опции, которая использует селектор XPath. (В Pentadactyl вы также можете использовать селекторы CSS, но я не уверен насчет Vimperator - их нет на страницах справки)
Вот простой пример, который я использую на Jisho.org, чтобы перейти на информационную страницу для использования кандзи ;k.
js set eht+=[k]:span[class=text] hints.addMode('k','open kanji details',function(e) { liberator.open(decodeURIComponent("http://jisho.org/search/" + e.textContent + "%2523kanji")); });
Соответствует регулярному выражению:
Я не уверен, использует ли Vimperator XPath 1.0 или 2.0, или даже если он позволяет использовать все возможности выражений XPath. Я только пробовал очень простые выражения. XPath 1.0 не допускает регулярные выражения (поэтому вам придется обойтись без функциональности, которую он предоставляет). Тем не менее, XPath 2.0 имеет поддержку регулярных выражений . Таким образом, вы можете использовать их. (Я хочу посмотреть на это сам когда-нибудь.)
Запуск скрипта:
Вы можете сделать это с помощью :!
команды. Произвольные команды «ex» могут быть запущены из JS с помощью liberator.execute()
, поэтому для запуска сценария оболочки вы можете передать такую функцию в hints.addMode
:
function(e) { liberator.execute("!~/bin/script " + e.textContent) }
Обратите внимание на пентадактиль.
Все здесь в равной степени относится к Pentadactyl, за исключением API JS, вы должны заменить liberator
на dactyl
.
Я попытаюсь взглянуть на это позже.