我正在尝试使用 Microsoft Keyboard Layout Creator (MSKLC) 为我的母语制作自定义键盘。我的母语是卡西语 ( iso-369-2 kha
, iso-369-3 kha
),Windows 不支持该语言,因此我得到美国英语)作为语言。
有什么方法可以添加我的自定义语言吗?如果可以,我该如何获取LOCALEID
?
- 例如英语(美国)
LOCALENAME = en-US
LOCALEID = 00000409
使用 Ubuntu,我可以很好地制作一个:我的卡西语自定义键盘
答案1
我没有任何真正的解决方案,解决方法是创建一个键盘映射并将其归类为不太可能与目标语言(在您的情况下是卡西语)并行使用的语言。
我将分享我的经验,让我们一起尝试解决这个问题。
我知道一些 [SIL] 发布的 Windows 键盘映射 - 选择了相同的解决方案 - 例如 SIL-IPA 映射 - 将自己归类为“冰岛语”(在某些自述文件中提到“(I) - 匹配 IPA”作为助记符)。
我最近根据要求制作了 Fur 语言的键盘映射 (iso 639-3: fvr) - 并且我选择将其归类为“毛利语”键盘,因为我正在寻找用户最不可能需要与 Fur 语言共同打字的语言。
(毛皮键盘映射示例)
其明显的缺点是:
- Windows 中可见的语言代码 - 显示“MR”或“MRI”,而不是一些让人想起 Fur (Poór'íŋ belé) 名称的东西
- 任何未来的拼写检查工具、语言支持包或在线工具,如果想要查询系统语言,都会给人留下错误的印象
- 创建任何系统范围的拼写检查工具等 - 都必须意识到这种随机选择 - 因此语言社区最好在这方面保持同步
- 某些键盘用户可能也需要输入毛利语、使用毛利语拼写检查器等
我曾与一个研究马萨利特语(Iso-639 mls/mdg)的小组进行过通信 - 他们采用了相同的解决方案,但以“土耳其语”作为映射。
(马萨利特键盘示例)
我尝试过对“MSKLC”进行各种调整 - 我发现如果你使用 MSKLC 不知道的任何未列出的语言代码 - 它将使用系统上安装的默认语言来编译输出键盘安装程序,这实际上不是我们想要的。
我已尝试过:
- 正如此处其他与键盘相关的帖子中提到的那样 - 系统中的语言代码似乎是在注册表中定义的
HKLM\System\CurrentControlSet\Control\Keyboard Layouts
- 然而 - MSKLC - 似乎是从其他地方抓取列表的 - 即:在这台电脑上:整个注册表不包含任何“Fula”语言(ISO-639-3 ful)的键盘 - 但 MSKLC 在他们的语言列表中包含两次“Fulah”
- 我创建了带有虚构语言代码的注册表项并尝试引用它们 - 但它们都没有出现在 MSKLC 中,而且如果我在文本表示 .klc 文件中引用它们 - MSKLC - 则会在该系统上编译一个编码为“英语”的键盘
- 也许有一个命令行版本可以编译 .klc 文件而不更改它们 - 可以映射到新创建的语言代码
这就是我现在所知道的全部,我很高兴听到真正的解决方案,或者如果我找到的话我会发布一个!
注意 - 我刚刚发现这个链接 - 它似乎在做类似的事情 - 我无法添加链接,因为我在这里没有这样做的“声誉”:标题是“Michael S. Kaplan 用您自己的语言编写的 MSKLC 键盘布局名称” - 它似乎并不简单,一旦任何人都可以使它工作 - 制作一个小脚本(?)或工具来包装它可能会很酷。
关于“cpan”的讨论中也提到“(最后 4 位数字与 .klc 文件中的代码页匹配)” - 我很快就会尝试。