Karabiner recently added that ālockingā because some piece of poorly-behavior software (I canāt remember which one now) kept screwing up Karabiner installations. I donāt love their choice to implement that degree of lock-down, but I understand it.
All kexts should give you pause. Thereās a reason that Apple is making them increasingly difficult to use. But of all the ones out there not to worry about, I think Karabiner is probably the most safe / trusted.
I support that recommendation. When itās only about key mapping (regular keys and dead keys, not modifier keys), Ukelele is the way to go.
It has a bit of a learning curve but it comes with an excellent tutorial and manual, which also covers all macOS keyboard-layout basics.
Years ago Iāve written my custom layout with Ukelele, which Iām still using today (with some minor modifications from time to time).
Concerning Karabiner:
Not really safety-related, but probably related to the fact that it works on pretty low level:
In the last decade I had installed Karabiner a couple of times. But I always had to remove it because of issues that were definitely related to Karabiner:
The first one was a conflict it produced with key repeat.
Another one was a weird issue with window scrolling that only appeared after at least 30 minus or so after reboot.
This was before Elements. So, maybe itās better now. Iāll give it again a try, somewhere in the future.
Also the majority of people seem to have no issues at all.
In any case, the good thing is that Karabiner (at least pre-Elements) comes with a working uninstaller. So, if you run into any issues, itās not an issue to get rid of it.
I have seen Karabiner used - apparently quite successfully - in the MacSparky videos on KM as a way to free up additional combinations. And others mention it here as a bit of a standard tool.
I do keep an ultra-clean machine, so am nervous about the kind of conditions you ran into Tom - especially apparently random, or 'timed misbehaviour'
All I need to do, really, is have a good 20/two dozen or so keys/key combinations which are unused in any other application for use as KM Triggers.
In particular, I do often type diacritics, top-bit set characters such as Ā£ and ā.
I thought that I could copy permanently these into KM clipboards; so that I can paste them with a single Trigger whenever I need to - thereby not having to enter the extra keystrokes to invoke the OS' Emoji and Symbols palette/popup.
I think I'm right in assuming that if in KM I make those keystrokes which might clash with existing assignments available only in certain applications by setting such a preference in KM Macro Group by Macro Group, I won't run into any conflicts.
But since there must be easily 20-25 such diacritics and other pasted strings/KM Actions which I want to be available throughout all applications and the Finder, the possibility of mapping to such a 'hyper key' as Caps Lock (as Karabiner seems to be able to do, am I right?) is an attractive one.
So my priorities would be:
"first do no harm"
make more keys with modifiers available across potentially many applications and the Finder.
I am not an expert, can't even use terminal and I downloaded Karabiner with no problems. I only use it for changing the caps key to a "Hyper key". One use and that fully justifies the app for me.
Did you try to make typed triggers for those symbols? I am sure you can insert them into a text expansion using the 'paste text' or even 'type text' action and trigger with a string. I had a few logic symbols done that way at one time. Greek phi and psi, they worked fine: I am not sure if I had some 'style' issues though. I used 'xpi' for the trigger to give one example. I don't know whether every symbol on the OS palette can be properly inserted: I assume they can? You can also set 'paste text' to only fire after a space and that is useful, I assume I could have used "xp" in that case for phi. Whether that would be quicker than a modifier key + single letter is interesting. I found it so. I include a screen shot of one I still have on Keyboard Maestro, it gives me the prime symbol without having to fuss around. It seems analogous to your problem?
I am not sure either if you can combine a modifier key with a string to trigger text expansions, which is effectively what you are doing. You would only use them in contexts which accept text obviously.
I will not use Karabiner (or any similarly low-level soft) unless I really feel the need to do so. An Hyperkey is certainly not a reason. If you run out of hotkeys, you should rethink your concept of how you are triggering your stuff.
As mentioned above, this is just my biased (of course) opinion, because I had 100% negative experience with Karabiner. YMMV. (No safety concerns though, but the soft was only for max. 7 days on my computer, so I canāt really tell about safety-relevant things either.)
And Iām not a āsystem-ultra-cleanā guy, just a normal āsystem-clean-and-get-rid-of-any-app-that-has-āCleanā-in-its-nameā guy.
I highly recommend to try Karabiner-Elements. You can always uninstall it.
If you just want to have easy access to some glyphsyou use very often, then go Ukulele, as linked above. (Your standard US keyboard layout is full of glyphs you never use; just use that space!)
Most comfortable and most safe (since Ukelele just creates standard macOS keyboard layouts, no low-level or kext stuff involved). This is a no-brainer.
For string insertions go with LaunchBar, Typinator, or KM; in that order.
If you want corrections, or very fine-grained substitution options, then Typinator.
Of course, if you want to make your keyboard bahave like an omnipresent vim input-scheme, Karabiner is your only choice. Tap a modifier and your ājā works as it should.
PS:
And I like the Vi(m) input method more than I ever ever liked emacs or any macOS-adopted emacs shortcuts. But Karabiner is not the real thing (for that context). If it would come at no cost, then OK, but I doubt this is possible.
Yes, that was exactly how I was thinking of using it. In fact, I (also) re-installed KeyCue, because that shows me all current/active mappings in any one application/the Finder; and I'm leaning towards making use of the remaining (unmapped) keys wherever and whenever I can instead of adding complexity.
I did, Yes. Although it was different from yours, and really is my next question
My macros each use a hot key to trigger them (e.g. ctrl+Option+Cmnd+F for the flat symbol (music): ā).
The macro's Action in each case then pastes the ascii character in question (e.g. that ā) from a named clipboard.
Which means many clipboards; I suspect that's not considered best practice?
But for something like the flat (ā) there really is no other way of doing it - except, perhaps, I suppose 'f' with preceding and succeeding spaces!
Very much so, thank you. I'm just wary of creating and so naming multiple dedicated clipboards. Should I be?
This could be done more easily with something like TextExpander, of course. But I want to try and stick with KM
Agreed. I accept your reasoning. Because - as you say:
Again, that was what I was thinking - especially application by single application. For system-wide triggers, I have begin a spreadsheet which will remind me of my more obscure combinations, until I have learnt them.
I looked at it after that post (thanks) and decided that having multiple keyboard layouts was (also) overkill.
I looked at Typinator again (would you recommend it over Text Expander?). Definitely comprehensive.
Maybe I'm mistaken in wanting to have as few apps overlapping as I can?
Ever had a look on LaunchBar? It provides two crucial things:
Typed string trigger with auto-learning, and the auto-learning is really good, which is what makes the difference
Single-Modifier-Tap launchers for all major functions (search, snippets, send)
Many folks miss out on the second point: LB becomes really powerful only once you start launching its functions via Modifier Taps. (Of course, you could also press something like ā„Space, but why should you? That you could also do with Alfred or KM.)
Calling my snippet via Ctrl<two letters> isnāt really much slower than typing <trigger char><two letters> in Typinator or KM.
I shortly explained it here:
But there are many other thraeds on this forum about LB vs KM vs Alfred vs whatnot.
Anyway, with LB I donāt have any hotkey problems at all. And if you are really into static things, you can still set a fixed abbreviation for anything.
You can switch keyboard layouts with one keystroke. The OS even has a special shortcut for that, previous or next. (See Shortcuts in Prefs)
Already long before Text Expanderās subscription price model I preferred Typinator. It was always hazzle-free and quick. IIRC, Text Expander always tended to have different issues, but donāt ask me what it was. Maybe others have better memory than me.
So, the change of Text Expander to the subscription price model was never an issue for me. They tried to promote their descending software to first level via subscription. This was only a thing for people who were engaged with Text Expander, because e.g. they had a huge library, or for people who thought Text Expander was the best (or even only) thing.
In normal-day-usage I donāt use either, since LBās Ctrl-Tap to invoke my snippets is enough for me. Sometimes I have Typinator running when Iām on a text with many repeating terms. (I work as technical writer/editor, user manuals and such.) But thatās text-based.
For correction, the OSās auto correction isnāt too bad, though sometimes aggravating. But compare it with MS-Wordās correction. Word, at least in German, is insisting on plain wrong things. It is ridiculous compared to Appleās (still very improvable) auto-correction.
BTW, Typinator also comes with correction dictionaries, just in case.
No. I think this is a constant challenge that has been imposed on us. Comparable to finding the meaning of life, or such. Probably more important.
I did look at it when I decided that Alfred was more what I wanted.
But I can also see exactly why you recommend it in this case: those two distinct advantages.
Yes, I can see what you mean. I think - with arthritic fingers and especially thumbs - it's less a question of speed than true flexibility.
And trying to 'centralise' on as few apps as possible.
But I shall be taking another look for sure! Thanks.
Clear. I can also see the guts of ways to make KM expand text in your example.
That's also really crucial and distinguishes LB from the others.
Having been a Mac user for 30+ years, I've tended to stay away from apps - which LB seems to be: I may be totally wrong, please say if you think I am - which 'patch' the Finderā¦ e.g. quick ways to launch Numbers (as in their introductory video).
Or am I seeing a problem where none exists?
== Ukelele ==
Which would mean that the workflow would require three (sets of) keypresses, wouldn't it:
invoke the preferred/desired keyboard layout in Ukelele
press the desired key
return to the default keyboard layout
?
I can imagine; and suppose the only way to be sure is to try it. They too have a 30 day policy .
Which would work for me in most applications, wouldn't itā¦ Mail, TextEdit, BBEdit etc.
But again, one of the reasons I revived KM was to have every such tool in one place.
Thanks to you, I'm going to take a closer look at all these options, now!
I am pretty convinced that I shall soon be able to do everything I want to one way or another.
I don't see why you fetch from a named clipboard every time you enter a symbol? Why not just put it in a "paste text" action? If you can get it onto a clipboard you should be able to get it into a "paste text" action. If you use that, as in my example, I don't think you create a named clipboard. I have several like that and only one named clipboard I can find in my preferences for another macro altogether.
There is a LaTeX package which can do a lot of the symbols you use, I think probably renders into music notation. Here is an example of some of the markup used, I found it a lot more intuitive than some accounts suggest. You can't make mistakes though, LaTeX is unforgiving in a way most apps and tools are not any more. But the results are beautiful.
I don't always streamline things on KM. I don't have a big macro collection, in fact it is quite small, so it doesn't matter if I use a bit more data space than I really need.
Maybe I haven't quite understood your issue? I know some key combinations can feel akward under one's fingers.
I will also say I use the CONFLICT PALETTE if I need, I am not afraid of it; so the same keystrokes bring up a palette and, if you are careful, one further keystroke will pick out one of them quite easily and quickly: I think it is neglected aspect of Keyboard Maestro. Partly because it lacks a kind of neatness or elegance. I think it actually does and is a neat solution to the remembering keystrokes problem and other things. If you create a hyper key, as everyone calls it, you will be delighted I think; I really do.
I use KeyCue because it shows Keyboard Maestro shortcuts and is the main reason I use Keyboard Maestro for expansions, snippets whatever: I found TextExpander cumbersome as I could never learn or call up quickly the shortcuts. So great minds think alike there @MarkSealey !
I use LaTeX now and only need for my own private notes, or initial write ups, some of the symbols, I found formatting even with power tools was never as good as LaTeX. I am developing a series of Keyboard Maestro macros for it. I don't know but I wouldn't be surprised if the flat symbol was doable in LaTeX on some package. I couldn't see anything offhand but that means nothing.
In reference to what @Tom said, I would really consider Launch Bar but if you already have Alfred, well maybe that is enough as you say. I rely on it now.
Iām pretty sure you find space here for 20 or 25 of your custom characters without sacrificing the usability of the layout for every-day purposes. ā Without even counting the endless possibilities with dead keys and multilevel dead keysā¦
All the characters you donāt need you can replace with Ukelele by the characters of your choice. You donāt have to touch the 26 letters or other chars that are important.
No need to switch the layout.
You only need to switch the layout if you would create a new layout full of custom characters (e.g. without any letters left). Sorry for the misunderstanding.
As mentioned in another post, Iām using my custom layout since years ā in every-day context. This one. Have a look at it to get an idea what you can do.
Another misunderstanding, sorry.
Ukelele is a keyboard layout editor. You use it to create macOS keyboard layouts.
Once created, the layout is standalone. Like any other keyboard layout that ships with your OS, for example Spanish or French.
The keyboard layout is a document, used by the OS. You can edit or create that document with Ukelele. Once created, Ukelele is not required to use the layout. The OS uses it.
Thanks. I'll do as you suggest. It was just my sense of tidiness - to have clipboards adapted to the different purposes!
If that's over-complicated it, I'll change it happilyā¦ in fact I'm still getting to grips with KM's multiple clipboards.
Why does KM make it possible to have more than one? When would you use (other) (named) clipboards, please?
Understood. Thanks. I also use MathType, which does too.
It's more a question of making things so that I'll actually use them; making them either easy to remember and/or being able to list them until I know them; making them accessible; and - ideally making them all originate in one placeā¦ like KM.
But you and Tom have kindly opened my eyes to other possibilities!
Yes. Good point. And then - you'd have to have 26 conflicts for a signal keypress, the distinguishing (second) letter, to make that fail.
Yes; I like that too.
So +1 for Typinator.
No; again you've kindly given very useful suggestions: I shall definitely look at it again - tomorrow!
As I say, my chief reservation is stability. If I am 100% sure it doesn't compromise any other part of an already highly complex OS, I can well believe it has its part to play too. Thanks again!
I see. Yes! I can imagine there are enough for a good 20 Triggers, which would work very well.
So are you saying that I'd carefully build one new, all-encompassing Ukelele layout and use it with those dead keys mapped all the time, Tom? As a default? Just a more efficient and comprehensive one because I'd be mapping unused keys to, for instance, both KM Triggers and conceivably text expansions?
No problem!
No. My fault!
But if I did want to create and use another layout - albeit conventionally within the OS - then I would have to invoke Input Sources (menu bar etc); just as I would for, say, a Spanish layout, wouldn't I?
Which I like.
Thanks for making everything in this mix so clear now. Experiment time I can't wait.
You donāt have to use dead keys. I mentioned it just to illustrate that even if you run out of space, you can still map characters to dead keys, which can multiply the number of available characters by a factor of 10 or more.
This is also explained in my linked article, and you can try it out with the downloadable custom layout.
Yes. See the above mentioned custom layout. I think it contains all the necessary keys to qualify as default layout, no?
Nope. If you mean KM hotkey triggers, you canāt map them. ā„Y (as hotkey) is always ā„Y, no matter which character or symbol you have mapped to that key combo.
You could use your additional symbols as styped string triggers though. But this doesnāt make much sense.
And you canāt āmapā text expansions. You can map the symbol ā to ā„Y but you canāt map a sequence of characters/symbols to a key. For that you have Typinator, KM or Text Expander.
The point of a custom keyboard layout is to accommodate all the special glyphs that you often need and which otherwise only could be generated with the help of the OSā Character Viewer palette or via text expansion software.
Letās say, you often need the ā symbol. Then it likely is more comfortable to have it mapped to ā„B than to have to trigger it by typing ;flat with your text expansion software.
Correct. But if you manage to map all your custom glyphs without unmapping other needed characters, then youāll never have to switch.
I mentioned that because I thought you were thinking that you need Ukelele in order to switch layouts.
BTW, trying to create the perfect personal keyboard layout can be a very addicting endeavor ā¦ that never endsā¦
No, I meant that if, say ā„V normally produces ā, I could remap it using Ukelele to my email address. But I now see that that's text expansion, so No.
So I may be confusing the functions of Ukelele; and in fact they're separate from Hotkey allocation in KM?
I see. That is indeed my case. Obviously I need to go back and look at Ukelele again
MarkSealey:
I see. Thanks. I know I can work that out beforehand: my Input Source > US Keyboard (default) currently has 30 favourites.
I see thanks. I did the first time we discussed it. I've looked more closely now. I like the fact that it's file, rather than patch/kext, driven
If you have an extended keyboard with number pad, you can use Ukelele to create a layout which replicates the standard US keyboard (or whatever you use now), but makes additional characters available when typing the number pad keys with shift and/or option. That gives you a few dozen extra characters, doesn't require you to change your typing habits otherwise, and you never have to switch layouts. (Well, once, when you first set it up.)