Ukelele生成的自定义键盘布局在Lion中不起作用?


8

我在Snow Leopard中使用Ukelele(http://scripts.sil.org/ukelele)创建了一个自定义键盘布局(想法是使用Alt键生成斯堪的纳维亚字母,否则采用美国标准布局)。升级后,旧的安装(到〜/ Library / Keyboard Layouts)布局不起作用。

Ukelele在Lion中似乎可以正常工作,但是我是否将生成的键盘布局放置在捆绑包或单个文件中,还是将其保存为“ / Library / Keyboard Layouts”或“〜/ Library / Keyboard Layouts”并不重要。

帮帮我?

编辑:

@Sergio,我无法在“输入源”中选择布局。我尝试过的一个键盘布局文件:http ://semeai.org/~sjl/us-scands.keylayout

顺便说一句BTW离题:我不知道我是否会失明或其他事情,但是我似乎无法在Finder中找到Library目录。我需要从主目录来回复制内容。

更新:

我一直在尝试在我的计算机上完成这项工作了几个小时,而我只是想尝试从网络中随机布局;http://colemak.com/Mac是第一个受到关注的计算机。我做了与布局相同的操作,将其保存在“库”下,并在“输入源”下显示。我的布局仍然没有。我将尝试从头开始创建一个布局,看看是否有帮助。顺便说一句,Ukelele中的“来自当前输入源的新消息”显然在Lion中被打破了。

更新2011/08/15:

@汤姆:

复制了您的键盘布局(它自然地出现在了我的垃圾文件夹中):

midgard (01:55) >ls -l ~/Library/Keyboard\ Layouts/MongolianQWERTY.keylayout
-rw-r--r--@ 1 sjl  staff  44536 Mar 13  2008 /Users/sjl/Library/Keyboard Layouts/MongolianQWERTY.keylayout

注销,登录后,在输入源中没有显示(我正在“毛利人”和“缅甸-QWERTY”之间密切关注)。

我还卸载了一堆向system.log发送可疑消息的软件和插件,但并没有帮助。

更新2011/08/16:

我创建了一个测试帐户,然后,布局非常适合它。此外,该帐户也不会显示首选项中的错误。当用我自己的帐户尝试此操作时,控制台日志中没有带有建议关键字的错误(不过,我似乎无法找到console.log文件)。

于2011/08/16更新:

Nuking库/缓存(和重新记录)没有帮助。

更新2011/08/17:

我做了

% find Library -name "*.plist" -exec mv {} {}.renamed \;

并重新启动,但没有帮助。我用

% for file in `find Library -name "*.plist.renamed"`; \
  do mv "$file" "${file//.renamed/}"; done

附录:我还按照http://www.askdavetaylor.com/can_i_check_my_plist_files_in_mac_os_x_for_problems.html中所述使用plutil -s浏览了所有.plist文件。出现了一些问题,但是在非常不相关的应用程序中。

2011/09/10更新:

我付出了更多的努力,并使用另一个帐户将我的整个图书馆移走了,用我自己的帐户登录并观察到仍然无法使用。我已经将该布局复制到/ Library / Keyboard Layouts,从那里可以用于测试帐户,但不能用于我自己的账户。另外,如果我从所有地方删除所有自定义键盘布局文件,则可以在“输入源”菜单中选择“字符查看器”和“键盘查看器”应用,并在菜单栏中的“国际”菜单下显示它们。当我将键盘布局复制到“库”(家庭或系统)后,查看器将从菜单和“输入源”中消失。

有什么想法可以从系统中获取更多信息吗?我在启动时尝试使用Command-V进行详细启动,但没有提供有关此问题的任何其他信息。

解决方案:

http://support.apple.com/kb/TS1896?viewlocale=zh_CN改编为Lion:

sudo rm /System/Library/Caches/com.apple.IntlDataCache*
sudo find /var/ -name "*IntlDataCache*" -exec rm {} \;

重新开始。


我在Lion中使用Ukelele制作的布局键入此内容,但是该布局是在Snow Leopard上制作的。因此,它可能不是特定于自定义布局的内容,而是特定于您的自定义内容。
塞尔吉奥·阿科斯塔

您可以使用“输入”菜单选择新的布局,但是按键没有输入正确的字符吗?还是布局只是显示为已安装?
塞尔吉奥·阿科斯塔

如果您将链接发布到布局,则可以在我的机器上对其进行测试。
塞尔吉奥·阿科斯塔

我认为标准的美国布局已经通过alt键无需修改即可生成斯堪的纳维亚语言所需的字符。如果您发送布局,我也愿意对其进行测试(tom在bluesky dot org)。
Tom Gewecke 2011年

仅供参考:我编辑了案例,以包含指向我尝试过的键盘布局文件的链接。
萨米·莱蒂宁

Answers:


2

尝试在键盘查看器和字符查看器以前在10.5中消失时Apple发布的此修复程序:

http://support.apple.com/kb/TS1896?viewlocale=zh_CN


1
而不是sudo rm /var/folders/*/*/-Caches-/com.apple.IntlDataCache*我使用sudo find /var/ -name "*IntlDataCache*" -exec rm {} \;,因为旧的glob模式不匹配任何内容。我使用了更广泛的模式,但它仅与我在此处链接的匹配项匹配。
Sami Lehtinen

无论如何,使用链接中的建议为我解决了此问题。再次感谢!
萨米·莱蒂宁

2

您给链接提供的布局对我来说很好用。您确定文件副本仅以.keylayout结尾,而不是以.keylayout.xml或其他结尾吗?安装完成后,您已完成注销/登录,对吗?


我使用cp命令将其复制到地方。我看到文件位于ls。我将仅尝试使用该keylayout文件并重新启动计算机,实验后在Layouts目录中有一些问题。(在尝试解决此问题时,我已重新记录并重新启动了sevelar时间)
Sami Lehtinen

从〜/ Library和Library下删除了所有其他键盘布局文件。ls输出:midgard (16:59) >ls -l ~/Library/Keyboard\ Layouts total 96 -rw-r--r-- 1 sjl staff 48265 Aug 13 16:47 us-scands.keylayout 。重新启动后,布局仍不显示在“输入源”下。
Sami Lehtinen

我还将布局放到了库文件夹(〜/ Library / Keyboard \ Layouts)中,它在“输入源”下显示为“ US with scands // sjl”,但我无法键入:我按了按键,没有任何反应。这是您遇到的同样的问题吗?
塞尔吉奥·阿科斯塔

不,我根本不在输入源中看到它。
萨米·莱蒂宁

顺便说一句,此布局是为铝质无线键盘设计的。
Sami Lehtinen

2

在以下情况下,您的布局对我有用:

  1. 下载了您提供的文件。(是我的bash提示)

    ~/Downloads  
    ⌘  wget http://semeai.org/~sjl/us-scands.keylayout
    --2011-08-13 23:44:27--  http://semeai.org/~sjl/us-scands.keylayout
    Resolving semeai.org... 217.30.177.5
    Connecting to semeai.org|217.30.177.5|:80... connected.
    HTTP request sent, awaiting response... 200 OK
    Length: 48265 (47K) [text/plain]
    Saving to: `us-scands.keylayout'
    
    100%[======================================>] 48,265      32.1K/s   in 1.5s    
    
    2011-08-13 23:44:29 (32.1 KB/s) - `us-scands.keylayout' saved [48265/48265]
    
    ~/Downloads  
    ⌘  ls
    us-scands.keylayout
    
    ~/Downloads  
    ⌘  md5 us-scands.keylayout 
    MD5 (us-scands.keylayout) = 9197c43c426151cd03f524a766107b49
    
  2. 将其放入~/Library/Keyboard Layouts文件夹中

    ~/Downloads  
    ⌘  mv us-scands.keylayout ~/Library/Keyboard\ Layouts/
    

    此时,它已经在输入源中列出:

  3. 在系统偏好设置的“语言和文本偏好设置”窗格中的“输入源”选项卡上的输入源列表中选择它

列出的布局

  1. 注销并再次登录。
  2. 在输入菜单上将其选择为当前布局。

您确定您没有丢失任何这些步骤吗?

我的规格:

  • 15英寸MacBook Pro,2011年初(雷电)。
  • Mac OS X 10.7已从Snow Leopard升级(在升级到Lion之前先进行干净的Snow Leopard安装)。
  • 西班牙国际内置键盘。我从未在此Mac上使用外接键盘。

根据系统概述:

        Apple Internal Keyboard / Trackpad:

          Product ID: 0x0246
          Vendor ID: 0x05ac  (Apple Inc.)
          Version: 1.08
          Speed: Up to 12 Mb/sec
          Manufacturer: Apple Inc.
          Location ID: 0xfa120000 / 5

ls输出:midgard (21:23) >ls -l ~/Library/Keyboard\ Layouts total 96 -rw-r--r-- 1 sjl staff 48265 Aug 13 13:33 us-scands.keylayout ,重新启动,不在“输入源”列表中显示。我想您会在其他美国键盘变体中看到它吗?
萨米·莱蒂宁

我什wget至从网页上下载文件,以确保它与您使用的版本相同。我已经通过删除您的评论来验证了这条路。
Sami Lehtinen

我会为您的答案+1,但还没有电话代表:)无论如何,我已经完全按照您的描述进行了操作,并且它从未显示在我的输入源中。不在重新登录或重新启动之前,也不在之后。
萨米·莱蒂宁

您的键盘是什么类型?其他事情似乎不起作用,例如,我似乎无法保持“在菜单栏中显示键盘和字符查看器”设置(在“系统偏好设置”->“键盘”下)。
Sami Lehtinen

我还尝试了使用正常的USB +键盘,并关闭了无线键盘,但并没有帮助。
萨米·莱蒂宁

2

根据苹果公司的技术说明TN2056

安装后,如果在编译时未遇到任何错误,XML键盘将在“国际首选项”的“输入菜单”窗格中变为可用。如果文件中有错误,则错误消息将被写入console.log,前缀为“ uchr XML编译器”。如果错误是XML语法错误,则会在文件中给出发生错误的行。通常,只诊断遇到的第一个错误,然后中止解析。

您是否尝试过在应用程序/实用工具中打开控制台,并在安装键盘布局后或登录后查看是否包含“ uchr XML编译器”的消息?


我确实使用过Console,但没有搜索该特定错误。我今天来看一下。
Sami Lehtinen

0

我的问题是,新的自定义键盘布局可以在许多应用程序中使用-Spotlight,Sublime Text,Terminal等-但在许多内置应用程序(例如TextEdit或Mail)中却无法使用。原始问题的最后一点终于为我解决了这个问题:

sudo rm /System/Library/Caches/com.apple.IntlDataCache*
sudo find /var/ -name "*IntlDataCache*" -exec rm {} \;

-1

我爱乌克丽丽。在狮子最后的Macbook Pro中,无法正常工作。扩展名.keylayout似乎不起作用。它最终与捆绑软件一起使用,您可以通过保存捆绑软件来获得ukelele的价值。然后必须使用选项键将其复制到库/键盘布局中,否则将成为别名。希望这可以帮助


-1

使用较旧的稳定Ukelele版本1.8.4。甚至不需要重启。

我有Mac 10.10.5(Yosemite)。即使我尝试了各个论坛的所有可能建议,Ukelele当前版本也无法正常工作。最后,我卸载了当前版本的Ukelele,并安装了较旧的稳定版本1.8.4。事情就像魔术一样运作。无需重新启动。您只需将新布局保存在“库/键盘布局”中。然后打开键盘首选项输入源。通过单击+添加。您应该在“其他”中看到新的布局。


嗨-感谢您的回答。如果您对其进行编辑以使它不大写,那将很有帮助-有些人认为这类似于大喊大叫。这也将使您的帖子更易于阅读。
苏格兰
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.