如何让键盘像OSX System Wide一样工作?
我经常在两台计算机之间来回切换:
- OSX Snow Leopard
- Ubuntu 10.10
我希望能够让Ubuntu使用与OSX System Wide相同的键盘快捷键,仅适用于以下键盘序列(即我不想让Ctrl像Super一样)
-
超级+ C – >复制
-
Super + V – >粘贴
-
Super + T – >在我所在的任何浏览器中打开一个新选项卡。
-
超级+ W – >在我所在的任何浏览器中关闭选项卡。
简而言之,无论如何,我是否只将这些键盘序列映射到系统范围内的以下?
- 超级+ C – > Ctrl + C.
- Super + V – > Ctrl + V.
- Super + T – > Ctrl + T.
- 超级+ W – > Ctrl + W.
我知道有很多方法可以让我为vim和Firefox做这个,而且我肯定会特别针对大多数应用程序……但是我宁愿只做一次这样的事情让它在系统范围内工作 !
我正在使用标准PC键盘,即Ubuntu上的“Generic 105 key(intl)PC”。 我也在Mac mini上使用相同的键盘。
如果安装xautomation软件包,可以在System / Preferences / Keyboard Shortcuts / Custom中添加命令,如:
xte "keyup Meta_L" "keyup c" "keydown Control_L" "key c" "keyup Control_L"
并将其映射到Meta-C。
替代方案:
安装AutoKey(apt-get install autokey-gtk)并将短语设置为:
Phrase Text: +C (actually type out the + here) Paste Using: Keyboard Abbreviation: None Hotkey: +v Window Filter: None
对于Ubuntu 14或更新版本,您可以这样做:
sudo apt-get install gnome-tweak-tool
然后,查找调整工具>键入> Alt / Win键行为
并检查:Ctrl被映射到Win键(和通常的Ctrl键)
有一种方法可以将Ctrl映射到Win / Super键:
-
转到system-> preferences-> keyboard ,
-
打开标签布局 ,
-
单击选项… ,
-
打开Alt / Win键行为 ,
-
并选择控制映射到Win键
对于控制台,有一个论坛post如何在这里做。
有关更多挖掘检查一般Linux键盘HOWTO 在这里 。
问候
为了扩展cscarney的AutoKey提示 ,我正在开发我的AutoKey配置以在Ubuntu中实现所有这些(类似OS X的
,
,… Emacs-style
,
我的dotfile repo中有
,…)。
我不使用基本短语( 当前窗口过滤被破坏 ),但Python脚本,能够在Emacs,Eclipse,Vim,gnome-terminal等应用程序中禁用AutoKey …我不想弄乱现有的快捷方式。
您可以查看底部的README
,了解如何进行设置。
一旦您知道如何操作,这是一项简单的任务。
1)检查你的密钥的密钥。 在终端运行该程序。
xev的
在这个例子中,终端显示我的k的键码是“45”。
2)根据您的喜好创建此文件来更改它们:
gedit~ / .Xmodmap
它的内容应该如下所示:
keycode 64 = Alt_L Meta_L Alt_L Meta_L
keycode 108 = ISO_Level3_Shift NoSymbol ISO_Level3_Shift
(根据需要更改键码编号 – 查看步骤“1”)
Ilustration:
(观点:如果我想改变我的k,我应该使用“keycode 45”,如步骤“1”所示)。
4)注销并重新登录或重启或运行:
xmodmap~ / .Xmodmap
希望你喜欢 ;-)
第一
安装Guest Additions CD( Devices->Insert Guest Additions CD image
)。
激活剪贴板共享
然后重新启动后,在Virtualbox中转到Machine->Settings->General->Advanced
并进行设置
Shared Clipboard: Bidrectional
更改VirtualBox主机密钥
在Vitualbox/Preferences/Input/Virtual Machine/Host Key Combination
选择不同然后⌘
键映射 :
对于我的cmd/ctrl
映射添加英语(Macintosh)键盘似乎是最舒服的解决方案:)
转到Ubuntu Settings->Text Entry
(我猜在旧版本中它可能在键盘布局设置中)
在Input sources to use:
命中加(+)
添加English (Macintosh)
我在VirtualBox 5.0.4中使用Ubuntu 14.04.3 LTS 64位
上面的一些解决方案是旧的,不适用于Ubuntu 18.04。 这是一个更新的答案
-
如果未安装在系统中,请安装gnome-tweaks
sudo apt-get install gnome-tweaks
-
按左下角的“ 显示应用程序”打开应用程序列表。
-
请注意,这只会将WINDOWS键的行为更改为CMD键并保持CTRL键与之前相同(您将有2个CTRL键)。 如果您不喜欢这样,请跳过步骤4并转到步骤5
-
查找
Tweaks application --> Keyboard and Mouse --> Additional Layout options --> Alt/Win behavior --> Select Control is mapped to Win keys and the usual Ctrl Keys
。 -
如果您已完成步骤4,请跳过此步骤。此步骤将Windows键行为交换为Ctrl,反之亦然。 查找
Tweaks application --> Keyboard and Mouse --> Additional Layout options --> Ctrl Position --> Select Swap Left Win with Left Ctrl
-
我想念macOS的另一件事是能够用CMD + Tab切换窗口(在这种情况下是Windows + Tab)。 要实现此目的,请转到
Settings --> Keyboard --> Look for Switch Windows under navigation section --> Double Click it and press Windows+Tab when pop up appears
我没有手持Ubuntu(Mac在这里,Ubu在办公室),但我在那里使用Mac键盘,出于与你相同的原因,想要这样做。
首先要确保您的键盘安装为Mac键盘。 我想你可以在system-> preferences-> keyboard中改变它。 当您在那里时,其中一个选项卡会将您带到一个键映射页面,您可以在其中设置cmd键的工作方式。
就像我说的那样,我记不起来了 – 我可以在这里指出我屏幕上的位,但这不起作用,因为我不在那里。
如果你明天仍然陷入困境,我会再看一遍。
Autokeys确实对我有用。 现在win + c(v,x,a)就像我期望的那样围绕我的系统工作。
1.安装自动键
sudo apt install autokey-gtk
2.配置自动键
- 添加根文件夹,称之为MacKey等
- 你将在那里为ctrl-c,v,x和a创建4个脚本
- 分配给每个脚本热键super-c,super-v等
- 使用下面的代码填充脚本(替换其他组合的字母c)
winClass = window.get_active_class() keys = "
4A。 对于CmdZ,CmdA或CmdX使用更简单的脚本,如keyboard.send_keys("
3.将/ usr / bin / autokey-gtk添加到启动应用程序
4.在键盘设置中禁用win-A
通常,win-a会切换到概述。
5.可选,完全阻止win切换概述
可能你会想要删除它。 安装gnome-tweak-tool,转到键盘并重新绑定从桌面到概述的切换。 这适用于我的gnome ubuntu 16.04。