gpt4 book ai didi

windows - Autohotkey:发送 5 位十六进制 unicode 字符

转载 作者:可可西里 更新时间:2023-11-01 14:23:21 25 4
gpt4 key购买 nike

我一直在尝试找到一种方法来重新映射我的键盘并发送 5 位十六进制 unicode 字符,此处描述的方法:ahk Send仅支持 4 位十六进制代码 {U+nnnn},我知​​道在过去,autohotkey 本身不支持 unicode,因此需要一些功能才能做到这一点,也许这就是我的解决方案。

例子:

#If GetKeyState("CapsLock","T")
+u::Send {U+1D4B0}

结果是 풰 而不是 𝒰,풰 的代码是 {U+D4B0},这意味着 AHK 只读取最后 4 位数字。即使我需要创建新功能来实现它,我该如何修复它?

谢谢

-标记

最佳答案

大于 0xFFFF 的 Unicode 值必须编码为两个代理对:

+u:: SendInput ,{U+D835}{U+DCB0}

这是将 0x10000 到 0x10FFFF 范围内的 Unicode 代码点 转换为代理项对的算法,转述自 wikipedia :

首先从代码点中减去 0x10000,得到一个在 0xFFFFF 范围内的数字

然后将右移10位并加上0xD800得到高位代理

的最低十位并向其添加0xDC00以获得低代理项

关于windows - Autohotkey:发送 5 位十六进制 unicode 字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36563635/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com