0

I've recently seen several mentions of "the popup menu of accented characters produced by press/hold" that seem to say it exists in macOS.

It doesn't work with some input methods, unfortunately. My favorite is "Unicode Hex Input" and it doesn't work there.

I have in the past successfully changed input methods, but that was before this feature existed. Is there a way to dump an input method to a human-editable format and copy/imitate how this pop-up trick is done?

WGroleau
  • 4,869
  • 7
  • 44
  • 77
  • 2
  • Thanks. I'll have to study that a bit. At first glance, it tells how to ADD characters to a pop-up. I want to add a pop-up to an IM that doesn't have any. – WGroleau Feb 11 '20 at 17:02
  • Because I use a lot of symbols and characters and it is easier to remember the hex codes than to switch between input methods (and then have extra editing because I forget to switch back). If I could add pop-ups to it and customize them, I'd have the best of both worlds. Some of them, I haven't found on another IM. – WGroleau Feb 11 '20 at 19:08
  • I had that app long ago. Had some bugs that kept me from using it, but I was able to edit the XML directly. I'll have to check whether Ukelele supports the new hold-for-popup feature. – WGroleau Feb 11 '20 at 20:30
  • Ukulele apparently doesn't support the pop-up, just the older dead-key approach. I'm still looking at the "Custom Characters" suggestion. – WGroleau Feb 12 '20 at 02:08
  • Well, that won’t help me add it to one that doesn’t. – WGroleau Feb 12 '20 at 05:32
  • I'm suggesting you add the characters you need to one that does, and move away from memorizing hex codes for them. – Tom Gewecke Feb 12 '20 at 13:00
  • There are too many for that. – WGroleau Feb 12 '20 at 17:16
  • Interesting! You can have 9 in each popup on each key, plus 90 or so characters using option and option plus shift. Dead keys let you create a huge additional number if you like. – Tom Gewecke Feb 12 '20 at 17:47
  • Ah, 90 is more than enough! – WGroleau Feb 12 '20 at 17:53
  • But the Ukulele manual says twenty is the limit. – WGroleau Feb 12 '20 at 19:01
  • The 20 character limit is on the length of a text that you can have a single key press produce. Even without popups, you can customize the single character output of every normal, shift, option, and option plus shift key. Any key can become a dead key, which then triggers special output for a large number of other keys. And you can have multilevel dead keys if you like. – Tom Gewecke Feb 12 '20 at 22:38

1 Answers1

1

With Ukelele I was able to make a copy of the Unicode Hex input source and add the "en" language to the bundle format. This seems to have created a version of Unicode Hex with a working popup, as shown below. Modifying the popup would be a separate operation with the pressandhold.app.

The image shows the input source used both for Option 1234 (= U+1234, Ethiopic SEE) and the press/hold letter a. I have not tested it in more detail. A copy can be obtained here .

enter image description here

Tom Gewecke
  • 20,864
  • That sounds like the direction I was fiddling with. Ukelele has a merging feature? I’m still reading the very large manual … – WGroleau Feb 12 '20 at 17:18
  • I don't know what you mean by merging. It has feature to duplicate existing keyboards. The popup menu contained inside the pressandhold.app can apparently be accessed by using the bundle format and giving the keyboard an appropriate language parameter. Ukelele manual section 5.6 – Tom Gewecke Feb 12 '20 at 17:40
  • I see that page fourteen in the manual has “support for press-and-hold” which wasn’t mentioned in the tutorial. – WGroleau Feb 12 '20 at 17:52
  • Taking this as the answer, though I intend to finish reading the manual and trying to do it myself. – WGroleau Feb 12 '20 at 18:01
  • If anyone else is interested, the Ukelele manual has an appendix with links to a lot of related stuff. Valuable for this question is http://belkadan.com/blog/2012/04/Keyboard-Adventures/ – WGroleau Feb 12 '20 at 19:02
  • For what it's worth: Tom's method does add the pop-ups to Unicode Text Input, and I can edit the .plist(s) defining the pop-up. Unfortunately, they MUST be edited in place with SIP disabled and the .plist directory mounted writable. That means two reboots for every edit (and two more if a mistake was made). Irritating. – WGroleau Feb 15 '20 at 23:48
  • @WGroleau I edit these things in place from another macos installed on a separate volume. Still 2 reboots, but no need to play with sip or read/write. Easier? – Tom Gewecke Feb 16 '20 at 02:25
  • I do have a pre-SIP iMac. Catalina allows you to mount its read-only volume on another as read-write? I’ll have to do some study on that. I’m good at NFS, but that was decades ago. SMB, I’ve done, but not often. – WGroleau Feb 16 '20 at 02:44
  • Well, it seems what I should do is figure out all the changes I want to make, and try to do them in one session. I do not have to reboot or even log out to see the results of any change. so I can change and revert (if necessary) in a single session. – WGroleau Feb 16 '20 at 06:12
  • Odd that this method has removed a few possible outputs from the original Unicode He Input. That's off-topic for Apple.SE, so → https://groups.google.com/forum/#!topic/ukelele-users/aUWW_QFLA6s – WGroleau Feb 17 '20 at 22:44
  • @WGroleau I put a new copy at the link which hopefully fixes that problem – Tom Gewecke Feb 18 '20 at 21:18
  • Fixes the missing glyphs problem? What did you do differently? Or, actually, maybe that would fit the Ukulele forum better than here. – WGroleau Feb 18 '20 at 21:23
  • I just used the old xml provided in that forum – Tom Gewecke Feb 18 '20 at 22:26
  • Unfortunately, something (probably 10.15.4 upgrade) disabled this and several other text input features. https://apple.stackexchange.com/questions/386730/unrequested-disabling-of-most-text-input-features – WGroleau Apr 05 '20 at 21:46