我打开记事本,然后按住+2295
Alt 键输入,然后松开 Alt 键。我用 Unicode 编码保存文件。但是输出不是http://www.fileformat.info/info/unicode/char/2295/index.htm正如预期的那样,但是这http://www.fileformat.info/info/unicode/char/2248/index.htm相反。我做错了什么?寻求一些指点。
对于遇到此问题的其他任何人:请注意EnableHexNumpad
需要是一个新的字符串类型(请参阅答案中链接的 Wiki 页面)
答案1
这维基百科条目Unicode 输入法列出了此功能正常运行的必要先决条件:
此输入法的先决条件是注册表项
HKEY_CURRENT_USER\Control Panel\Input Method
包含一个名为 的字符串类型 (REG_SZ
) 值EnableHexNumpad
,其值为1
。用户需要在编辑注册表后在 Windows 8.1/8.0、Windows 7 和 Vista 上注销/登录,或在早期系统上重新启动,才能使此输入法开始工作。
在我将此注册表项添加到我的机器上并重新启动后,输入就可以像广告中说的那样工作了。
答案2
回答为什么存在这个特定值的问题:
使用标准输入方法,十进制数取 256 模,然后如果没有前导零,则解释为 OEM 代码页*,如果有前导零,则解释为 ANSI 代码页。因此,步骤如下:
- 2295 模 256 = 247
- 247 [0xF7] 在 OEM 代码页中为 U+2295
此时具有 U+2295 的字符集是代码页 437、737、770、772、774、860、861、862、863、864、865、CWI 和 MIK。
(“2295”和“2248”都以 22 开头,这是一个有趣的巧合,仅此而已)
* 注意:“ANSI 代码页”与 ANSI 关系不大,只是代码页 1252 是基于后来成为 ISO 8859-1 的草案 [其他一些代码页也有类似的起源]。它是与当前区域设置关联的 8 位字符集,“OEM 代码页”是与区域设置关联的另一个字符集,通常是该国 MS-DOS 中使用的字符集。