※ 引述《solomn (九米)》之铭言:
: ;快速Google搜寻
: #Z::
: Send, ^c
: Sleep 500
: Run, http://www.google.com.tw/search?q=%clipboard%
: Sleep 500
: Send, #{UP}
: Return
: 上面的AutoHotKey程式码
: 是我用来鼠标反白文字后
: 快速做Google搜寻的热键
: 但是它在遇到文字含数学的加号时
: 会不认得加号
: 例如文字是“郭台铭+柯文哲”
: 反白文字后按热键Win+Z
: 它认得的是“郭台铭 柯文哲”
: 即“加号”变成了“空格”
: 请问
: 该如何修正这个热键的程式码?
: 谢谢
URIEncode函式,如下。
PS:
URIEncode函式是google来的。
Google 检索是爬文来的。
;======================================
;检索 Google 检索,先按左边的Alt, 再按右边的Ctrl
!RCtrl::
SavedClipTemp := ClipboardAll
Clipboard = ; empty
SendInput, ^c ; copy highlighted text
ClipWait, 1 ; wait for change
if ErrorLevel
{
Clipboard := SavedClipTemp
SoundBeep
return
}
if Clipboard contains http
{
Run, %Clipboard%
Return
}
Else
Clipboard := URIEncode(Clipboard)
Run, https://www.google.com/search?q=%Clipboard% ;google检索
Return
;==============================================================
URIEncode(str, encoding := "UTF-8") { ;*[my]
VarSetCapacity(var, StrPut(str, encoding))
StrPut(str, &var, encoding)
While code := NumGet(Var, A_Index - 1, "UChar") {
bool := (code > 0x7F || code < 0x30 || code = 0x3D)
UrlStr .= bool ? "%" . Format("{:02X}", code) : Chr(code)
}
Return UrlStr
}