AHK 对调 win+space 和 alt+space

2022-03-14 15:11:21 +08:00
 n2l

环境:win11

2041 次点击
所在节点    Windows
15 条回复
n2l
2022-03-14 15:26:58 +08:00
环境:
win11

背景:
win11 中默认 win+space 用于切换输入法

需求:
对调 win+space 和 alt+space 的功能,让 alt+space 用于切换输入法,让 win+space 指派呼出 everything

目前代码:
!Space::
Send , #{Space}
return
#Space::
Send, !{Space}
;Msgbox aaa
return

代码存在问题:
alt+space 和 win+space 没有按照预想的完成对调,而是两者现在都是切换输入法了。
en20
2022-03-14 15:47:28 +08:00
我有个类似需求是 ; 和 : 对调, 但是一直失败,希望能蹲到解答
Linken404
2022-03-14 15:57:47 +08:00
@en20 楼主的那个我没 win11 不好试,但这种单键位改动的可以用 KeyTweak 这个软件,设置一次之后永久生效的。我之前也是用 ahk 来做,记忆中好像两个键对调也没太大实现难度吧,不过后来有了上面那个软件就没怎么用 ahk 映射过键位了。
en20
2022-03-14 16:20:42 +08:00
@Linken404 感谢,但是我 ahk 还有写一些其他脚本,键位也是自己调了很久的,所以没必要换.

; 和 : 对调 试过 :: 和 Send {}, 都有问题, 实在搞不定
Linken404
2022-03-14 16:48:20 +08:00
@en20 对不起 我刚试了用 ahk 写了一下也没搞定 哈哈哈哈 我记错了对不起
MaxTan
2022-03-14 17:14:10 +08:00
用官方的 PowerToys 改
bung
2022-03-14 17:39:07 +08:00
试试这样行不行:

evertything 自身可以设置全局快捷键(工具-选项-快捷键-切换窗口快捷键),把它设成一个很复杂的组合(复杂就不会被误触),比如:Ctrl+Shift+Alt+Win+F

然后,把 Win-Space 转到 Ctrl+Shift+Alt+Win+F

#Space::Send #!^+f
wellwellwell
2022-03-15 00:30:12 +08:00
我在 win10 上无法复现,可以是 win11bug ,引发递归调用,换一种思路,使用中间变量试试
wellwellwell
2022-03-15 00:40:26 +08:00
或者使用$前缀试试:

$#Space::
Send, !{Space}
return
visitantzj
2022-03-15 00:41:27 +08:00
@en20 SharpKeys 可以实现,
win10 上可用,win11 没试过
n2l
2022-03-15 14:31:36 +08:00
@MaxTan 感谢大佬,解决了我的痛点!!!!
n2l
2022-03-17 09:24:00 +08:00
@MaxTan 发现这个软件间歇性失效,重新打开都不行,只能注销重上,有解决办法吗?
MaxTan
2022-03-17 11:02:24 +08:00
win10 21H2 一直都没出过问题

建议来这提 https://github.com/microsoft/PowerToys/issues
n2l
2022-03-18 20:04:28 +08:00
@bung 搞定了,非常感谢。

<#Space::
Send ^+{Space}
return
<!Space::
Send #{Space}
return
n2l
2022-03-18 20:05:21 +08:00
@MaxTan 非常感谢,已经用 ahk 完成了,还是习惯于 AHK 的方式,灵活性比较强,崩溃了也容易重启。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/840241

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX