Keyboard and Keystrokes, Alternative Solutions (Formerly "Karabiner, How Safe?")

[Tom:] 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.

Got it!

Oh, I now see a possible source for a misunderstanding here: With “dead keys” I don’t mean ‘unused keys’. I’m referring to the fix term.

So I may be confusing the functions of Ukelele; and in fact they're separate from Hotkey allocation in KM?

The only (really only) function of Ukelele is creating/editing keyboard layouts.

So, yes, the two things you mention are not related at all.

Not even the actual mapping of your keyboard layout is relevant to KM’s hotkeys:

Example:

Key Code 33 is mapped like this on two different standard macOS layouts:

That is: Key code 33 gives you “[” with the US layout and “ü” with the German layout.

Now I set this hotkey as macro trigger:

09-pty-fs8

It works.

Now I switch my keyboard layout to German…

19-pty-fs8

…and press the same physical hotkey, which is mapped to “Ü” in the German layout: It still works. (I do not have to press ⌥5, which is where “[” is mapped to on the German layout.) [1]

And when I reselect the macro in KM, I see that the trigger field has automagically changed to reflect the actual mapping of my current keyboard layout:

09-pty-fs8

[Tom:] 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.

I see. That is indeed my case. Obviously I need to go back and look at Ukelele again :slight_smile:

As said, with my article I tried to explain the basics of keyboard layouts and give a showcase of a custom layout, including advanced things like dead keys and multilevel (chained) dead keys. If my English there is too crappy, then download Ukelele and start reading the tutorial :wink:

my Input Source > US Keyboard (default) currently has 30 favourites.

You mean, you have 30 layouts in this menu!?:

16-pty-fs8

Why?



  1. I think it is worth to mention that this is different from the standard/system behavior: In other apps, if I switch from US to German layout I can no longer use Z for undoing. I have to press physically Y. (Which is where the “Z” is mapped to on the German layout.) KM is smarter :slight_smile: ↩︎

1 Like

Well, usually you have more than enough space also with a non-extended keyboard. But this is a great tip. It gives you at least 30 additonal chars without even tinkering with the non-number-pad section of your keyboard.


PS:

I didn’t have an extended keyboard for the last 10 or 15 years, so I completely forgot about that.

Thanks, Eurobubba - I do… Late 2015 iMac.

A 'few dozen' would do it, I know for sure.

Shall definitely investigate that today!

Tom,

Now I see. Thanks. Dead keys don't do anything by themselves :slight_smile:

My apologies. Clearer and clearer…

No. I can see what not.

I guess I'm actually looking at two questions in all this:

  1. how to manage action/change (expansion, insertion, launch etc) by Triggers, and
  2. how to manage text manipulation (largely text expansion) by utilities like Typinator

My hope was that KM could do both/all of that - just for simplicity's sake.

Now I doubt that it can.

And I was also trying to tie keyboard mapping in general to both of those questions; I suspect it has a marginal role to play only in 1.

Does that seem right to you?

Your example of Key code 33 (left bracket vs u umlaut - depending on Layout) makes it crystal clear.

Achieving that difference in result via Ukelele has nothing to do with what happens when I press Cmnd [; and - further - how KM treats the key combination… it doesn't care about the Layout in operation at the time, does it - and you re-inforce that by your [^] footnote.

It isn't at all. And I shall! Thanks :slight_smile:

my Input Source > US Keyboard (default) currently has 30 favourites.
You mean, you have 30 layouts in this menu!?:

No. In US I have 30 key-combinations which I use often enough to count as favourites.

I'm also looking at PopChar:slight_smile:

1 Like

I guess I'm actually looking at two questions in all this:

how to manage action/change (expansion, insertion, launch etc) by Triggers, and
how to manage text manipulation (largely text expansion) by utilities like Typinator
My hope was that KM could do both/all of that - just for simplicity's sake.

Not entirely sure if I’m grasping correctly what you mean in paragraph 2, but KM can do all that.

It’s just – as always – a question of the right tool for the right job:

If you don’t have many text expansions (you’re entering your custom glyphs already via your brand-new custom layout, created with Ukelele, right?), I can see that KM’s text expansion facilities are enough to do any remaining job.

Well, if not, you can still take Typinator into the game. It will do the same as KM’s expansions, but offers a much more fine-grained interface (settings, default-trigger chars, attribution to apps, etc.), also more comfortable, and other useful or fancy stuff.

And, BTW, Typinator (or Text Expander) also is just an app, so no additional kext here.

And I was also trying to tie keyboard mapping in general to both of those questions

As said, keyboard mapping (= keyboard layouts) have nothing to do with KM or any text expansion app.

Unless you are speaking of modifier key re-mapping. This is an entirely different history, and will indeed throw you back to Karabiner or similar kexts.

Standard OS layouts (as well as the ones you create with Ukelele) are not “touching” (manipulating) modifier keys. They are just obeying when any modifier is pressed, according to the layout.

If my English there is too crappy, then download Ukelele and start reading the tutorial :wink:

It isn't at all.

Once you have read the article and maybe tried out the custom layout, let me know about any open questions. Always happy to answer them.

No. In US I have 30 key-combinations which I use often enough to count as favourites.

Got it now, thanks.

I'm also looking at PopChar… :slight_smile:

Highly recommended from my part. Could live without it, but it is really neat and I don’t want to miss it. It is the OS’ Character Viewer on steroids. And, yes, from the same Austrian quality developer like Typinator :wink:

1 Like

When I am sure it is safe, I will post up a Macro that has another way of getting different results from one key stroke. It is quite complicated to explain and timing matters, if you keep holding it down it gives differen results depending on when you lift your finger. I will post it in a new topic, when I am sure it won't do any harm, it uses 'if then' flow control and those can get into loops of some kind and freeze stuff, I never had one do any real harm, but once or twice I had to restart and so on...

@MarkSealey Great, nice to chat too a bit round a topic: I think one learns often that way. I don't know about named clipboards: I have never used one knowingly, there is one I think put on my own Keyboard Maestro by a macro I just imported from here, I think it grabs an URL. However I don't think named clipboards are in any way I can think of 'tidier' in principle? I can see how it looks that way. It is always hard to judge these things without being able to go far 'under the hood' and appearances here can be deceptive?

https://wiki.keyboardmaestro.com/Clipboards

Tells you stuff you need, especially that 'Default Clipboard' is NOT the system clipboard. I try, to be honest, to stick as much as I can to the System Clipboard. You can use the Clipboard Switcher and get to the last 200 items on it, also 'pin' stuff there which is not automatically deleted. Launchbar keeps a history of the same clipboard and I use that too: I find adding named clipboards too confusing since some of my macros are very baroque as it is. I haven't really made neatness a priority. I will reach that point one day I guess? Keyboard Maestro often works because you can sort of join up different parts of it and get them to work together indirectly.

I will say that I find and found the Keyboard Maestro Wiki useful but especially I found David Sparks' field guide on Keyboard Maestro really upped my own game. Incidentally at times the screencasts show you tricky things that are hard to get from the forums or wiki. I only started after years of Keyboard Maestro use ot use the clipboard switcher after seeing what David could do with it. It is a $29 field guide but really, I think worth it, I guarantee you will find stuff there you didn't know. 100% sure :smiley:

Really, like I say, I just paste or type from the 'insert text' actions. I think that is really the best way to do it from a typed string.

Sorry, no offense meant, but how is this related to the current discussion (or the topic)?

You could post this to any topic, no?


But probably I just don’t get the subtle irony of the post :wink:

1 Like

You are right I think, I agree with you @Tom: this 'topic' is now discursive and branching I think. I will start another topic when I feel my macro is 'safe' regarding multiple effects from one key, I think that flows from the question? However I agree with you, obviously you are right. I have told the moderators to feel quite free to move or delete anything of mine for whatever reason: I am not precious about it here. I did actually learn a lot during this discussion though, including some of the things you said. I didn't have a 'question' in mind or strong views on Karibener, I found it safe and I use for one thing, the hyper key.

I will, just for something to chew on, say that in my view it sometimes looks like this forum is only for programmers. I think we need to avoid that with too sharp a "question - answer- tick answered box" approach, which often I tell you, assumes a huge amount sometimes and encourages at times the impression among newbies that 'this isn't for me'.

Very often us newbies don't know what we don't know if I can say that. As you say, one can go overboard with the discursive approach too. However Keyboard Maestro is getting very close to getting a name as 'for programmers' and a random visit to some topics on this forum would actually confirm that impression. Maybe there should be a kind of 'newbie' section sort of fenced off or something?

If you have a macro ready for work, post it in the Macro section of the forum.

My comment was only about your above post. Nothing more. I don’t even know in which other topics you have posted. We have never met before, IIRC.

I think I understand what you mean. And that’s one of the reasons why I’m posting here, and not on Stackexchange. There, on Stackexchange, it is maybe true what you said. It can be hard to get off a post there if you don’t already have isolated the issue.

And that’s good so. That’s the only way to efficiently solve issues.

But this is definitely not the case on this forum, IMHO.

Interesting proposal…, but I think the whole forum is “enough” newb-friendly. In fact, I think it is very newb friendly. That’s my personal opinion.

2 Likes

In my view, I think Keyboard Maestro can handle anything TextExpander can. Peter Lewis has explained though that there are other considerations in terms of the amount of space taken up in memory and plists and so on. As you are pondering under the hood, some expansions take up more memory and processing power roughly than the same result in TE would for example.
I use Keyboard Maestro for all my expansion and will until the unlikely day that I get too many, I have about 30 maybe now. I see no slow downs or anything at that scale. I am also not sharing with anybody..

Fair enough. I don't think it is newbie friendly, which is why I said what I did. I might be wrong of course. I was suggesting that every topic doesn't have to be treated the same to put it briefly. I see the problem in doing that.

I don’t get this. What are the newb-unfriendly things? I mean, show me a topic, where a newb’s question has been unanswered (assuming the “newb” provided the required info, either in the OP or once having been asked for it)

On your point Tom, this is for another topic isn't it? By your own criteria?
Let me be clear, people, including programers here try hard and we appreciate it. We really do, you get stuff here that most IT folk in a company or station would just sneer at you for asking and taking their precious time.

We value it and I am not going to get into a to and fro on this point. I introduce the point as food for thought. @JMichael has made huge efforts to explain stuff to me for one example and might consider this a 'outsider topic' or what we call them. There is a category for that I believe. I am not inclined to push this point too far individually though at present. Somethings just take a lot of work and Keyboard Maestro is in that category to some extent as you imply. We have at present 741 'active users'. I think that the app really is good enough to merit way way more than that. I really do. It is probably the best app for Mac.

@JMichaelTX, I suggest to split this topic, starting with post #26

IMHO it is going a bit OT.

This is true and worth to be mentioned, I agree.

But keep in mind that most people here are not “programers” (however you define this), me included. And, nevertheless they can provide help to others, because they are somewhat familiar with KM, or with AppleScript, or JavaScript, or whatever.

So, also you can provide help to others, for example when it’s on something you already built a macro for in the past, or a similar macro.

I really don’t think this is a nerd board, or newb-unfriendly.

2 Likes

For my part I’m retiring from this “discussion”.

I’m happily back once we are back on topic (more or less).

– Tom

First thing I looked at in fact was what I quote below: though I agree we should 'retire' from this discussion. The quote is from the topic called "Get the Current Position of a Keyboard Maestro Palette was this, first thing.

First thing I looked at actually amazingly. I am also sure I was a bit unlucky, some topics are quite 'newbie friendly'.
Nothing wrong with the topic either and I am sure it was useful, but if you that isn't off putting to a Newbie...
Also much of the topic is taken up with substantial bits of Javascript. I am not suggesting we don't put in topics like that by the way, but it might be as well to be aware of some of the impact of them somewhere along the line. I recommend this app and support it, I advise people even to get it, most of them are new not only to the app but to Mac OS, bear that in mind.

Still unanswered:

Your answer here: …

Tom,

It's all becoming much clearer now. I am trying to achieve several things:

  1. automation: like the BookPedia text manipulation you did so much to help me with last week; repetitive actions on many other kinds of objects than text
  2. actions/routines: a single keystroke runs a script to launch, say, SuperDuper when I mount a backup thumb drive; or to batch rename files etc
  3. substitution/expansion: I type 'TYFYE' and 'Thank you for your email' (in Mail) is the result
  4. correction: I type 'biulding' and the utility corrects it and replaces that string with 'building'
  5. 'revelation': I have a clear view of all the available glyphs, diacritics and top-bit set ASCII characters
  6. mapping: I can use existing keys (modified and without modifiers to reveal 5

My original thought was that I could find ways to get KM to do all of those.

Now I doubt that I can.

But that's OK.

I suspect I'll have to spread appropriate applications across those six separate/distinct but at times overlapping activities thus:

  1. almost always only KM
  2. KM and/or LaunchBar
  3. Typinator (and possibly, ideally, KM)
  4. Typinator
  5. KeyCue and PopChar
  6. Ukelele

All six?

Indeed. My thinking is a lot clearer now. I have all the tools (decided against LaunchBar for the moment). And have made myself a list of what I want to do in all these cases.

But that will change if I can see how to make KM do all of those.

I suspect I'll have at least 20. And would like to know it is potentially unlimited.

Yes, I think I may just have to be prepared to choose the most flexible tool for each job. Provided I keep charts and 'cheat-sheets' for how to do each action I can live with that!

Thanks Tom. That I shall do :slight_smile:

1 Like

Tudor,

Thanks. Yes; very helpful. I'm working my way through Sparky now. Haven't yet come across anything different, versions 8 and 9 :slight_smile:.

Your advice about simple functionality over what only seems tidy (e.g. with clipboards) is well taken. Shall work along the route you suggest!

1 Like