ฉันกำลังพยายามทำซ้ำปุ่มTouchCursorโดยใช้ AutoHotkey แต่ฉันไม่สามารถใช้กับตัวดัดแปลงหลายตัวได้
นี่คือสิ่งที่ฉันมีจนถึงตอนนี้ (จากhttps://autohotkey.com/boards/viewtopic.php?t=6525 ):
space & g::Send, {esc}
space & l::send, {right}
space & k::send, {up}
space & j::send, {down}
space & h::send, {left}
space & p::send, {backspace}
space & m::send, {delete}
space & u::send, {home}
space & o::send, {end}
space::
Send, {space}
return
สคริปต์ด้านบนใช้งานได้ดีในการเลื่อนเคอร์เซอร์ไปมาโดยใช้ 'h', 'j', 'k' และ 'l' แต่มันไม่สนใจcontrol
และshift
ปุ่ม
ตัวอย่างเช่นผมได้รับการคาดหวังว่าจะเน้นตัวอักษรโดยใช้space
+ shift
+ h
เพื่อเน้นด้านซ้ายคล้ายกับspace
+ +shift
left arrow
ฉันพยายาม: +space & h::send, {left}
และได้รับข้อผิดพลาดต่อไปนี้:
แก้ไข
สคริปต์นี้จะทำงานร่วมกับcontrol
และshift
:
; Right, Shift+Right, Control+Right, Shift+Control+Right
space & l::
if((GetKeyState("Shift", "P") and (GetKeyState("Control", "P")))) {
send, +^{right}
} else if(GetKeyState("Shift", "P")) {
send, +{right}
} else if(GetKeyState("Control", "P")) {
send, ^{right}
} else {
send, {right}
}
Return
; Up, Shift+Up, Control+Up, Shift+Control+Up
space & k::
if((GetKeyState("Shift", "P") and (GetKeyState("Control", "P")))) {
send, +^{up}
} else if(GetKeyState("Shift", "P")) {
send, +{up}
} else if(GetKeyState("Control", "P")) {
send, ^{up}
} else {
send, {up}
}
Return
; Down, Shift+Down, Control+Down, Shift+Control+Down
space & j::
if((GetKeyState("Shift", "P") and (GetKeyState("Control", "P")))) {
send, +^{down}
} else if(GetKeyState("Shift", "P")) {
send, +{down}
} else if(GetKeyState("Control", "P")) {
send, ^{down}
} else {
send, {down}
}
Return
; Left, Shift+Left, Control+Left, Shift+Control+Left
space & h::
if((GetKeyState("Shift", "P") and (GetKeyState("Control", "P")))) {
send, +^{left}
} else if(GetKeyState("Shift", "P")) {
send, +{left}
} else if(GetKeyState("Control", "P")) {
send, ^{left}
} else {
send, {left}
}
Return
; Home, Shift+Home, Control+Home, Shift+Control+Home
space & u::
if((GetKeyState("Shift", "P") and (GetKeyState("Control", "P")))) {
send, +^{home}
} else if(GetKeyState("Shift", "P")) {
send, +{home}
} else if(GetKeyState("Control", "P")) {
send, ^{home}
} else {
send, {home}
}
Return
; End, Shift+End, Control+End, Shift+Control+End
space & o::
if((GetKeyState("Shift", "P") and (GetKeyState("Control", "P")))) {
send, +^{end}
} else if(GetKeyState("Shift", "P")) {
send, +{end}
} else if(GetKeyState("Control", "P")) {
send, ^{end}
} else {
send, {end}
}
Return
; Backspace, Shift+Backspace
space & p::
if(GetKeyState("Control", "P")) {
send, ^{backspace}
} else {
send, {backspace}
}
Return
; Simple modifiers
space & g::Send, {esc}
space & m::send, {delete}
; Allow space bar to go through if pressed without holding
space::
Send, {space}
return