Conflict Palette Bug Not Better and Seems Worse with version 9.02 of KM

Hello @peternlewis
The conflict palette bug not better and seems worse with ver 9.06 Catalina 10.15.6
My Mac seems to take a life of its own, as I type keys, which reflects the underlying invisible palette triggers. The problem is not solved by “cancel all macros”
When I know which palette is the cause, I disable → re-enable the group. The problem is that with Better Touch Tool gestures, you can accidentally make a gesture a trigger a palette. Before, it was easy: the palette was visible and I just has to toggle it. Now, I don't know which palette is invisible and causing the problem.
Could you suggest a workaround ? a macro I could trigger to disable the palette ? and could you help me identify and modify those palettes which are prone to this behaviour.
The situation is really not good. Is there anyway to go back to 9.05 ?

thank you Peter

great. thanks a lot. I will have a look
I am going off on a tangent: do you have problems with conflict palettes ? I am constantly having conflict palettes flash on the screen for a millisecond, which causes my typing to trigger all kinds of macros, and constantly having to quit and restart the KBM engine. I have never encountered such as difficult situation

Nope, no problems at all.

You might look at a few things:
1. Look at the recently run Macros to ID those causing the problem

2. Invisible Pallets

  • I saw in another post where you referred to "invisible" pallets
  • I have no idea what that is, since, AFAIK, a Palette has to be visible to be active

3. Typed-String Macros?

  • I'm just guessing, but I'd look for Typed-String Macros that are being triggered when you don't want them to be.
  • As you know, I name ALL of my typed-string Macros, and Typinator snippets, starting with a semicolon ";" and ending with a SPACE just to avoid this issue.

4. Better-Touch Tool

  • I don't have this tool, but I think you mentioned using it.
  • Try disabling it for a while to see if it is causing the issue.
1 Like

thank you for your comments.

  • there seems to be some kind of problem, since @peternlewis updated KBM to 9.06 to address it, if I understand correctly
  • there is no error in the engine log.
  • definition of an invisible palette: the palette flashes for a microsecond on the screen, sometimes visible, sometimes not, and as I type, I trigger all the hotkeys of the palette. Cancel all macros does nothing.
  • I don't used typed-string macros
  • it so happens that all problems happen with a shortcut (not BTT) triggered macro group. Quitting BTT does not change anything.

I do have a clue: I have a very large macro group (trigger F19) which contains many conflict palettes. The problem happens 90% of the time with that macro group. My problem is that I don't what to look for to correct the problem.

It is very irritating.

thanks very much for taking the time to make your suggestions

I have fixed a case where a palette is displayed for one action, which then leads to a conflict palette, after which the triggers that had the same key in the macro as in the conflict palette could remain enabled invisibly.

I don't know if your issue is the same, since there isn't enough information about reproducing it to verify if it is the same or a different bug.

exactly what happens and the reason I am in the process of reorganizing my macro groups as a workaround, but a huge pain in the neck and waste of time. I had structured KM to make heavy use of conflict palettes. KM 9.06 Catalina 10.15.6 supp
thank you for your reply

I apologize for the tone of my reply above. I greatly appreciate all the outstanding work you are doing

1 Like

Hi, I can confirm the problems, @ronald describes (and already have reported it to support)

I can add some observation to this odd problem:

  • I have more than one palette that triggers an ICP (invisible conflict palette)
  • I cannot say if it is connected to having a shortcut as a trigger (as all of my palettes are triggered by shortcuts)
  • Not every macro in a palette triggers an ICP (my guess was that it has to do with the Search-Replace-Action – but I'm not so sure anymore)
  • I don't have Better Touch Tool installed, so I would rule it out as a culprit.

In the meanwhile I have a workaround: Just add the action "Deactivate Macro Group" as last action into every macro in an "infected" palette group. If you have a lot of macros, this means a little work but I'm happy I have done it (with all macros in the "infected" palettes), as it makes the bug disappear and KM behaves just as before (and it is definitely easier than reorganize – and remember – a new "trigger approach").

Hope it helps
Roland

(funny coincidence with the name – I hope the bug is not connected to that :wink: )

2 Likes

thank you for your post. I don't understand.

I had figured out, like you, that if I have a conflict, one solution was to deactivate the macro group.

This is the problem I had:
if you add deactivate macro group at the end of each macro in the group, it's fine the first time, but when you come to trigger a macro in that macro group again, nothing happens, it is deactivated. How do you get around that?

yes, both Ronald, but you are the Meister and I am the Dorftrottel !

In the meantime, my strategy is to delete all conflict triggers, regroup them in a macro group, and then as suggested by the brilliant @gglick use the Show Palette of Macros action to show the macros formerly in conflict palette because the show palette of macros automatically assigns the first letter of each macro name as a trigger.

Hi,
I guess, my macro structure is a little different from yours. I activate several different palettes (for one action) with a shortcut. Each palette contains a lot of macros (e.g. a palette for text actions, one for window rearrangement, etc.). All macros in the palettes have simple letters as shortcuts. Copy-pasting the "Deactivate Group" action works for this setting as the palette will be generated again when I hit the palette's shortcut. But if @gglick's approach works for you - all the better. It's good to have options with this bug.

I made an additional observation regarding the conflict bug. Sometimes, triggering the bug, is "achieved" by calling a palette by it's shortcut and dismissing it right away with escape (without executing a macro in it). So the bug seems not connected to specific macros or actions.

Unfortunately, the shortcut-escape combo will not reliably trigger the bug. I just tried it a few times (with relaunching KM's engine inbetween). After triggering it five times in a row it went back to normal behavior and the palette's shortcut just worked as intended. In layman's word I would describe it as KM sometimes just does not recognize that an activated palette should be removed (or the mechanism of removing is somehow broken).

One last observation: I also have Karabiner installed. But the bug occurs also on shortcuts that do not involve remapped keys (e.g.: one of my "prone to be infected" palettes is called by cmd+F5 – and has worked ever since bevor KM 9.0.5/6).

Regards, Roland

I am sorry: I don't understand. If you deactivate the macro group at the end of a macro, then the macro group is inactive, and the next time you type the macro group shortcut, nothing happens. Another possibility until the next update of KBM would be an apple script triggered outside KBM which would deactivate→ reactivate all macro groups.

@gglick wrote excellent macros to delete, copy, paste triggers. If @gglick sees this he could perhaps tell us if it is feasible to create a macro which would add / delete an action at the end of a series of selected macros. Or even @peternlewis

I often use escape. To avoid it, I would need a keystroke alternative. I don't want to close the window manually. Do you have a suggestion ? Perhaps a macro in the palette that somehow closes the macro group ?

I also have Karabiner and did all kinds of tests: those you describe, and in addition taking it out of my login items and rebooting, and the problem persisted. Karabiner was the first suspect.

I'm still not sure if we are talking about the same thing, because my setting behaves exactly like that:

  1. Invoke a Macro Group (with "show a palette for one action when hot key XY is pressed")
  2. Execute a macro in it. The last step in the macro has the "Deactivate [THIS] Group" action
  3. The next time I hit my short cut from step 1, the palette just pop's up fine and fresh.

Maybe the difference is that you have persistent palettes?

That maybe nice. For me, it would be "effort overdose". I'm conservative when it comes to adding "noise" actions to macros. I add that "bug swatter" step to the macros that trigger that bug as it pops up. Right now I have only about a dozen macros with that additional step and I'm hesitant to add it to all macros in my box (that would be over 1000). So, a few good ol' handy copy-paste steps get the job done for me just fine. (I made the observation that (for me) automating the automation routines adds a meta layer of complexity that often solves small problems by creating bigger ones).

Roland

I am surprised that after you deactivate a Macro Group, as you do in Step 2, that it will still respond to a hot key. I just tested this and I can confirm that behavior.

But I do have a question for you: What is the purpose of deactivating the MG?

@peternlewis, is this the as designed behavior? Seems like a bug to me.

I never thought about it, but this behavior feels right to me. The shortcut activates the Macro Group (= makes the contained macros active), the "Deactivate" action uh... deactivates the group - until it is reactivated by the shortcut again. On the contrary I would be irritated if the "Deactivate" action would kill the MG in a way that left no option to reactivate it again later.

As written before, right now it only purpose is to work around the conflict palette bug (that this thread is about): the conflict palette sometimes fails to deactivate the underlying MG (which is set to "show a palette for one action").

-Roland

1 Like

It's a way to work around what we are discussing: the conflict palette bug.

If you have another suggestion, I would be very interested, because at this point, the workaround forces me to manually add a deactivate macro group macro to 150 macros.

I understand what you mean. I simply have another perspective.

  • I am lazy and do not look forward to adding deactivate macro group action to 150 macros (and perhaps have to remove it at a later date)
  • @gglick 's trigger macros allowed me to modify triggers on perhaps 200 macros with very little effort.

My suggestion is to wait if you can for @peternlewis to release the fix he has made for this.
If you want, you can get on the KM Beta group to get it sooner.

If you can't wait, then maybe here's an alternative:
Choose the [TM] macros that you use most often, and put them in a new Macro that uses the Show Palette of Macros action.
Put this macro in a different (new?) Macro Group, and disable the existing [TM] macro group (for now).

OK will try that today. thanks very much ! I will give you an update

@JMichaelTX

I am starting to understand. There is no perfect solution. That being said I prefer your solution.

Solution 1 is @medienmeister 's approach: to add deactivate macro group to all macros. In view of the number of conflict macros I have, it's a lot of work, and there is a possibility that I will have to reverse it all in the future

Solution 2 the @gglick @JMichaelTX solution

I created a new macro group containing macros which solely show palette of macros (former conflicting macros)

I created a multitude of macro groups, each one regrouping the former conflicting macro triggers.

This the solution that I am using, but to do so I have to make one sacrifice which is that I cannot assign triggers. The only triggers that I can use are the first letter of the macro name which KM assigns automatically.
I basically have 2 choices when it comes to the macro groups, each one regrouping the former conflicting macro triggers

1- Shows a palette for one action when:
I cannot use it because Show Palette of Macros will not trigger the macro group palette.

2- I must therefore use Always activated and shows a palette for one action when: , which works, but I have to delete all triggers because the macro group is always active, and the triggers ... trigger when I type them in an editor.

that being said, I prefer your solution and structure macro names keeping in mind that the first letter of each macro name is the trigger.