Tastaturkürzel zum Suchen nach ausgewähltem / hervorgehobenem Text


16

In Chrome können Sie Text auf einer Webseite markieren und über das Kontextmenü mit der rechten Maustaste eine Google-Suche für den ausgewählten Text in einem neuen Tab öffnen.

Es wäre sehr praktisch, wenn ich auf diese Funktion über eine Tastenkombination anstelle des Rechtsklick-Menüs zugreifen könnte. Ich habe versucht, nach vorhandenen Erweiterungen zu suchen und die Liste der vorhandenen Tastenkombinationen hier zu durchsuchen: https://support.google.com/chrome/answer/157179?hl=de

Kennt jemand einen Weg, um dies zu erreichen?


Fragen zur Webbrowser-Funktionalität gehören zu Super User .
Ale

Antworten:


9

Dies funktioniert in Chrome:

  • Markieren Sie zuerst einen Text
  • Hit CTRL+ C- Kopiert den Text
  • Drücken Sie CTRL+ T- Dies erstellt eine neue Registerkarte und macht es zum Fokus
  • Hit CTRL+ V- Fügt den Text in die Omnibox ein (Chrome setzt den Cursor standardmäßig dort)
  • Hit Enter- Hiermit wird der Text in der Omnibox durchsucht

Möchten Sie es automatisieren? Verwenden AutoHotKey machen ihn zu einem automatischen Makro CTRL+ Alt+ S Verwenden Sie dieses Skript ::

^!s::
  Send ^c
  Send ^t
  Send ^v
  Send {Enter}
Return

Zu Ihrer Information, ich habe dieses Skript getestet und es funktioniert in Chrome.


5

Auch in der AHK habe ich zwei Antworten.

Dies gilt global überall (nicht nur in Chrom). Einfach Text auswählen und Windows+ drückenG

#g::  ;;Google selected text
   Send, ^c
   Run, http://www.google.com/search?q=%Clipboard%
Return

Eins ist das von meiner Antwort hier . Wählen Sie Text und drücken Sie Windows+ Shift+ G. Dies ist insofern anders, als es Ihnen nur einen Link in der Zwischenablage gibt.

; Search google for the highlighted word
; then get the first link address and put it on the Clipboard

^!r:: Reload

#+g::
    bak = %clipboard%
    Send, ^c
    ;clipboard = %bak%`r`n%clipboard%
    Query = %clipboard%
    wb := ComObjCreate("InternetExplorer.Application")
    ;wb := IEGet()
    wb.Visible := false
    wb.Navigate("www.google.com/search?q=" Query)
    While wb.readyState != 4 || wb.document.readyState != "complete" || wb.busy ; wait for the page to load
      sleep 100
    ; loop % (Nodes := wb.document.getElementById("rso").childNodes).length
    ;     Links_urls .= (A_index = 1) ? Nodes[A_index-1].getElementsByTagName("a")[0].href : "`n" . Nodes[A_index-1].getElementsByTagName("a")[0].href
    ; Msgbox %Links_urls%

    Nodes := wb.document.getElementById("rso").childNodes
    First_link := Nodes[0].getElementsByTagName("a")[0].href
    Clipboard = %First_link%
    TrayTip, First Link on Google Search, %First_link% `r`n Ctrl+V to paste the link
return

Die erste Option gibt mir die letzte Strg + C oder Win + G. Ich bin mir nicht sicher warum?
Josh

Sie müssen zuerst den Text auswählen. Das ist der einzige Grund, warum ich mir vorstellen kann, den letzten Clip abzurufen, oder verwenden Sie einen Zwischenablage-Manager? oder fügen Sie dies nach dem Send, ^cBefehl zu Ihrem Skript hinzu, um zu sehen, was sich in Ihrer Zwischenablage befindet. TrayTip, Clipboard Contents, %clipboard% rn
Parivar Saraff

0


Diese Erweiterung kann Ihnen dabei helfen:
https://chrome.google.com/webstore/detail/searchbar/fjefgkhmchopegjeicnblodnidbammed
Markieren Sie nach der Installation die folgenden Optionen:
* Suchergebnisse standardmäßig in einem neuen Tab öffnen (wirkt sich nicht auf Hotkeys aus; drücken Sie Strg oder Mittel- Klicken, um neue Registerkarte umzuschalten)
* Neue Registerkarten standardmäßig im Vordergrund öffnen (Umschalttaste drücken, um zwischen Vordergrund und Hintergrund umzuschalten)
Jetzt können Sie die Suche nach ausgewähltem Text mit Strg + Umschalttaste + Alt + G ausführen


0

Basierend auf dem, was Parivar Saraff hier vorgeschlagen hat , ist hier ein 3-in-1-AutoHotKey-Skript:

;Hotkey Modifier Symbols (for how to customize the hotkeys) https://www.autohotkey.com/docs/Hotkeys.htm#Symbols

#NoEnv  ; Recommended for performance and compatibility with future AutoHotkey releases.
; #Warn  ; Enable warnings to assist with detecting common errors.
SendMode Input  ; Recommended for new scripts due to its superior speed and reliability.
SetWorkingDir %A_ScriptDir%  ; Ensures a consistent starting directory.

;                               Google-search selected text
;  Usage:ctrl+shift+G
^+g::  
{
   Send, ^c
   Sleep 150
   Run, http://www.google.com/search?q=%Clipboard% ;(изм.себе на google.com.ua)
Return

}

;                               Google-dictionary selected text
;  Usage:ctrl+shift+D
^+d::
{
   Send, ^c
   Sleep 150
   Run, https://www.google.com/search?q=define:%Clipboard% ;(изм.себе на google.com.ua)
Return

}

;                           Wikipedia-search selected text by using google "site:" operator
;  Usage:ctrl+shift+W
^+w:: 
{
   Send, ^c
   Sleep 150
   Run, https://www.google.com/search?q=site:wikipedia.org %Clipboard% ;(изм.себе на google.com.ua)
Return

}

Hervorgehobenes Textkonvertierungsskript (eine Kombination solcher Skriptvarianten im Web):

;Hotkey Modifier Symbols (for how to customize the hotkeys) https://www.autohotkey.com/docs/Hotkeys.htm#Symbols


    ;Hotkey Modifier Symbols (for how to customize the hotkeys) https://www.autohotkey.com/docs/Hotkeys.htm#Symbols


#NoEnv  ; Recommended for performance and compatibility with future AutoHotkey releases.
SendMode Input  ; Recommended for new scripts due to its superior speed and reliability.
SetWorkingDir %A_ScriptDir%  ; Ensures a consistent starting directory.



cycleNumber := 1

#IfWinNotActive ahk_class XLMAIN

                                ;Highlighting any text, and then pressing that HotKey will cycle through the 4 most common text casings, converting the highlighted text right in-line.

                                    ;For example:

    ;If you highlight "This is a test sentence", and then hit that HotKey once, it'll make it all UPPERCASE ("THIS IS A TEST SENTENCE").
    ;Hit the HotKey again, it'll convert it to lowercase ("this is a test sentence").
    ;Hit it again and it'll convert it to Sentence case ("This is a test sentence"). (First letter is capitalized, rest is lower-case).
    ;Finally, hit it one more time and it'll convert it to Mixed case, or what I often call, "camel-case" ("This Is A Test Sentence"). (Each word is capitalized).

;  Usage:Ctrl+Shift+C
^+c:: 

If (cycleNumber==1)
{
ConvertUpper()
cycleNumber:= 2
}
Else If (cycleNumber==2)
{
ConvertLower()
cycleNumber:= 3
}
Else If (cycleNumber==3)
{
ConvertSentence()
cycleNumber:= 4
}
Else
{
ConvertMixed()
cycleNumber:= 1
}
Return

ConvertUpper()
{
    clipSave := Clipboard
    Clipboard = ; Empty the clipboard so that ClipWait has something to detect
    SendInput, ^c ; Copies selected text
    ClipWait
    StringReplace, Clipboard, Clipboard, `r`n, `n, All ; Fix for SendInput sending Windows linebreaks 
    StringUpper, Clipboard, Clipboard
    Len:= Strlen(Clipboard) ;Set number of characters ;Set number of characters
    SendInput, ^v ; Pastes new text
    Send +{left %Len%} ;Re-select text
    VarSetCapacity(clipSave, 0) ; Free memory
    Clipboard := clipSave ;Restore previous clipboard
}

ConvertLower()
{
    clipSave := Clipboard
    Clipboard = ; Empty the clipboard so that ClipWait has something to detect
    SendInput, ^c ; Copies selected text
    ClipWait
    StringReplace, Clipboard, Clipboard, `r`n, `n, All ; Fix for SendInput sending Windows linebreaks
    StringLower, Clipboard, Clipboard
    Len:= Strlen(Clipboard) ;Set number of characters
    SendInput, ^v ; Pastes new text
    Send +{left %Len%} ;Re-select text
    VarSetCapacity(clipSave, 0) ; Free memory
    Clipboard := clipSave ;Restore previous clipboard
}

ConvertSentence()
{
    clipSave := Clipboard
    Clipboard = ; Empty the clipboard so that ClipWait has something to detect
    SendInput, ^c ; Copies selected text
    ClipWait
    StringReplace, Clipboard, Clipboard, `r`n, `n, All ; Fix for SendInput sending Windows linebreaks
    StringLower, Clipboard, Clipboard
    Clipboard := RegExReplace(Clipboard, "(((^|([.!?]+\s+))[a-z])| i | i')", "$u1")
    Len:= Strlen(Clipboard) ;Set number of characters
    SendInput, ^v ; Pastes new text
    Send +{left %Len%} ;Re-select text
    VarSetCapacity(clipSave, 0) ; Free memory
    Clipboard := clipSave ;Restore previous clipboard
}

ConvertMixed()
{
    clipSave := Clipboard
    Clipboard = ; Empty the clipboard so that ClipWait has something to detect
    SendInput, ^c ; Copies selected text
    ClipWait
    StringReplace, Clipboard, Clipboard, `r`n, `n, All ; Fix for SendInput sending Windows linebreaks
    StringUpper Clipboard, Clipboard, T
    Len:= Strlen(Clipboard) ;Set number of characters
    SendInput, ^v ; Pastes new text
    Send +{left %Len%} ;Re-select text
    VarSetCapacity(clipSave, 0) ; Free memory
    Clipboard := clipSave ;Restore previous clipboard
}

#IfWinNotActive

                        ; Convert selected text to inverted case
                                    ;    Ex: THIS_is-a_tESt -> this_IS-A_TesT
; Usage:ctrl+Shift+I 
^+i::
    Convert_Inv()
RETURN
Convert_Inv()
{
    ; save original contents of clipboard
    Clip_Save:= ClipboardAll

    ; empty clipboard
    Clipboard:= ""

    ; copy highlighted text to clipboard
    Send ^c{delete}

    ; clear variable that will hold output string
    Inv_Char_Out:= ""

    ; loop for each character in the clipboard
    Loop % Strlen(Clipboard)
    {
        ; isolate the character
        Inv_Char:= Substr(Clipboard, A_Index, 1)

        ; if upper case
        if Inv_Char is upper
        {
            ; convert to lower case
           Inv_Char_Out:= Inv_Char_Out Chr(Asc(Inv_Char) + 32)
        }
        ; if lower case
        else if Inv_Char is lower
        {
            ; convert to upper case
           Inv_Char_Out:= Inv_Char_Out Chr(Asc(Inv_Char) - 32)
        }
        else
        {
            ; copy character to output var unchanged
           Inv_Char_Out:= Inv_Char_Out Inv_Char
        }
    }
    ; send desired text
    Send %Inv_Char_Out%
    Len:= Strlen(Inv_Char_Out)

    ; highlight desired text
    Send +{left %Len%}

    ; restore original clipboard
    Clipboard:= Clip_Save
}
                            ; Text–only paste from ClipBoard (while the clipboard formatted text itself is being untouched)
; Usage:ctrl+Shift+I 
^+v::                          
   Clip0 = %ClipBoardAll%
   Clipboard = %Clipboard%  ; Convert clipboard text to plain text.
   StringReplace, clipboard, clipboard,%A_SPACE%",", All ; Remove space introduced by WORD
   StringReplace, Clipboard, Clipboard, `r`n, `n, All ; Fix for Send sending Windows linebreaks
   Send ^v                       ; For best compatibility: SendPlay
   Sleep 50                      ; Don't change clipboard while it is pasted! (Sleep > 0)
   ClipBoard = %Clip0%           ; Restore original ClipBoard
   VarSetCapacity(Clip0, 0)      ; Free memory
Return

                                    ; Wrap selected text in double quotes->" "
; Usage:Ctrl+Shift+Q
^+q::
    clipSave := Clipboard
    Clipboard = ; Empty the clipboard so that ClipWait has something to detect
    SendInput, ^c ; Copies selected text
    ClipWait
    StringReplace, Clipboard, Clipboard, `r`n, `n, All ; Fix for SendInput sending Windows linebreaks
    Clipboard := Chr(34) . Clipboard . Chr(34)
    Len:= Strlen(Clipboard) ;Set number of characters
    SendInput, ^v ; Pastes new text
    Send +{left %Len%} ;Re-select text
    VarSetCapacity(clipSave, 0) ; Free memory
    Clipboard := clipSave ;Restore previous clipboard
Return

; RELOAD 
!+^x::
   SplashTextOn,,,Updated script,
   Sleep,200
   SplashTextOff
   Reload
   Send, ^s
Return

0

Wenn Sie Snach dem Aktivieren des Kontextmenüs auf einen hervorgehobenen Text drücken, wird anscheinend genau das getan (Chrome 78 hier). Das Kontextmenü kann mit Shift+F10oder mit der speziellen Schaltfläche "Kontextmenü" für Ihr Keyword geöffnet werden .

Diese beiden Verknüpfungen können mit AutoHotKey zu einer zusammengefasst werden :

^g::
  Send +{F10}
  Send s
Return

Auf diese Weise wird beispielsweise Ctrl+Gin einer neuen Registerkarte nach dem hervorgehobenen Text gesucht.

Der Hauptvorteil dieser Methode gegenüber @Keltari answer besteht darin, dass die Zwischenablage nicht verwendet wird und vorherige Werte dort nicht überschrieben werden.


-1

Verwenden Sie diese Erweiterung

https://chrome.google.com/webstore/detail/hotkeys-for-search/gfmeadbjkfhkeklgaomifcaihbhpeido

wie man es benutzt:

  1. Markieren Sie Text auf einer Webseite mit der Maus.
  2. Drücken Sie eine Tastenkombination, um auf der gewünschten Website nach dem ausgewählten Text zu suchen.

Standardverknüpfungen:

Alt + Q = Google

Alt + W = Wikipedia

Alt + A = Google Bilder

Alt + S = YouTube

Und wenn Sie viele Aufgaben automatisieren möchten, verwenden Sie diese benutzerdefinierte Hotkey-Erweiterung für Chrome

https://chrome.google.com/webstore/detail/keyboard-fu/cafiohcgicchdfciefpbjgigbmajndb


1
Nur Software zu empfehlen, ist keine Antwort. Bitte fügen Sie die Schritte hinzu, die zum Einrichten der Software erforderlich sind, um die Frage zu beantworten.
music2myear vor

Bitte lesen Sie Wie empfehle ich Software für einige Tipps, wie Sie Software empfehlen sollten. Sie sollten mindestens einen Link, einige zusätzliche Informationen zur Software selbst und Informationen zur Behebung des Problems in der Frage bereitstellen.
DavidPostill

OK, ich habe diese Antwort bearbeitet, obwohl es sehr klar ist, dass jeder auf den Link klicken kann, um sofort zu sehen, wie er verwendet wird. Info happy now
Rkv Kinoden
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.