键盘控制鼠标移动

记录一下,

windows用autohotkeys

^up::MouseMove,0,-75,0,r
^+up::MouseMove,0,-15,0,r
^down::MouseMove,0,75,0,r
^+down::MouseMove,0,15,0,r
^left::mousemove,-75,0,0,r
^+left::mousemove,-15,0,0,r
^right::mousemove,75,0,0,r
^+right::mousemove,15,0,0,r
^space::MouseClick, left
^+space::MouseClick, right

mac用hammerspoon ,这个还没做好,无法长按实现持续移动,鼠标点击也还没做,先用着

local screens = hs.screen.allScreens()

function moveleft()
    local cs = hs.mouse.getRelativePosition()
    hs.mouse.setRelativePosition({x= cs["x"]-100, y=cs["y"] + 0}, screens[1])
end

function moveleft_accurate()
    local cs = hs.mouse.getRelativePosition()
    hs.mouse.setRelativePosition({x= cs["x"]-10, y=cs["y"] + 0}, screens[1])
end

function moveright()
    local cs = hs.mouse.getRelativePosition()
    hs.mouse.setRelativePosition({x= cs["x"]+100, y=cs["y"] + 0}, screens[1])
end

function moveright_accurate()
    local cs = hs.mouse.getRelativePosition()
    hs.mouse.setRelativePosition({x= cs["x"]+10, y=cs["y"] + 0}, screens[1])
end


function moveup()
    local cs = hs.mouse.getRelativePosition()
    hs.mouse.setRelativePosition({x= cs["x"], y=cs["y"]-100}, screens[1])
end

function moveup_accurate()
    local cs = hs.mouse.getRelativePosition()
    hs.mouse.setRelativePosition({x= cs["x"], y=cs["y"]-10}, screens[1])
end

function movedown()
    local cs = hs.mouse.getRelativePosition()
    hs.mouse.setRelativePosition({x= cs["x"], y=cs["y"]+100}, screens[1])
end

function movedown_accurate()
    local cs = hs.mouse.getRelativePosition()
    hs.mouse.setRelativePosition({x= cs["x"], y=cs["y"]+10}, screens[1])
end

function MouseleftClick()
    local cs = hs.mouse.getRelativePosition()
    hs.eventtap.leftClick(cs)
end

function MouseRightClick()
    local cs = hs.mouse.getRelativePosition()
    hs.eventtap.RightClick(cs)
end

hs.hotkey.bind({"alt"}, "Left", moveleft)
hs.hotkey.bind({"alt","cmd"}, "Left", moveleft_accurate)
hs.hotkey.bind({"alt"}, "Right", moveright)
hs.hotkey.bind({"alt","cmd"}, "Right", moveright_accurate)
hs.hotkey.bind({"alt"}, "Up", moveup)
hs.hotkey.bind({"alt","cmd"}, "Up", moveup_accurate)
hs.hotkey.bind({"alt"}, "Down", movedown)
hs.hotkey.bind({"alt","cmd"}, "Down", movedown_accurate)
hs.hotkey.bind({"alt"}, "Space", MouseleftClick)
hs.hotkey.bind({"alt", "cmd"}, "Space", MouseRightClick)

你可能感兴趣的:(hammerspoon,autohotkey)