V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
tomorrow092
V2EX  ›  问与答

求 大佬 给个 autohotkey 脚本 实现 映射 上下左右 方向键!

  •  
  •   tomorrow092 · 2023-12-22 15:05:52 +08:00 · 1051 次点击
    这是一个创建于 368 天前的主题,其中的信息可能已经有所发展或是发生改变。

    求一个 autohotkey 脚本

    需求:win 本,希望 将 capslk 映射为右 shift, 然后右 shift 配合 ikjl 四个键实现 上下左右方向键。

    1. 为什么要将 capslk 映射成右 shift ,而不是 ctrl/alt , 因为 ctrl/alt 组合其他字母的 按键 被很多工具占用,所以不影响他们

    win 这个键也不太好用,win+其他组合键,一不小心按下 win 就会触发 windows 弹出 系统自身的”搜索窗口“ 所以也没有使用 win+iklj 实现方向组合

    1. 当前实现的脚本存在什么问题?
    CapsLock::RShift
    
    >+J::{
        Send "{Left}"
     }
    
     >+l::{
        Send "{Right}"
     }
     >+i::{
        Send "{Up}"
     }
     >+k::{
        Send "{Down}"
     }
    

    上面是我自己写的脚本, 这个脚本能够实现 capslk+ ikjl 实现上下左右的功能。

    但是因为 capslk 被映射成了由 shift ,shift 会切换中英文。 导致按下 capslk+ikjl 之后 也切换了 中英文输入,有的时候会切换有的时候不会。属于偶发。

    1. 除了 autohotkey 实现方向键映射之外 可以推荐 其他方案,请不吝啬给出脚本

    2. v 友有珍藏的 autohotkey 脚本吗,分享出来学习下

    感谢各位 v 右

    3 条回复    2023-12-23 11:48:16 +08:00
    RichardoLi
        1
    RichardoLi  
       2023-12-22 16:05:20 +08:00   ❤️ 1
    建议直接把 capslk 锁死,大写改成 shift+字母,下面是我经常用的,你可以参考下

    SetCapsLockState, AlwaysOff
    ;切换虚拟桌面
    Capslock & [::Send ^#{left}
    Capslock & ]::Send ^#{right}

    ;鼠标中键是换行
    MButton::Enter

    ;依次为光标上移/左移/下移/右移
    ;删除、光标移到最前、光标移到最后、上翻页、下翻页、删除整行
    #if GetKeyState("Capslock", "P")
    i:: Send {up}
    j:: Send {left}
    k:: Send {down}
    l:: Send {right}
    u:: Send {BS}
    h:: Send {home}
    n:: Send {end}
    o:: Send {Pgup}
    .:: Send {Pgdn}
    ,:: Send {Home}{ShiftDown}{End}{Right}{ShiftUp}{Del}

    return
    tomorrow092
        2
    tomorrow092  
    OP
       2023-12-22 16:55:33 +08:00
    @RichardoLi 好的谢谢,
    PRStarDust
        3
    PRStarDust  
       2023-12-23 11:48:16 +08:00
    我是把 capslock 映射成了 esc 键,caposlock+tab 切换大小写,caps+wasd 做方向键,还有一些其他的映射,你看看能不能用吧。另外如果不想费心思学 ahk ,可以看看 quicker 的扩展热键能不能实现你的需求
    代码太长好像发不出来,看这里吧 https://www.coderstool.com/cs/Z9AXVv
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5364 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 06:45 · PVG 14:45 · LAX 22:45 · JFK 01:45
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.