如何创建自己的Windows XP键盘映射?

时间:2022-03-13 13:19:30

My father has found a Russian language keyboard mapping that he really likes here. However, it is non-standard and therefore is not one that appears in the Languages (Control Panel->Regional and Language Options->Languages->Details->Text Services And Input Languages->Add) dropdown for keyboard layout selection. To my understanding, it should be a simple task to create a new mapping - perhaps editing an XML file and a reboot. Does anyone know how to do this?

我父亲找到了他真正喜欢的俄语键盘映射。但是,它不是标准的,因此不会出现在语言(控制面板 - >区域和语言选项 - >语言 - >详细信息 - >文本服务和输入语言 - >添加)下拉列表中,用于键盘布局选择。根据我的理解,创建新映射应该是一项简单的任务 - 可能是编辑XML文件和重新启动。有谁知道如何做到这一点?

Barring that, how would I go about writing a program to emulate this? It seems like it would have to run in the system tray (I can figure that out), have a hook intercepting incoming keyboard input (no idea how to do this), convert it off a configuration file, and send it to whatever application and text window has current focus (again, no idea). With any luck this should not be too hard.

除此之外,我将如何编写程序来模拟这个?好像它必须在系统托盘中运行(我可以弄清楚),有一个钩子拦截传入的键盘输入(不知道如何做到这一点),将其转换为配置文件,并将其发送到任何应用程序和文本窗口有当前焦点(再次,不知道)。运气好的话,这不应该太难。

Any advice?

2 个解决方案

#1


7  

There's this utility from Microsoft

这是微软的这个实用程序

The Microsoft Keyboard Layout Creator (MSKLC) extends the international functionality of Windows 2000, Windows XP, Windows Server 2003,and Windows Vistas systems by allowing users to:

Microsoft键盘布局创建器(MSKLC)允许用户通过以下方式扩展Windows 2000,Windows XP,Windows Server 2003和Windows Vistas系统的国际功能:

  • Create new keyboard layouts from scratch
  • 从头开始创建新的键盘布局

  • Base a new layout on an existing one
  • 在现有布局上建立新布局

  • Modify an existing keyboard layout and build a new layout from it
  • 修改现有的键盘布局并从中构建新的布局

  • Multilingual input locales within edit control fields.
  • 编辑控制字段中的多语言输入区域设置。

  • Build keyboard layout DLLs for x86, x64, and IA64 platforms.
  • 为x86,x64和IA64平台构建键盘布局DLL。

  • Package the resulting keyboard layouts for subsequent delivery and installation.
  • 打包生成的键盘布局,以便后续交付和安装。

#2


1  

Try AutoHotKey (http://www.autohotkey.com/) i use it to get emacs keybindings in normal text editors, i'm sure it could tackle this too.

试试AutoHotKey(http://www.autohotkey.com/)我用它在普通文本编辑器中获取emacs键绑定,我相信它也可以解决这个问题。

edit: the bit you're looking for is in the quickstart here: http://www.autohotkey.com/docs/Tutorial.htm#Send

编辑:您正在寻找的位于快速入门:http://www.autohotkey.com/docs/Tutorial.htm#Send

#1


7  

There's this utility from Microsoft

这是微软的这个实用程序

The Microsoft Keyboard Layout Creator (MSKLC) extends the international functionality of Windows 2000, Windows XP, Windows Server 2003,and Windows Vistas systems by allowing users to:

Microsoft键盘布局创建器(MSKLC)允许用户通过以下方式扩展Windows 2000,Windows XP,Windows Server 2003和Windows Vistas系统的国际功能:

  • Create new keyboard layouts from scratch
  • 从头开始创建新的键盘布局

  • Base a new layout on an existing one
  • 在现有布局上建立新布局

  • Modify an existing keyboard layout and build a new layout from it
  • 修改现有的键盘布局并从中构建新的布局

  • Multilingual input locales within edit control fields.
  • 编辑控制字段中的多语言输入区域设置。

  • Build keyboard layout DLLs for x86, x64, and IA64 platforms.
  • 为x86,x64和IA64平台构建键盘布局DLL。

  • Package the resulting keyboard layouts for subsequent delivery and installation.
  • 打包生成的键盘布局,以便后续交付和安装。

#2


1  

Try AutoHotKey (http://www.autohotkey.com/) i use it to get emacs keybindings in normal text editors, i'm sure it could tackle this too.

试试AutoHotKey(http://www.autohotkey.com/)我用它在普通文本编辑器中获取emacs键绑定,我相信它也可以解决这个问题。

edit: the bit you're looking for is in the quickstart here: http://www.autohotkey.com/docs/Tutorial.htm#Send

编辑:您正在寻找的位于快速入门:http://www.autohotkey.com/docs/Tutorial.htm#Send