jak mogę otworzyć wyszukiwarkę terminali w Google, aby otworzyć ją w domyślnej przeglądarce?

12

Scenariusz: praca w terminalu, komunikat o błędzie. Chcę google, więc wybieram tekst i klikam prawym przyciskiem myszy i „Szukaj w Google”. Otwiera Safari za każdym razem. Google Chrome to moja domyślna przeglądarka. Ponownie uruchomiłem maszynę dwa razy, odkąd to potwierdziłem.

jcollum
źródło

Odpowiedzi:

18

Wyszukiwanie w Google jest usługą świadczoną przez Safari i nie ma nic wspólnego z Terminalem.

Google Chrome powinien udostępnić własną usługę dla tej funkcji. Tak nie jest.


Możesz też napisać własny, np. Za pomocą Automatora i AppleScript:

Otwórz Automator i wybierz, aby utworzyć nową usługę . U góry wybierz tekst i dowolną aplikację . Następnie dodaj akcję Uruchom skrypt powłoki z biblioteki do przepływu pracy, przeciągając i upuszczając lub klikając dwukrotnie. Zmień dane wejściowe na argumenty i wklej następujący skrypt w głównym obszarze tekstowym:

#!/bin/bash
function urlencode {
    echo -n "$@" | perl -MURI::Escape -ne 'print uri_escape($_)'
}
open "http://google.com/search?q=$( urlencode "$@" )"

Zrzut ekranu Automatora

Spowoduje to otwarcie adresu URL, http://google.com/search?q=a następnie zaznaczenie tekstu ze znakiem zmiany znaczenia w domyślnej przeglądarce.

Zapisz jako wyszukiwanie w Google w domyślnej przeglądarce i spróbuj ponownie.

Daniel Beck
źródło
1
1. Jak mogę wyświetlić tę usługę w głównym menu kontekstowym, podobnie jak Safari?
aaronbauman
2. Jak mogę pozbyć się usługi Safari w menu kontekstowym?
aaronbauman
3
@ aaronbauman Wyłącz to w Preferencjach systemowych »Klawiatura» Skróty »Usługi. Spowoduje to jednak usunięcie go również z podmenu Usługi w menu aplikacji i wyłączenie skrótu klawiaturowego, jeśli jest ustawiony.
Daniel Beck
Safari to tylko przeglądarka - może być dostarczana z Safari, ale jest dostarczana przez Apple, a Apple nie ma interesu ciągnąc tak głupich shenaniganów. System operacyjny musi honorować wybór domyślnej przeglądarki przez użytkownika, podobnie jak inne narzędzia (w tym usługi), które zapewnia Apple. Złóż skargę do Apple na apple.com/feedback i powiedz im, że jest to absolutnie niedopuszczalne.
iconoclast
Dzięki Daniel! perl -MURI::Escapenie wyszło po wyjęciu z pudełka, więc użyłem tego zamiast:open "http://google.com/search?q=$( python -c 'from urllib import quote; print quote(raw_input(), safe="")' <<< "$*" )"
Piotr Findeisen