我最近换用了 OS X,发现系统“俄语拼音”布局不令人满意(这不是我习惯的布局)。我该如何创建自定义布局?
我读过尤克里里,但我创建并复制的布局Library/Keyboard Layouts
没有显示在“键盘偏好设置”中。
我使用的是 OS X 10.9 Mavericks。我在网上搜索了解决方案,但大多数都过时了。
答案1
- 打开 Ukelele,选择“文件”>“从当前输入源新建”。在新版本的 Ukelele 中,它还会自动为键盘布局分配一个新 ID。
- 编辑键盘布局。
- 将键盘布局保存到某个临时位置,例如桌面。(直接保存到桌面会
/Library/Keyboard Layouts/
失败,且不会发出任何提示。)您可以使用这两种格式中的任意一种。按住按键时显示的 iOS 风格弹出窗口仅适用于捆绑格式。但单个 XML 文件(默认)格式更简单。使用 XML 时,请确保文件以扩展名保存.keylayout
。 - 将键盘布局移至。无法在密码对话框或登录窗口中选择
/Library/Keyboard Layouts/
中的键盘布局。~/Library/Keyboard Layouts/
- 重启电脑。注销并重新登录是不够的。
- 从系统偏好设置中启用新的键盘布局。
要应用键盘布局更改,请运行sudo touch /Library/Keyboard\ Layouts/
并重新启动。
看https://web.archive.org/web/20151030180252/http://osxnotes.net/keylayout-files-and-ukelele.html了解更多信息。
更新(2015 年 10 月):Ukelele 有新版本(3.0.0),其中包含从应用程序内安装布局的选项。我仍然需要进入系统偏好设置来激活它,但根本不需要通过命令行。
答案2
创建键盘布局文件
我也用过尤克里里生成键盘布局。然后您可以导出.bundle
或.keylayout
文件并将其复制到/Library/Keyboard Layouts
。
sudo cp KeyboardLayout.keylayout /Library/Keyboard\ Layouts/
如果您希望将键盘图标捆绑在一个文件中,Ukelele 提供了导出到 Bundle 的选项。因此在这种情况下,请复制文件.bundle
。或者,您可以将图标分开,然后以相同的名称将它们复制到同一个文件夹中。
sudo cp KeyboardLayout.icns /Library/Keyboard\ Layouts/
重启后,您可以在系统偏好设置->键盘->输入源菜单中添加输入源。如果您在 Ukelele 中为键盘添加了语言,则可能在其他或语言下可用。
如何创建 .icns 文件
mkdir layout.iconset
然后将以下 PNG 添加到文件夹中:
# All sizes necessary
icon_16x16.png
[email protected]
icon_32x32.png
[email protected]
icon_128x128.png
[email protected]
icon_256x256.png
[email protected]
icon_512x512.png
[email protected]
您不需要所有这些,但这是官方列表。有些像素数是多余的,但可以指示密度。
iconutil --convert icns --output layout.icns layout.iconset/
GitHub 上的示例项目
我的乌克兰语-俄语GitHub 上的项目是一个正在 Mavericks 10.9.5 上运行的演示。
答案3
答案4
使用较旧的稳定 Ukelele 版本 1.8.4...无需重启
我有 OS X 10.10.5 (Yosemite)。即使我尝试了其他几个建议,Ukelele 的当前版本仍然无法工作。最后,我卸载了当前版本并安装了较旧的稳定版本 (1.8.4)。之后它工作正常。无需重启。只需在 Library/Keyboard Layouts 中保存新布局即可。然后打开键盘偏好设置、输入源。单击 添加+
,您应该会在“其他”中看到新布局。