V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
dcsuibian
V2EX  ›  程序员

有没有人在 Windows 下把 Caps Lock 和 Ctrl 互换的?

  •  
  •   dcsuibian · 2022-11-24 00:16:20 +08:00 · 7225 次点击
    这是一个创建于 764 天前的主题,其中的信息可能已经有所发展或是发生改变。

    从 mac 跳回了 Windows ,又得重新适应快捷键了。

    目前用 Powertoys 把 Ctrl+空格 映射成了 Win+空格 ,用于切换输入法,用着还行。

    但 Ctrl+A 、Ctrl+Shift+N 之类的操作就感觉怪怪的了,想问下大家是怎么设置的

    第 1 条附言  ·  2022-11-24 15:17:55 +08:00

    可能没写清楚,我的物理键盘自带Ctrl/Caps互换功能。所以互换我是会的。

    主要想问下大家,互换后,对一些常用的快捷键是怎么处理的?

    比如Ctrl+A全选、Ctrl+Z撤销,以前是小指+食指,现在用小指和无名指感觉怪怪的。 还比如Ctrl+Shift+N新建无痕页面,小指Ctrl+无名指Shift,或小指Shift+无名指Ctrl,都感觉怪怪的。

    75 条回复    2022-11-26 00:18:15 +08:00
    JohnBull
        1
    JohnBull  
       2022-11-24 00:21:49 +08:00   ❤️ 1
    我日常 Linux ,干脆直接把 CAPS 映射成 ctrl 。我根本不需要 Caps Lock
    myang
        2
    myang  
       2022-11-24 00:21:58 +08:00 via Android
    CapsLock::Ctrl
    <+RShift::CapsLock
    >+LShift::CapsLock
    yhrzpm
        3
    yhrzpm  
       2022-11-24 00:38:56 +08:00   ❤️ 3
    当年用 emacs 留下的习惯,所有设备拿到手必须首先把 caps 换成 ctrl 。mac 和 linux 都自带重映射功能。win 下我用 remapkey 来映射
    juggtt213
        4
    juggtt213  
       2022-11-24 00:53:07 +08:00
    autohotkey
    Yvette
        5
    Yvette  
       2022-11-24 06:25:55 +08:00
    我自己在 Windows 上的解决方案是把 cap locks 和 alt 都映射到了单独的 hyper key 上,再用 hyper key 的按键组合来映射到对应的快捷键。这样的好处是可以避免干扰现有的快捷键同时也可以复用 Mac 上已经熟悉的快捷键 https://dccxi.com/posts/shortcuts-for-texts/#windows
    baobao1270
        6
    baobao1270  
       2022-11-24 06:38:09 +08:00
    我选择把 macOS 的键盘最后一行赢 karabiner 映射成
    Ctrl-Fn-Win-Alt-Space-Alt-Ctrl (本回复中 ctrl 指的是 windows 的 ctrl 键盘,macOS 上的 control 键本文称作 control 键,下同)

    也就是
    left fn -> left command (windows ctrl)
    left control -> fn
    left option -> left control (windows win)
    left command -> left option (windows alt)
    right command -> right option (windows alt)
    right option -> right command (windows ctrl)

    也就是 macOS 的键盘布局变成了 IMB 标准美式布局
    dale3661230
        7
    dale3661230  
       2022-11-24 07:41:37 +08:00
    command 位置 最接近的就是 windows alt ,工具记得是楼上提到的 karabiner 最好用
    kujio
        8
    kujio  
       2022-11-24 08:05:31 +08:00
    capslk 直接改成 ctrl 、不是互换。
    直接改注册表就完事了。
    liuidetmks
        9
    liuidetmks  
       2022-11-24 08:19:03 +08:00   ❤️ 1
    mac 自带输入法需要 capslock 切换 中英,不然我也删掉了 capslock
    vopin
        10
    vopin  
       2022-11-24 08:33:43 +08:00
    我换成基本和 Mac 布局一样的。不过 capslock 没变。
    superrichman
        11
    superrichman  
       2022-11-24 08:49:23 +08:00 via Android
    win 有办法实现单按 caps lock 触发 esc ,组合按触发 ctrl 的效果吗?比如 caps lock + a 触发 ctrl + a
    lo0pback
        12
    lo0pback  
       2022-11-24 08:51:12 +08:00
    我互换了 挺好用的
    yuanse
        13
    yuanse  
       2022-11-24 08:51:41 +08:00 via Android
    可编程键盘物理调换😏
    proxychains
        14
    proxychains  
       2022-11-24 08:57:11 +08:00
    @superrichman autohotkey. 下载这个 app, 编写配置文件就可以自定义映射了. 不需要重启
    proxychains
        15
    proxychains  
       2022-11-24 08:58:35 +08:00
    ikbc poker pro 键盘. 自带对调 Caps Lock 和 R_Ctrl.
    运维工作, 基本上用不到 Caps Lock.
    对调完这俩键就会发现回不去了.
    xloong
        16
    xloong  
       2022-11-24 09:04:13 +08:00
    没互换 Caps lock 直接映射到 ctrl 了 需要大写就 shift
    yzqn
        17
    yzqn  
       2022-11-24 09:12:23 +08:00
    不用互换,我同时用 mac 和 win ,记住两套也不难,如果换了案件,用别的电脑会很痛苦
    marcong95
        18
    marcong95  
       2022-11-24 09:18:28 +08:00
    60%键盘用户,把 CapsLock 改成了 Fn 。目前 Windows 、iPad w/ Magic Keyboard 两边换倒是没有什么不习惯的地方
    Rooger
        19
    Rooger  
       2022-11-24 09:27:06 +08:00
    我用 Filco Minina ,机械按键互换了两个键的位置,用了快三年了,Windows 还是相当舒服的。建议没有尝试的朋友可以试一下。
    HugoChao
        20
    HugoChao  
       2022-11-24 09:28:41 +08:00
    powerkeys bug 太多,已弃用
    曾经把 alt 和 ctrl 互换,很好用
    superrichman
        21
    superrichman  
       2022-11-24 09:52:20 +08:00
    @proxychains 翻了一下硬盘,原来我早就写好了。。。

    给可能有和我一样需求的人参考一下吧。能实现以下功能:
    1. 单按 caps lock 触发 esc
    2. caps lock 组合触发 ctrl ,比如 caps lock + a 触发 ctrl + a
    3. 要切换大小写用 shift + caps lock 触发原来的 caps lock

    ahk 代码

    SetCapsLockState, alwaysoff
    Capslock::
    Send {LControl Down}
    KeyWait, CapsLock
    Send {LControl Up}
    if ( A_PriorKey = "CapsLock" )
    {
    Send {Esc}
    }
    return
    daj2
        22
    daj2  
       2022-11-24 09:53:52 +08:00
    Caps -> Fn + 1 ,ahk 搞定,切换输入法一直用 alt+shift
    superrichman
        23
    superrichman  
       2022-11-24 09:54:23 +08:00
    原来 ctrl 的功能不会改变,只是把 caps lock 改成了多功能的。
    maggch97
        24
    maggch97  
       2022-11-24 10:06:55 +08:00   ❤️ 1
    保存成 .reg 文件打开,所有程序映射的方案都太差

    Windows Registry Editor Version 5.00

    [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout]
    "Scancode Map"=hex:00,00,00,00,00,00,00,00,02,00,00,00,1d,00,3a,00,00,00,00,00
    maggch97
        25
    maggch97  
       2022-11-24 10:08:01 +08:00
    至于快捷键的问题,你去习惯它。所有的软件映射快捷键的方案都是垃圾。
    ngn999
        26
    ngn999  
       2022-11-24 10:08:42 +08:00
    Emacs 用户必需改
    wolfie
        27
    wolfie  
       2022-11-24 10:25:28 +08:00
    这种自定义修改键位,用别人电脑是不是直接就不会了。
    loading
        28
    loading  
       2022-11-24 10:37:21 +08:00
    我的键盘上没有 caps 这个键,doge.
    mirrorman
        29
    mirrorman  
       2022-11-24 10:42:51 +08:00
    filco 键盘通过开关换了
    ninjia0x00
        30
    ninjia0x00  
       2022-11-24 10:44:36 +08:00
    我的键盘也没 Caps Lock 键,直接把 Caps Lock 映射为 Ctrl 。需要大写的话,就按住 Shift 键了

    Linux 和 MAC 都可以直接键盘映射来改,Windows 的话我使用 autohotkey

    切换输入法的话,自己平常使用 Linux 和 MAC 都可以直接使用 修改完映射后的 Caps Lock + Space 来切换中英文输入发
    amorphobia
        31
    amorphobia  
       2022-11-24 11:09:59 +08:00
    SharpKeys

    把 CapsLock 映射成 Left Ctrl
    把 Left Ctrl 映射成 Right Ctrl
    把 Right Ctrl 映射成 Caps Lock
    KENNHI
        32
    KENNHI  
       2022-11-24 11:36:38 +08:00 via Android   ❤️ 1
    capalock 屁用没有,直接把 capslock 映射成 ctrl ,原来的 ctrl 保留就好了。
    微软官方工具
    https://learn.microsoft.com/ja-jp/sysinternals/downloads/ctrl2cap
    c0t
        33
    c0t  
       2022-11-24 11:37:03 +08:00 via Android
    这不是最正常的修改了吗,不过我用 hhkb 配列,默认就没有 capslock
    KENNHI
        34
    KENNHI  
       2022-11-24 11:38:37 +08:00 via Android   ❤️ 1
    @KENNHI
    草好像暴露了什么
    中文版
    https://learn.microsoft.com/zh-cn/sysinternals/downloads/ctrl2cap

    微软都教你把没用的 capslock 废掉(
    hd2ex
        35
    hd2ex  
       2022-11-24 11:50:00 +08:00   ❤️ 1
    ctrl,win,alt -> win,alt,ctrl
    wiken
        36
    wiken  
       2022-11-24 11:52:59 +08:00
    我是改注册表,ctrl 跟 alt 互换
    sbabybird
        37
    sbabybird  
       2022-11-24 13:02:11 +08:00
    +Capslock::Capslock ; make shift+Caps-Lock the Caps Lock toggle
    Capslock::Control ; make Caps Lock the control button
    beisilu
        38
    beisilu  
       2022-11-24 13:37:47 +08:00   ❤️ 1
    capslock 用处低却处在了一个极其重要的位置
    lsdxl
        39
    lsdxl  
       2022-11-24 14:21:40 +08:00
    我左 ctrl 坏了 被迫放弃 win 键 把 win 键映射为左 ctrl 强制适应了
    mtdhllf
        40
    mtdhllf  
       2022-11-24 14:25:03 +08:00
    血手幽灵键盘,每个按键你可以自己编辑
    cy18
        41
    cy18  
       2022-11-24 14:32:49 +08:00   ❤️ 1
    capslock 当 esc 用了快 5 年了。之前用 vim 养成的习惯,现在不用 vim 了还是继续保留。
    另外做了个 ahk 脚本用右 alt+edsf 实现上下左右,还有其他 edsf 附近的键实现 home 、end 、快速左右移动光标之类的功能,超方便,已经离不开了。
    ctrl 一直在老位置,感觉用手掌压 ctrl ,按 ctrl 的相关的快捷键很方便啊,不知道为什么这么多人喜欢把 ctrl 跟 capslock 对调。
    yhrzpm
        42
    yhrzpm  
       2022-11-24 15:09:31 +08:00
    @liuidetmks ctrl +space 切换
    MoeMoesakura
        43
    MoeMoesakura  
       2022-11-24 15:26:54 +08:00
    之前用 Chromebook 的时候发现 capslock 没了,后来用 chromebook 用了一阵之后 tmd 习惯了就没怎么敲过 capslock 了
    ( Chromebook 的 capslock 位置是搜索键( Super Key )
    但是那个锁屏键是真的寄,敲着敲着就从 backspace 不慎敲到了锁定键
    lrigi
        44
    lrigi  
       2022-11-24 15:26:57 +08:00 via iPhone
    @Yvette 是个好方法
    Ocean810975
        45
    Ocean810975  
       2022-11-24 16:05:32 +08:00
    @superrichman 是不是还少了段,我咋没看见 shift 的部分
    hulala1021
        46
    hulala1021  
       2022-11-24 16:29:53 +08:00
    HHKB 就是 CTRL 在 CAPS LOCK 上,但是没有 CAPS LOCK ,个人日写代码常来说 CAPS LOCK 这个键完全不需要,需要敲大写时直接小指 SHIFT 。
    ruihaoye
        47
    ruihaoye  
       2022-11-24 16:47:16 +08:00   ❤️ 1
    CAPS LOCK 和右 Ctrl 互换,然后用 PowerToys 映射了右 Ctrl+A 为行首、右 Ctrl+B 为光标左移等,这样左 Ctrl+C 这些还能继续用。
    dcsuibian
        48
    dcsuibian  
    OP
       2022-11-24 17:08:46 +08:00
    @ruihaoye 聪明啊
    cl1107
        49
    cl1107  
       2022-11-24 17:30:14 +08:00
    我是用 powertoys 将 ctrl 和 alt 互换了
    superrichman
        50
    superrichman  
       2022-11-24 17:44:32 +08:00 via Android
    @zhouoceanhy 因为不需要,默认 shift 和 caps lock 一起按就能触发
    Ocean810975
        51
    Ocean810975  
       2022-11-24 20:45:24 +08:00
    @superrichman 是我电脑的问题吗?我没装其他的脚本,shift+caps 没反应,只视做点击 shift
    superrichman
        52
    superrichman  
       2022-11-24 20:52:59 +08:00 via Android
    @zhouoceanhy 这个我就不太清楚了。试试别的组合,我电脑上 ctrl + caps lock ,alt + caps lock 都可以
    auvt
        53
    auvt  
       2022-11-24 22:00:31 +08:00 via iPhone
    @Yvette 老哥,求助一下 ahk 怎么写的?我实在没办法了,试了 n 次,因为 win11 上 alt 非常强势,即使在 ahk 里屏蔽了也不行( win10 倒行)。后来思路是把 alt 换成 ctrl 、shift 、win 等等再用后者设置组合键,但各种小毛病,而且发现能实现组合键的,好像只有几个键比如 shift 、ctrl 、alt 等等,比如我想找个废键(比如小键盘的 0 ),把 alt 改成它,然后 0 加 c 相当于 comman 加 c ,但不成功。后来牺牲了 delete ,用 sharpkeys 直接把 alt 改成 del ,然后设置组合才行……
    auvt
        54
    auvt  
       2022-11-24 22:01:18 +08:00 via iPhone
    @vopin 朋友,求助一下,是用 ahk 吗?可以分享下配置吗?感谢!🙏
    auvt
        55
    auvt  
       2022-11-24 22:07:44 +08:00 via iPhone
    @cy18 搭 lz 的快车求教:win11 上用 ahk 来进行 alt 屏蔽有时失效,特别是用 hjkl 来组合,长按住想连续移动光标的时候,经常会蹦出弹出各种奇怪的 win 原生快捷键😂不知您是怎么解决的?
    vopin
        56
    vopin  
       2022-11-24 23:07:32 +08:00
    @auvt PowerToys
    ALT CTRL 互换了,Win 键也换了。然后把键帽扣下来换,具体可以根据自己键盘来定。
    cy18
        57
    cy18  
       2022-11-25 00:17:48 +08:00
    @auvt #55 用 sharpkey 把 ralt 映射到 F15 ,然后在 AHK 用 F15 做 modifier 。
    kawaiidora
        58
    kawaiidora  
       2022-11-25 03:41:49 +08:00 via Android
    以前用 MacBook 的时候会把 caps lock 映射成 ctrl ,现在用 win 台式机,习惯了用左手手掌根部压 ctrl 键,也就不搞按键映射了
    Yvette
        59
    Yvette  
       2022-11-25 03:44:14 +08:00
    @auvt 如果问题是没法屏蔽原生快捷键的话,有在前面加 $ 试试么? https://www.autohotkey.com/docs/Hotkeys.htm#prefixdollar
    advicebullet
        60
    advicebullet  
       2022-11-25 05:06:58 +08:00 via iPhone
    靠左的 Ctrl 组合键我都是用掌压,所以换了会更不方便。
    eric6356
        61
    eric6356  
       2022-11-25 09:13:49 +08:00
    我倾向于保留 ctrl 自己的功能,同时把 caps 设置成我想要的组合键,毕竟在 windows 上 ctrl + a 或者 ctrl +n 之类还是很常用的。
    这是我的完整 ahk 代码,用了好久了,偶尔会卡主需要按一下 caps 就会恢复
    https://gist.github.com/eric6356/1cbe88a0eaf3cce6ca902a0f6c95e2a6
    lonenol
        62
    lonenol  
       2022-11-25 10:28:55 +08:00
    没互换。。两个都变成 ctrl 了。。两个一起按才是 caps lock
    Atsushi
        63
    Atsushi  
       2022-11-25 10:31:13 +08:00
    日常用 HHKB ,偶尔一把 Blue Switch 玩玩,会调成接近 HHKB 的模式。
    所以本来就没有 Caps
    aoeui
        64
    aoeui  
       2022-11-25 10:38:01 +08:00 via Android
    我是 CapsLock -> Backspace
    Backspace -> Escape
    Escape -> CapsLock
    wyd011011daniel
        65
    wyd011011daniel  
       2022-11-25 10:50:56 +08:00
    没改位置,默认用手掌内侧、小拇指根部按 ctrl 。感觉按起来很方便。shift 和 tab 用小拇指按。可能因为 LOL 打多了。
    tigerf
        66
    tigerf  
       2022-11-25 11:21:45 +08:00 via Android
    在 Mac 上把 caps 映射成 cmd ,其他系统上 caps 映射成 Ctrl 。copy-paste 大统一。🤷‍♂️
    alexsunxl
        67
    alexsunxl  
       2022-11-25 11:36:19 +08:00
    我改了注册表,直接 把 Caps lock 键换 ctrl ,(单向改,没互换)
    capslock 没啥用, 不需要这个按键。
    gratonos
        68
    gratonos  
       2022-11-25 12:27:54 +08:00
    可以参考一下我这篇文章:
    gratonos
        69
    gratonos  
       2022-11-25 12:28:09 +08:00
    Serino
        70
    Serino  
       2022-11-25 13:53:04 +08:00
    默认布局的 CAPS+A ,CAPS+Z 不难按呀,我觉得比 Ctrl+A Ctrl+Z 好按太多了。玩 FPS 游戏,默认布局的 CAPS ,都比左下角的 Ctrl 好按
    auvt
        71
    auvt  
       2022-11-25 15:38:58 +08:00 via iPhone
    @vopin 🤣🤝连键帽都换了,可以!
    @cy18 太有才了!🤝😁👍
    @Yvette 好像是长按组合键还是会乍尸😂
    bandian
        72
    bandian  
       2022-11-25 15:42:30 +08:00 via iPhone
    caps 对我来说没啥用,直接映射成 left ctrl ,相当于多了一个 ctrl ,虽然不一定会用,但是可以很大程度避免我不小心把键盘切成大写键盘的尴尬情况
    xiaobai332
        73
    xiaobai332  
       2022-11-25 15:56:51 +08:00
    用 Powertoys 将 Caps 替换成 ctrl+空格 用作中英文切换,并禁用 shift 切换中英文
    ltuxer
        74
    ltuxer  
       2022-11-25 22:28:21 +08:00
    看评论才知道 macOS 下的 Fn 键竟然可以被重映射。渣渣 Windows 😭
    zggsong
        75
    zggsong  
       2022-11-26 00:18:15 +08:00
    mac 系统直接将 capslock 键映射成 ctrl 键,很方便。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2687 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 11:47 · PVG 19:47 · LAX 03:47 · JFK 06:47
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.