Как использовать клавиатуру для навигации по результатам поиска Google (теперь, когда мгновенный поиск мертв)

На сегодняшний день Google Instant Search мертв . Вот как это выглядело:

Я никогда не заботился о мгновенном показе результатов, пока я набирал. Тем не менее, я использовал сотни раз в день, с помощью клавишных клавиш.

Для тех, кто никогда не использовал его – при включенном мгновенном поиске вы могли:

  • Нажмите enter после поиска и используйте клавиши вверх / вниз, чтобы переместить «указатель» вниз по результатам

  • Затем нажмите «Ввод», чтобы открыть результат поиска, на который указывает

  • В любой момент ввода букв / цифр на клавиатуре будет переориентироваться на строку поиска

  • Нажатие ввода с выделенным результатом может быть объединено с модификатором ctrl, чтобы открыть результат на новой вкладке.

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

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

Я использую Chrome на Ubuntu 15.01.

Они больше не работают, поскольку Google удалил эту функцию, поэтому вы не можете просто ее отключить, как вы привыкли. То, как вы могли это сделать, было:

Google Поиск> Настройки> Настройки поиска> Google Instant Prediction> On

Но он больше не работает. Мне было так грустно видеть, что эта функция идет, что я написал взломы, чтобы перестроить ее. Пока он работает только с Google Chrome, но может быть адаптирован для работы со всеми остальными:

  1. Установите расширение Chrome ShortKeys .
  2. Нажмите на меню ShortKeys и выберите «Опции». Введите описание изображения здесь
  3. Нажмите «Добавить» и заполните следующие поля:

Ярлык клавиатуры: вкладка

Поведение: запуск JavaScript

Ярлык как: Выбор результата

  1. Вставьте следующий JavaScript в код JavaScript для запуска:

    document.selectedResultId=0 function scrollToElement(el) { var rect = el.getBoundingClientRect(); if (!(rect.top >= 0 && rect.bottom <= window.innerHeight)) { window.scrollTo(0, rect.top + window.pageYOffset - (window.innerHeight / 2)); } } function selectResult(newId){ els = document.querySelectorAll("h3.r") if(newId < 0 || newId >= els.length) return //Could modify for page nav...? rp = document.getElementById("result-pointer") if(rp != null){ rp.remove() } document.selectedResultId=newId el = els[newId] el.innerHTML = "<div id=\"result-pointer\" style=\"position:absolute;left:-15px;\">&gt;</div>" + el.innerHTML scrollToElement(el) lnk = el.querySelector('a') lnk.focus() } document.onkeyup=function(event){ if(event.keyCode==38) selectResult(document.selectedResultId-1) if(event.keyCode==40) selectResult(document.selectedResultId+1) } selectResult(0) 
  2. Настройте параметры активации :

Активен в поле формы (Проверено)

Веб-сайты (только определенные сайты)

URLS (по одной в строке) : .google.

Это страница параметров должна выглядеть так:

Страница параметров ShortKeys

  1. Нажмите «Сохранить», а затем закройте браузер.

Инструкции:

  • Когда вы перезагружаетесь, при попадании на вкладку вы увидите небольшое синее «>».

  • Клавиши со стрелками вверх / вниз позволяют циклически выполнять результаты.

  • Нажатие «Enter» переместится к выделенному результату.

  • Нажмите «Ctrl + Enter», чтобы открыть результат на новой вкладке.

Счастливый поиск!

Для firefox я решаю эту проблему с помощью дополнения Google Key Result Keyboard Shortcuts. https://addons.mozilla.org/en-US/firefox/addon/google-search-result-shortcuts/?src=api

Я создал расширение Chrome, которое добавит обратно основные функции клавиатуры (которые я использовал, по крайней мере). Если окно поиска не сфокусировано, нажатие любой клавиши автоматически сфокусирует его. Кроме того, клавиши со стрелками и вкладка tab / shift + позволяют перемещаться между результатами. Надеемся, это поможет нам оставаться продуктивными до тех пор, пока Google (надеюсь) не добавит функциональность обратно.

https://chrome.google.com/webstore/detail/google-search-result-keyb/iobmefdldoplhmonnnkchglfdeepnfhd?hl=en&gl=US

Вот код для расширения, если вы хотите его отредактировать:

 (function() { 'use strict'; var isResultsPage = document.querySelector('html[itemtype="http://schema.org/SearchResultsPage"]'); if (!isResultsPage) { return; } var searchbox = document.querySelector('form[role="search"] input[type="text"]:nth-of-type(1)'), results = document.querySelectorAll('h3 a'), KEY_UP = 38, KEY_DOWN = 40, KEY_TAB = 9; function focusResult(offset) { var focused = document.querySelector('h3 a:focus'); // No result is currently focused. Focus the first one if (focused == null) { results[0].focus(); } else { for (var i = 0; i < results.length; i++) { var result = results[i]; if (result === focused) { var focusIndex = i + offset; if (focusIndex < 0) focusIndex = 0; if (focusIndex >= results.length) focusIndex = results.length - 1; results[focusIndex].focus(); } } } } window.addEventListener('keydown', function(e) { e = e || window.event; var isSearchActive = searchbox === document.activeElement, keycode = e.keyCode, // From https://stackoverflow.com/questions/12467240/determine-if-javascript-e-keycode-is-a-printable-non-control-character isPrintable = (keycode > 47 && keycode < 58) || // number keys (keycode > 64 && keycode < 91) || // letter keys (keycode > 95 && keycode < 112) || // numpad keys (keycode > 185 && keycode < 193) || // ;=,-./` (in order) (keycode > 218 && keycode < 223); // [\]' (in order) if ((!isSearchActive && e.keyCode == KEY_DOWN) || (e.keyCode == KEY_TAB && !e.shiftKey)) { e.preventDefault(); e.stopPropagation(); focusResult(1); // Focus next } else if ((!isSearchActive && e.keyCode == KEY_UP) || (e.keyCode == KEY_TAB && e.shiftKey)) { e.preventDefault(); e.stopPropagation(); focusResult(-1); // Focus previous } else if (!isSearchActive && isPrintable) { // Otherwise, force caret to end of text and focus the search box searchbox.value = searchbox.value + " "; searchbox.focus(); } }); })(); 

Вы можете попробовать расширения, которые вносят Vim-подобные привязки. С ними вам больше не понадобится использовать мышь. Например, cVim – это тот, который в настоящее время является самым мощным для Chrome, а Vimperator – для Firefox.

С помощью таких расширений вы можете получить доступ к любой ссылке на текущей странице, нажав f (по умолчанию), а затем комбинацию из одной / двух клавиш.

Я создал очень простое расширение с открытым исходным кодом, чтобы исправить это и настроить клавиатурные сокращения.

Вы можете установить его из веб- магазина Chrome: Google Search Navigator .

Надеюсь, вы сочтете это полезным, но в любом случае – обратная связь приветствуется!

  • Отключить стрелки страницы поиска Google, кроме результатов при прокрутке вверх / вниз с помощью клавиатуры
  • Создайте изображение или распечатайте веб-страницу, большую, чем экран из веб-браузера.
  • Страница результатов поиска Google на моем Firefox выглядит по-разному
  • Где я могу найти обновленный сценарий Greasmonkey для фильтра Google?
  • Firefox: добавьте пользовательский поиск Google, включая предварительно определенные ключевые слова
  • Изменение домена поиска Google по умолчанию
  • Местоположение для поиска Google и Firefox неправильно
  • Давайте будем гением компьютера.