26

Re: AHK: Поиск в Интернете

Действительно — вписал класс в конце и всё заработало, буду юзать)). Но вот поведение с непередачей выделенного/скопированного текста в окно GUI, у меня сохраняется. То есть, если копировать или выделять текст в любых окнах и вызвать окно скрипта — текст в него не передаётся, а буфер очищается.
По команде "Run google.com" открылся IE.

27

Re: AHK: Поиск в Интернете

DD пишет:

То есть, если копировать или выделять текст в любых окнах и вызвать окно скрипта — текст в него не передаётся, а буфер очищается.

Здесь прошу по подробнее - ничего не понял.

28

Re: AHK: Поиск в Интернете

Имел в виду, что если перед поиском выделить или скопировать текст в окне браузера (или вообще в любых окнах), а затем вызвать интерфейс скрипта, то его окно будет содержать мой предыдущий поисковый запрос (набранный в него), а то, что было скопировано или выделено перед вызовом окна, в строку интерфейса не попадает и плюс очистится из буфера. Если не открывать окно скрипта, то скопированное из браузера можно вставлять в другие окна. Другие скрипты не работали.

29

Re: AHK: Поиск в Интернете

Да, это несуразность. Не заметил, поскольку ничего не вставляю в интрефейс - только через горячие клавиши, а там уже редактирую при необходимости. Исправлено.

30 (изменено: DD, 2017-02-11 09:09:56)

Re: AHK: Поиск в Интернете

Чтобы предыдущий запрос из строки интерфейса не замещался на выделенный или скопированный (по вызову окна интерфейса) — это так и задумано? ИМХО, было бы логично, если бы имя файла под курсором, как и выделенный или буферный текст при вызове интерфейса, отправлялись бы в него — так же, как они сейчас передаются в браузеры по горячим клавишам, в обход интерфейса.

Krot66 пишет:

При нажатии горячей клавиши скопированный текст отправляется непосредственно браузеру (...). Если ничего не скопировано, а также при секундном зажатии CapsLock для редактирования текста, появляется окно (его же можно также вызвать по CapsLock+`):

У меня секундное зажатие CapsLock не выводит окна.

31 (изменено: Krot66, 2017-02-11 15:00:31)

Re: AHK: Поиск в Интернете

Если (например, по CapsLock+S) ничего не скопировано, появляется интерфейс. Он же появляется со скопированным текстом, если на секунду зажать CapsLock. Последние несколько лет у меня это работает безукоризненно.
Добавлено:
"Зажать" подразумевает не отпускать после нажатия.

32 (изменено: DD, 2017-02-11 16:16:06)

Re: AHK: Поиск в Интернете

Скопировав текст, пробовал удерживать отдельный CapsLock с разной длительностью (как и в сочетании с +`), но окно не показывалось. Впрочем, проще было бы, когда мгновенным движением пианиста по хоткею CapsLock+`, выделенный (стало быть: нет нужды копировать) или буферный текст передавался бы в открывшееся окно, без необходимости удерживаний)). Для добавки кавычек или ещё чего.

33 (изменено: DD, 2017-02-11 16:34:10)

Re: AHK: Поиск в Интернете

А ещё резон в том, что поисковые строки в выпадающем списке будут множиться и не на все варианты станет возможно или необходимо вешать хоткеи. Поэтому перенос выделенного или скопированного текста в окно скрипта, многое упрощало бы.

34 (изменено: DD, 2017-02-11 16:40:36)

Re: AHK: Поиск в Интернете

Кстати, убрал хоткей CapsLock & vk53:: для Search(,,"Поиск в Интернете (CapsLock+S)") — и в интерфейсе этот поиск перестал работать. Можно ли как-то убирать хоткеи, меняя их, возможно, на метки?

35 (изменено: Krot66, 2017-02-15 18:37:57)

Re: AHK: Поиск в Интернете

Не могу себе даже представить, с чем это связано. CapsLock был подставлен только из-за того, что использую и много клавиш и во многих программах, да и пользоваться одной клавишей модификатором удобнее, чем двумя.
Скрипт анализирует собственное содержание, и генерирует пункты меню только если в первой строке есть горячая клавиша - так и должно быть.
Вариант первый. В 43-й строке замените CapsLock::CapsLock на CapsLock::Send {CapsLock}.
Вариант второй. Убрать эту строку вообще и заменить "CapsLock & " на "^!" или  "^+" (что больше нравится) во всем скрипте (кроме, разве что, описаний пунктов меню в функции Search).
Кроме того, 183 строку надо заменить на KeyWait Ctrl, T0.8 - теперь окно должно будет появляться с зажатым Ctrl, естественно, при дополнительных клавишах Ctrl+Alt или Ctrl+Shift, что вы заменили.

Добавлено:
Эта клавиша не затерлась в еще каком-нибудь скрипте?

36 (изменено: DD, 2017-02-11 19:24:45)

Re: AHK: Поиск в Интернете

Так я не был против CapsLock — и сам её в сочетании давно использую, лишь хотел сказать, что выводить (раз уж выводить) поисковое окно целесообразнее с выделенным/буферным текстом, потому что в него потом все равно текст придется набирать или вставлять. Но это я так, в скобках заметил, для удобства опубликованного кода — для себя и сам переделаю. Но вот как быть с реализацией поисковых пунктов без хоткеев? Потому что в таком виде — с необходимостью на каждый пункт вешать клавишу (а групповыми поисками вряд ли буду пользоваться) — это не очень подходит, ибо пункты будут расти, среди них будут и не часто используемые, а никакой клавиатуры и памяти эти сочетания запомнить, у меня не хватит)).

37 (изменено: Krot66, 2017-02-11 21:36:05)

Re: AHK: Поиск в Интернете

В принципе здесь сделано так: если окно выводится щелчком по иконке или CapsLock+`, отображается старый поиск с выделением, чтобы его можно было убрать Del или Bs. Если окно появляется с уже скопированным текстом, чтобы его невзначай не удалить и было просто редактировать, это выделение сбрасывается. Так и не понял, появляется, ли оно с зажатием CapsLock и скопированным текстом.
Насчет замены клавиш метками надо посмотреть - скорее всего, это сделаем.

38 (изменено: DD, 2017-02-12 09:27:44)

Re: AHK: Поиск в Интернете

У меня он так действует: выделяю + копирую текст, вызываю окно скрипта из трея или по клавишам — в нем выделенный предыдущий поиск, который не всегда-то нужен бывает (и который при необходимости можно достать из выпадающего списка), потому что к окну естественней обращаться для уточнения нового поиска. Иначе говоря, если что-то было скопировано или выделено, то скорее всего именно это планируется редактировать или искать. С отдельной CapsLock по разному экспериментировал: отключал свои скрипты, копировал текст с зажатием CapsLock и т. п., но текст в окно не передавался.
Спасибо за изменения по меткам.

39

Re: AHK: Поиск в Интернете

Попробуйте этот вариант. В основном интересует появление интерфейса при зажатом CapsLock.
Кроме того, есть настройки для пустого поля поиска при вызове интерфейса, времени зажатия клавиши, и дополнительной клавиши, если отказываться от CapsLock.

#NoEnv
SendMode Input
SetWorkingDir %A_ScriptDir%
#SingleInstance, force
Menu Tray, Icon, shell32.dll, 23
Menu Tray, Add
Menu Tray, Add, Help, Help
Menu Tray, Add, Open, Open
Menu Tray, Default, Open
SetTitleMatchMode 2
SetTitleMatchMode Slow

/*
        Скрипт для поиска в интернете
http://forum.script-coding.com/viewtopic.php?id=10357

CapsLock + F1 или пункт меню в трэе - cтраница скрипта со справкой 
CapsLock + ` или двойной щелчок по иконке в трэе - открытие интерфейса
CapsLock + F - поиск выделенного текста на странице браузера
CapsLock + U - открытие текстовых url
Escape - закрытие окна
*/
    
;-------- Основные поисковики ---------
bing:="http://www.bing.com/search?q=%s&go=Submit&qs=bs&form=QBLH"
duckduckgo:="https://duckduckgo.com/?q=%s"
google:="https://www.google.ru/search?client=opera&q=%s&sourceid=opera&ie=utf-8&oe=utf-8&channel=suggest&gws_rd=ssl"
nigma:="http://nigma.ru/?s=%s&t=web"
yandex:="http://yandex.ru/yandsearch?lr=157&oprnd=8221201798&text=%s"

;-------- Настройки -----------
def_search:=google ; поисковая система (см. выше) или строка url, используемая по умолчанию
sh:=30 ; размер истории поисковых запросов
fs:=12 ; размер шрифта диалогового окна
width:=700 ; ширина поля ввода
del_ext:=1 ; отбрасывть расширение при поиске по файлу в файловом менеджере или проводнике
def_br:="" ; путь к основному браузеру (при необходимости)
def_key:="CapsLock" ; кнопка, зажатие которой при поиске выделенного текста ведет к появлению окна (менять при переходе с CapsLock на другие дополнительные клавиши)
last_search:=0 ; показ последнего поиска при вызове интерфейса по горячей клавише или щелчку по иконке в трэе
key_delay:=0.8 ; время зажатия дополнительной клавиши для появления интерфейса со скопированным текстом, секунд
curr_br:=1 ; использовать для поиска активное окно недефолтного браузера
browsers:="Internet Explorer,Maxthon,ahk_class MozillaWindowClass,ahk_class Chrome_WidgetWin_1" ;  определения окон недефолтных браузеров, через запятую (все, что может быть вписано в команду IfWinActive - фрагменты заголовков окон, ahk_class ..., ahk_exe ... или их комбинации). Желательно, чтобы используемого по умолчанию здесь не было, т.е. поиск запускался из командной строки
del_end:="Больше информации на http|Читайте далее: http|Читать далее: http|Подробности: http" ; начала обрезаемых хвостов, добавляемых скриптами на веб-страницах при копировании текста, разделенные "|"
;---------------------------------
goto start
CapsLock::CapsLock
;~ Capslock::SetCapsLockState Off ; для полного выключения CapsLock
Help:
CapsLock & F1::Run http://forum.script-coding.com/viewtopic.php?id=10357
Open:
CapsLock & vkC0::
ctrl_delay:=open:=1

; далее описания в 3-м параметре 1-й функции

CapsLock & vk53::Search(,,"Поиск в Интернете (CapsLock+S)")

search:
    Search(nigma,,"Поиск")
    return

CapsLock & vk44::Search(,"site:$site","Поиск по сайту (CapsLock+D)")

CapsLock & vk5A::
    Search(duckduckgo,,"Nigma и DuckDuckGo - альтернативный поиск (CapsLock+Z)")
    Search(nigma)
    return

CapsLock & vk43::
    Search(google,"noclip related:$url","Google: кэш, ссылающиеся и связанные страницы (CapsLock+C)")
    Search(google,"noclip link:$url")
    Search(google,"noclip cache:$url")
    return
    
CapsLock & vk49::
    Search("https://www.mywot.com/ru/scorecard/%s","noclip $site","WHOIS, WOT - информация о сайте (CapsLock+I)")
    Search("https://whois.domaintools.com/%s","noclip $site")
    return

CapsLock & vk57::
    Search("https://en.wikipedia.org/w/index.php?search=%s&title=Special%3ASearch&go=Go",,"Wikipedia Rus+Eng (CapsLock+W)")
    Search("https://ru.wikipedia.org/w/index.php?search=%s&title=%D0%A1%D0%BB%D1%83%D0%B6%D0%B5%D0%B1%D0%BD%D0%B0%D1%8F%3A%D0%9F%D0%BE%D0%B8%D1%81%D0%BA&go=%D0%9F%D0%B5%D1%80%D0%B5%D0%B9%D1%82%D0%B8")
    return

CapsLock & vk41::
Search(,"site:forum.script-coding.com intitle:AutoHotkey","Autohotkey - документация и Серый форум (CapsLock+A)")
    Search("http://cse.google.com/cse?cx=010629462602499112316:ywoq_rufgic&q=StringReplace#gsc.tab=0&gsc.q=%s&gsc.sort=&gsc.ref=more%3Adocumentation")
    Search("http://ahk-wiki.ru/search?q=%s")
    return

CapsLock & vk4E::Search("https://social.msdn.microsoft.com/Search/ru-RU?query=%s&emptyWatermark=true&ac=2",,"Поиск в MSDN (CapsLock+N)")

CapsLock & vk48::Search("http://htmlbook.ru/sites/search/?q=%s&x=0&y=0",,"Поиск в htmlbook.ru (CapsLock+H)")

CapsLock & vk4D::Search("http://maps.google.com/maps?q=%s",,"Google Maps (CapsLock+M)")

CapsLock & vk54::Search("https://translate.google.com/#en/ru/%s",,"Перевод с Google Translate (CapsLock+T)")

CapsLock & vk45::Search("www.multitran.ru/c/m.exe?CL=1&s=%s&l1=1",,"Перевод в Multitran-eng (CapsLock+E)")

CapsLock & vk59::
    Search("http://dic.academic.ru/searchall.php?SWord=%s&from=xx&to=ru&did=&stype=0",,"Поиск на Академике (CapsLock+Y)")

CapsLock & vk42::Search("http://flibusta.is/booksearch?ask=%s",,"Флибуста - поиск книг (CapsLock+B)")

CapsLock & vk4C::
    Search("#http://lib.ru/GrepSearch?Search=%s",,"Большой поиск книг (CapsLock+L)")
    Search(,"site:litmir.me")
    Search(,"site:ihtik.lib.ru")
    Search("http://ru.wikisource.org/w/index.php?title=%D0%A1%D0%BB%D1%83%D0%B6%D0%B5%D0%B1%D0%BD%D0%B0%D1%8F%3A%D0%9F%D0%BE%D0%B8%D1%81%D0%BA&profile=default&search=%s&fulltext=Search")
     Search("http://www.koob.pro/search/?q=%s&cx=005981379277374831887%3A0jyriruaxh4&cof=FORID%3A9")
    Search("#http://www.e-reading.club/?query=%s")
    return

CapsLock & vk50::
    Search(,"site:http://forum.ru-board.com","Softodrom, ru-board и Softpedia (CapsLock+P)")
    Search("http://www.softpedia.com/dyn-search.php?search_term=%s&x=0&y=0")
    Search("http://www.softodrom.ru/Поиск/?text=%s&where=soft")
    return
    
CapsLock & vk56::
    Search("http://rutracker.org/forum/tracker.php?nm=%s",,"Поиск видео (CapsLock+V)")
    Search("#http://search.tfile.co/?q=%s")
    Search(,"site:telepoisk.com")
    Search(,"site:tvkultura.ru/video")
    Search("http://yandex.ru/video/search?text=%s&safety=1&path=main")
    Search("http://www.youtube.com/results?search_query=%s&oq=&gs_l=")    
    return
    
CapsLock & vk52::
    Search(nigma,"torrent","Поиск торрентов (CapsLock+R)")
    ;~ Search(duckduckgo,"torrent")
    ;~ Search("http://bitsnoop.com/search/all/%s/c/d/1/")
    Search("https://torrentproject.se/?t=%s")
    Search("http://tracker.ru/search?q=%s")
    Search("#http://search.tfile.co/?q=%s")
    Search("https://rutracker.org/forum/tracker.php?nm=%s")
    return

;----------------------------
CapsLock & vk46::
KeyWait CapsLock, T2
Clipboard:=""
Send ^{vk43}
ClipWait 1
Clipboard:=RegExReplace(Clipboard,"(" del_end ").+$","")
Send ^{vk46}
Sleep 500
Send {Bs 15}^{vk56}{Enter}
SetCapsLockState Off
return
;----------------------------
start:
n:=0, stack:=""
Loop Read, % A_ScriptName
{
    If A_LoopReadLine~="^\s*(/\*|\*/)"
	{
		comment:=!comment
		continue
	}
	If A_LoopReadLine~="^\s*;" || comment
		continue
    ;~ RegExMatch(A_LoopReadLine,"^CapsLock.{2,9}(?=::)",k)
    RegExMatch(A_LoopReadLine,"^\s*\K.+(?=\s*::)",k)
    If k
        key:=k
    RegExMatch(A_LoopReadLine,"(?<=Search\().+(?=\))",s_arg)
    If !s_arg
        continue
    Loop Parse, s_arg, CSV
    {
        If A_LoopField~="s_name"
            continue
        If (A_Index=3 && A_LoopField && key)
        {
            stack.="|" A_LoopField
            n+=1, key%n%:=key, key:=""
        }
    }
}

StringReplace stack, stack, ", , All
StringTrimLeft stack, stack, 1
FileEncoding utf-8
s_name_old:=RegExReplace(stack,"\|.+$")
return

Search(url="",par="",s_name="")
{
    global
    par_start:=par, url_start:=url
    If !url
        url:=def_search 
    If ctrl_delay
        goto gui_start
    If (s_name && !clip)
    {
        ctrl_start:=ctrl_delay:=0
        KeyWait % def_key, T%key_delay%
        If Errorlevel
            ctrl_start:=ctrl_delay:=1
        clipboard_old:=Clipboard, s_numb:=1, s_name_old:=s_name
        WinGetActiveTitle title
        Clipboard:=""
        If title contains Far 1,Far 2,Far 3
            Send {Esc}
        Send ^{vk43}
        ClipWait 1
        clip:=Trim(Clipboard)
        If (clip~="^https?://\S+$" && url_start!="%s")
            clip:=""
        If del_end
            clip:=RegExReplace(clip,"(" del_end ").+$","")`
        clip:=RegExReplace(clip,"\R|#"," ")
        RegExMatch(clip,"im)^[A-Z]:\\.+$",path)
        If (path && del_ext)
            SplitPath clip, , , , clip
        If (path && !del_ext)
            SplitPath clip, clip
    }
    If !clip
        clip:=clip_old
    SetCapsLockState Off
    gui_start:
    FileAppend, , Search_history.txt
    FileRead s_list, Search_history.txt
    s_stack:="", s_out:="", n1:=0, n2:=0
    Loop Parse, s_list, `n,`r
    {
        If !A_LoopField
            continue
        s_stack:=A_LoopField "|" s_stack, clip_end:=A_LoopField
        n1+=1
    }
    If (clip && clip!=clip_old && clip!=clip_end)
    {
        Loop Parse, s_list, `n,`r
        {
            n2+=1
            If (!A_LoopField || n1-n2>sh-2)
                continue
            s_out.= A_LoopField "`r`n"
        }
        s_stack:=clip "|" s_stack
        FileDelete Search_history.txt
        FileAppend % s_out . clip, Search_history.txt
    }
    If ctrl_delay || (!clip && !par_start~="noclip")
    {
        Gui 1:Destroy
        Gui 1:New, -DPIScale, Ctrl+Down - выбор поиска`, Alt+Down - история
        Gui 1:font, s%fs%
        Gui 1:Color, D7D7D7
        Gui 1:Margin , 4, 4
        Gui 1:Add, DropDownList, vSearch w%width% AltSubmit Section,% stack
        GuiControl ChooseString, ComboBox1, % s_name_old
        Gui 1:Add, ComboBox, vclip wp Choose1, % s_stack
        GuiControl Focus, Edit1
        Gui 1:Add, Button, y10 ys w120 r2 Default, OK        
        If (!last_search && open)
            GuiControl Text, Edit1
        Gui 1:Show, Center
        If (ctrl_start && !open)
            Send {End}
        ctrl_start:=ctrl_delay:=open:=""
        KeyWait % def_key, T3
        SetCapsLockState Off
        Exit
    }
    If (s_name && par_start~="\$(url|site)")
    {
        Clipboard:=$url:=$site:=""
        Send ^{vk4C}
        Sleep 200
        Send ^{Ins}
        ClipWait 0.5
        If !Clipboard~="^htt(p|s)://\S+$"
        {
            MsgBox, 262160, Ошибка, Адрес недоступен!, 1
            Exit
        }
        $url:=Trim(Clipboard), Clipboard:=""
        $site:=RegExReplace($url,"^.+://")
        $site:=RegExReplace($site,"/.+$")
    }
    StringReplace par, par, $url, % $url, All
    StringReplace par, par, $site, % $site, All
    Enc:="UTF-8"
    If (url~="^#")
        Enc:="CP1251", url:=RegExReplace(url,"^#")
    If par_start~="noclip"
        par:=Trim(StrReplace(par,"noclip"))
    else
        par:=Trim(clip " " par)
    If (url_start="%s")
        url:=clip, par:=""
    StringReplace url, url, http://
    StringReplace url, url, https://
    url:="http://" url
    StringReplace url, url, `%s, % UriEncode(par,Enc)        
    ;~ OutputDebug % "clip: " clip " par: " par " $url: " $url " $site: " $site "`nurl: " url
    WinGetActiveTitle t2
    If curr_br
    {
        Loop Parse, browsers, `,
        {            
            If WinActive(A_LoopField)           
            {
                Send ^{vk54}
                WinWaitNotActive % t2, , 1
                Sleep 50
                Clipboard:=url
                Send {Bs 15}^{vk56}{Enter}
                ;~ SoundBeep 400, 400
                Sleep 500
                goto end
            }
        }
    }
    If def_br
        Run % def_br " " url
    else
        Run % url
    If (s_numb=1)
        WinWaitNotActive % t2, , 5
    Sleep 200
    end:
    s_numb+=1, ctrl_delay:=""
    Clipboard:=clipboard_old, clip_old:=clip, clip:=""
    KeyWait % def_key, T2
    Sleep 100
    SetCapsLockState Off
    return
}

ButtonOK:
Gui 1:Submit
WinActivate title
If (!clip && !par_start~="noclip")
    goto GuiClose
goto % key%Search%

GuiClose:
GuiEscape:
Gui 1:Destroy
clip:=ctrl_delay:=""
return

#If WinActive("ahk_pid " DllCall("GetCurrentProcessId"))
^Down::
ControlFocus ComboBox1
Send !{Down}
return

!Down::
ControlFocus Edit1
Send !{Down}
return

^vk56::
ControlFocus Edit1
Send ^{vk56}
return

#IfWinActive

UriEncode(Uri,Enc)
{
    StrPutVar(Uri, Var, Enc)
    f := A_FormatInteger
    SetFormat, IntegerFast, H
    Loop
    {
        Code := NumGet(Var, A_Index - 1, "UChar")
        If (!Code)
            Break
        If (Code >= 0x30 && Code <= 0x39 ; 0-9
            || Code >= 0x41 && Code <= 0x5A ; A-Z
            || Code >= 0x61 && Code <= 0x7A) ; a-z
            Res .= Chr(Code)
        Else
            Res .= "%" . SubStr(Code + 0x100, -1)
    }
    SetFormat, IntegerFast, %f%
    Return, Res
}

StrPutVar(Str, ByRef Var, Enc = "")
{
    Len := StrPut(Str, Enc) * (Enc = "UTF-16" || Enc = "CP1200" ? 2 : 1)
    VarSetCapacity(Var, Len, 0)
    Return, StrPut(Str, &Var, Enc)
}

40

Re: AHK: Поиск в Интернете

Выгрузил свои скрипты, мучил Capslock, менял его в настройках на Ctrl|^|Shift, менял время зажатия — но не реагирует. Может ещё кто-нибудь отписаться — у всех ли так на Win7?

41

Re: AHK: Поиск в Интернете

Всё-таки, не очень понятно, зачем нужно два варианта (с двумя хоткеями) вывода окна, когда можно по CapsLock+` всегда выводить выделенное или скопированное, а старый поиск по необходимости доставать из выпадающего списка?

42

Re: AHK: Поиск в Интернете

Как можно самостоятельно добавить поиск? Например, по этому сайту?

Win10x64, AHK v1.1.25

43 (изменено: DD, 2017-02-13 03:51:57)

Re: AHK: Поиск в Интернете

Будет искать по CapsLock+Q:

CapsLock & vk51::Search(,"site:forum.cgpersia.com","Поиск по forum.cgpersia.com (CapsLock+Q)")

44

Re: AHK: Поиск в Интернете

Почему-то, когда пользуюсь поиском через скрипт, а не вручную, на Гугле требуют заполнять капчу. Заполняю и снова ищу по сайту через Гугл — то же самое. С чего бы это?

45

Re: AHK: Поиск в Интернете

Это гугловские заморочки - иногда и у меня так бывало. Связано это, кажется, с большим числом запросов из-за NAT.  Наконец понял, чего вы хотите - одной клавиши с ручным выбором поиска. Это несложно.
Попробуйте такой скрипт - он точно копирует отработку зажатия CapsLock в скрипте:

CapsLock::CapsLock
CapsLock & 1::
KeyWait CapsLock, T0.8
If ErrorLevel
	MsgBox CapsLock зажат!
else
	MsgBox CapsLock свободен!
return

46

Re: AHK: Поиск в Интернете

Да, так работает, но как уже сказал, я это и сам могу переделать. А хотелось бы решения по поисковым пунктам — чтобы можно было их прописывать, не назначая горячие клавиши, потому что, думаю, юзеры скрипта рано или поздно какие-то пункты захотят оставлять без клавиш и разбить сгруппированные на отдельные. То есть, чтобы к примеру, и с клавишей и без — оба эти пункта отображались:


CapsLock & vk53::Search(,,"Поиск в Интернете (CapsLock+S)")
Search(,"site:$site","Поиск по сайту (CapsLock+D)")

Возможно (но это Вам виднее), при парсинге можно было бы ориентироваться на наличие "return", как разделитель пунктов во всех случаях:


    CapsLock & vk49::
    Search("https://www.mywot.com/ru/scorecard/%s","noclip $site","WHOIS, WOT - информация о сайте (CapsLock+I)")
    Search("https://whois.domaintools.com/%s","noclip $site")
    return

    Search("https://www.mywot.com/ru/scorecard/%s","noclip $site","WHOIS, WOT - информация о сайте")
    Search("https://whois.domaintools.com/%s","noclip $site")
    return

    Search("https://whois.domaintools.com/%s","noclip $site")
    return

47

Re: AHK: Поиск в Интернете

DD пишет:

Будет искать по CapsLock+Q:

CapsLock & vk51::Search(,"site:forum.cgpersia.com","Поиск по forum.cgpersia.com (CapsLock+Q)")

Полагаю, подразумевается поиск Google по сайту? А внутри самого сайта не получится?

Win10x64, AHK v1.1.25

48

Re: AHK: Поиск в Интернете

Так кажись:


CapsLock & vk51::Search("https://forum.cgpersia.com/search.php?do=process&do=process&quicksearch=1&childforums=1&exactname=1&s=e8dec4cb2a78920c19b4edcb481f29de&securitytoken=guest&query=%s&forumchoice%5B%5D=-1&titleonly=1&search=Search",,"Поиск по forum.cgpersia.com (CapsLock+Q)")

49

Re: AHK: Поиск в Интернете

DD, спасибо! А как Вы определили ссылку? У меня не получилось это сделать самостоятельно. Могли бы сделать скриншот?

Win10x64, AHK v1.1.25

50

Re: AHK: Поиск в Интернете

becauseim, пожалуйста! Достал из этого окна на скриншоте в старой Опере (v12.14), по пункту из контекстного меню «Создать поиск», вызванного из поисковой формы сайта. Только для скрипта я объединил "Адрес" с "Запросом", добавив между ними знак &

http://i91.fastpic.ru/thumb/2017/0214/c8/8d7237e632dfe60591b787ec48db7cc8.jpeg