如何在OS X Lion中向按住字符选择器添加字符?


71

在OS X Lion中,对于像我这样需要多种语言书写的人来说,它有一个非常有用的功能,当您按住一个字母时,它会弹出一个包含附加字符的小菜单。

例如,当我按住字母时E,我得到:

Ë

例如,当我用法语写作时,这很棒。但是现在我需要用捷克语写一些东西。但是,捷克字母ě(看起来像带重音符号的弹出窗口中的第三个字母)不会出现在弹出窗口中。

有没有办法告诉OS X在这些弹出窗口中包括捷克语或其他附加字符?

注:我希望使用捷克键盘布局; 我发现切换每种语言的布局有些不切实际。


还应该提到的是,有人在9月份在cocoa-dev邮件列表上提出了这个问题:lists.apple.com/archives/cocoa-dev/2011/Sep/msg00098.html(不幸的是,没有任何回应!)
jtbandes

我想知道这是否是最近添加的(如10.7.3)?
Tom Gewecke 2012年

@TomGewecke是的,我很确定自10.1起就没有出现弹出式窗口……
NOTjust – user4304 2013年

Answers:


87

弹出窗口中包含的字符在/System/Library/Input\ Methods/PressAndHold.app/捆绑包内的属性列表中定义。

通过编辑/System/Library/Input\ Methods/PressAndHold.app/Contents/Resources/Keyboard-en.plist,注销和重新登录,我能够将à更改为y 。

(如果要复制粘贴,请注意“输入法”中的转义符)

<key>Roman-Accent-a</key>
<dict>
    <key>Direction</key>
    <string>right</string>
    <key>Keycaps</key>
    <string>a y á â ä æ ã å ā</string>
    <key>Strings</key>
    <string>a y á â ä æ ã å ā</string>
</dict>


21
您如何继续寻找这些隐藏的宝石?您是OS X工程师吗?;)
Mathias Bynens 2012年

12
它有点像这样。... i.stack.imgur.com/Kyx2v.png :)

4
我试图用它在2和3上按住以添加平方和立方字符,但我不知道plist的字典键名。我试过<key>2</key><key>Number-2</key><key>Roman-Accent-2</key>但这些都不奏效。某处是否有可能的键名列表?
jhabbott 2014年

4
看来该文件在El Capitan中不再可编辑...
Michiel de Mare

3
@MichieldeMare这是由于系统完整性保护(OS X v10.11 El Capitan中的一项新功能)所致,甚至root无法写入系统文件夹。如Wikipedia文章所述,可以将其禁用
2013年

18

我知道这有点晚了,但是我觉得这是一个重要的贡献:不仅可以按住键来输入特殊字符,您还可以输入文本字符串。例如,我配置了Keyboard-en.plist文件,因此当我按住“ p”键时,可以在我的名字(很长),姓氏和电子邮件地址(也很长)之间进行选择。我觉得这对某些人可能有用,所以它是这样的:

<key>Roman-Accent-p</key>
<dict>
    <key>Direction</key>
    <string>right</string>
    <key>Keycaps</key>
    <string>p firstname lastname email</string>
    <key>Strings</key>
    <string>p firstname lastname email</string>
</dict>

凉!出于好奇,如果您不介意分享,您的名字是什么?考虑到等待了多长时间,我想这只会给我带来好处,就像最多10到15个字符一样。我的名字很短,但是对于电子邮件来说可能很有用。
houbysoft

@houbysoft-你是对的。我想这对我的名字没有多大用处,因为我的长度只有8个字母,但对于我的每个电子邮件长度都超过25个字母的电子邮件,它非常有用。
pasawaya 2012年

顺便说一句,我刚刚意识到,您知道在iOS上是否可以实现这种功能吗?例如,考虑到iPhone上的小键盘,这对于那些设备可能非常有用。
houbysoft

@houbysoft-嗯,您可能听说过文本扩展器,可以对其进行配置,例如,当我键入“ addr”时,它将自动完成我的完整地址。我只是做了一个快速的谷歌搜索,看起来好像有一个iOS文本扩展器应用程序。您可以在这里找到它:< itunes.apple.com/us/app/textexpander/id326180690?mt=8 >
pasawaya 2012年

1
@OghmaOsiris-复制它,将其保存到您的桌面,进行所需的编辑,然后将其重命名为原始文件(例如“ Keyboard-en-duplicate.plist”->“ Keyboard-en.plist”)并删除原始文件文件。然后将重命名的副本放置在原始目录中。
pasawaya 2012年

5

如果您使用的是macOS Sierra,则需要查找其他地方进行更改。这是我的说明,灵感来自于OS X Accent Popup-George Garside中的Custom Characters

  1. 如何在Mac OS X El Capitan-MacWorld中关闭无根目录中所述,禁用系统完整性保护。

  2. 导航到/System/Library/Input Methods/PressAndHold.app/Contents/PlugIns/PAH_Extension.appex/Contents/Resources/Finder中。要快速进行操作,请按⇧⌘G并粘贴字符串。

  3. 查找您的键盘plist文件。如果您使用的是英语版式,那么您将要查看,Keyboard-en.plist如果您使用的是德国版式,则它将为Keyboard-de.plist。根据您的键盘语言,它也可能具有其他名称。

  4. ⌘D备份此文件。将您制作的副本重命名为名称带有“ backup”的内容。

  5. 打开原始文件(名称中没有备份),然后编辑要输入的字符。然后,保存它。

  6. 按照与步骤1相同的页面中的详细说明启用系统完整性保护。


3

我的解决方案(针对捷克):

  1. 备份/System/Library/Input Methods/PressAndHold.app/Contents/Resources/Keyboard-en.plist档案
  2. 复制/System/Library/Input Methods/PressAndHold.app/Contents/Resources/Keyboard-cs.plist并将其重命名为/System/Library/Input Methods/PressAndHold.app/Contents/Resources/Keyboard-en.plist
  3. 删除新的无用字符 /System/Library/Input Methods/PressAndHold.app/Contents/Resources/Keyboard-en.plist

好主意,我只能在另一台国际键盘自动柜员机之间切换,这几乎没有必要!(更不用说布局让我一直在用数字打字…)
NOTjust – user4304 2013年

3

使用此线程中的信息,我在MacRumors上回答了相同的问题。

我专门为中文拼音输入制作了一个自定义.plist文件。因此,我想链接到为中文语音创建的plist。您可以在这里下载


-1

我知道它可以在OS X 10.11上工作!

看起来他们将位置更改为:/ System / Library / Input Methods / PressAndHold.app

—>右键单击+显示包装内容

/Contents/PlugIns/PAH_Extension.appex

—>右键单击+显示包装内容

/Contents/Resources/Keyboard-en.plist(或您使用的任何键盘)。

您可以在其中单击下拉箭头,然后双击“键帽”旁边的并将键更改为所需的键。 在此处输入图片说明

在此处输入图片说明

瞧,行得通!


您确定是在谈论10.11 El Capitan吗?在我的系统中,.plist文件的位置不是您所说的,而是原始答案中的位置。如果您真的在谈论10.12 Sierra,则应该删除它,因为几个月前Skeleton bow已经完全回答了。
Tom Gewecke
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.