如何重新映射键盘键?


69

我笔记本电脑的钥匙之一掉了。有什么方法可以重新映射另一个密钥作为该密钥?我将“牺牲”另一个键,因为我从不使用它。


24
滚动锁定:您为什么看着我?
Panic Panic

2
这个问题涵盖了永久性地重新映射密钥。大多数答案基于需要重新启动的注册表编辑。对于如何重新映射键不重启钥匙对方,或交换为特定的应用程序,看到了这个问题:针对特定应用重新映射键盘按键
李林塔尔

@harrymc vlaurie.com链接已死(现在由ParkLogic托管)
john v kumpf

@johnvkumpf:有很多这样的文章。大多数无效链接仍然可以在Wayback Machine上找到。对于这个,请看这里
harrymc '18

Answers:


40

这是Howtogeek的一篇很好的文章,介绍了如何使用名为SharpKeys的实用程序:

在Windows 10、8、7或Vista上将任何键映射到任何键

如果您对系统上某些键(例如Caps Lock键)的工作方式感到厌倦,则可以使用注册表hack将它们重新映射为不同的键。但是应该有一种更简单的方法,对吗?

这就是SharpKeys出现的地方:这是一个小实用程序,可让您轻松地将一个键映射到另一个键,甚至关闭该键,而无需输入注册表。

例如,由于从未使用过键映射,因此我仅关闭了Caps Lock键。

图片

您可以单击“添加”按钮以打开“添加新的键映射”对话框,您可以在其中选择要从列表中映射的键,也可以单击“类型键”按钮并手动按下键(我觉得更加直观)

图片

完成后,单击“写入注册表”按钮,系统将提示您注销或重新启动以使更改生效。

图片

如果您想了解有关注册表项如何工作的所有技术细节,可以阅读有关如何使用注册表hack映射项的信息

参考链接


4
对于简单的重新映射,这是一种方法,无需编写完整的自动热键脚本。我发誓AHK不会误会我的意思,但是更多的是键盘组合而不是简单的重新映射。
约翰T

使用非常简单-将是更可爱的是能够在不删除任何内容切换键(启用/禁用)
南摹VU

这是否可以让我在运行Bootcamp的Macbook Pro Retina上的Windows中交换Fn和Ctrl键?谢谢。
dotnethaggis 2014年

我是否必须一直运行该应用程序,还是该更改是永久性的?
Panic Panic

上面的HowToGeek注册表黑客链接非常适合在没有软件的情况下执行此操作-但上述文章中的scancode链接已失效。这是现场直播(截至今天):msdn.microsoft.com/zh-cn/library/aa299374(v=vs.60

13

在这里使用Microsoft键盘布局创建器没有问题。对于切换修饰符键,我建议您使用注册表修改程序或为您更改注册表的应用程序,不要使用像AutoHotkey这样的纯软件重映射,因为这些解决方案并不适用于所有应用程序。

另一个解决方案是,如果您真的无法将钥匙重新插入笔记本电脑,那么您将获得替换钥匙,您是否尝试过搜索“笔记本电脑钥匙破损”


2
这是我发现的最佳解决方案-与AutoHotKey和Keytweak不同,我可以修改使用修饰符生成的字符,而无需更改未修改的行为。现在,我可以在不使用Shift的情况下获取(和),而9和0不受影响!:d
詹姆斯布罗德黑德

好吧,对于我将qwertz键盘转换为键盘的情况,qwerty这是行不通的,因为ctrl + z停留在t旁边。:(
ANeves

对于某些(大概)正在侦听按键事件的应用程序,还必须重新映射键盘扫描代码。这是一个很好的解决方案,因为它内置在Windows中,您可以使用Windows快捷方式。
大卫·索普科

9

您可以使用Microsoft的Keyboard Layout Creator
这甚至可以使您向键盘添加额外的功能,例如将键更改为死键(例如~),添加额外的映射(例如altgr+ c-> ç)等。

为了编辑特殊的击键,例如ctrl+ FOO,您可能需要.klc手动编辑文件。
您可以通过@Sensefulhttps://superuser.com/a/172993/157884中找到说明:

您需要.klc手动修改文件。

基本上,您只是修改VK_列以匹配column中的值1

因此,例如,如果您想绑定LN,则可以像在KLC中通常那样创建键盘。然后,您将在文本编辑器中打开KLC文件。L在该VK_ 列中找到值,然后将其切换为N

有关更多信息,我在我的博客上写了完整的步骤

警告:在Somme应用程序中不完全支持键绑定

但是,请注意,某些应用程序可能无法正确使用这些特殊的按键。

例如:在我的特定配置下,在DotA2的小组讨论中按altgr+ a将删除文本,而不是ã在其他应用程序中添加“赞” 。


3

我有Genius KB-G235 USB键盘(HID)和WinXP SP3。先前答案中的任何一个应用程序都不适合我。(因为在XP中不能使用PS / 2代码,而不能(完全)使用)。

我尝试了HotkeyP(免费软件)http://petr.lastovicka.sweb.cz/others.html,这有效!只需为键添加操作并完成操作即可。(分配新操作后,不会执行默认操作。)


2

http://www.autohotkey.com/可以是一个更简单而强大的解决方案。您可以使用以下脚本重新映射键并创建修饰键

;Use Capslock as a modifier and not as capslock anymore
$*Capslock::
    Gui, 99:+ToolWindow
    Gui, 99:Show, x-1 w1 +NoActivate, Capslock Is Down
    keywait, Capslock
    Gui, 99:Destroy
    return

;Write functions for keys while capslock is beeing hold here
#IfWinExist, Capslock Is Down
    j::Down
    k::Up
    l::Right
    h::Left
    m::AppsKey
    i::Insert
    d::Delete
#IfWinExist

;Use right and left shifts to toggle capslock
RShift & LShift::
    SetCapsLockState, % (State:=!State) ? "On" : "Off"
    return

LShift & RShift::
    SetCapsLockState, % (State:=!State) ? "On" : "Off"
    return

但是,为什么所有这些ScrollLock::LControl都足以进行重新映射呢?
Yuuza

抱歉,我确实可以简化,但是我想展示该工具的功能。使用此脚本,您不需要牺牲键,只需要有一个修饰键并为一个键具有第二个功能。
Jp_


2

Keyman Desktop-您甚至可以使用 Keyman Developer创建自己的自定义键盘。有了超过1000种语言的键盘,即使Windows没有,您也可以使用Keyman Desktop输入您的语言。


1
SIL International收购之后,Keyman软件将免费提供。这使它成为比以前更有趣的选择。(很少有人会购买软件来为个人使用的密钥做简单的映射。)
Jukka K. Korpela

0

我发现一个应用程序可以在Windows 7中执行几乎所有功能,并且在解锁台式机后可以正常工作。而且它很容易使用。

http://sourceforge.net/projects/hotkeyp/?source=typ_redirect

我发现的唯一缺点是,当台式机锁定时,例如从睡眠中回来并且计算机被锁定并且播放大声的音乐时,它将无法工作。多媒体键盘可以从那里静音。但是,有了这个程序,您需要先解锁。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.