Nested palettes only work sometimes…

OSX 10.11.6.
KM: 7.3.1

I have created a number of macros which help me to organize my notes system. I rely on palettes that get displayed for a single action, which I trigger by pressing a corresponding shortcut. Some of those shortcuts open up other macro groups as palettes that get displayed for one action, etc. The basic hierarchy is this:

    1. Preferences
      1. Option 1
      1. Option 2
      1. Option 3
    1. Action 1
    • Action 1a
    • Action 1b
    • Action 1c
      • Action 1c - Clarification - Option 1
      • Action 1c - Clarification - Option 2
    1. Action 2

However I have the problem that my palette only works sometimes. I don't know why that could be I tried to look at the logs (here's a trunked one), which only show that I have pressed the desired hotkey. As you can see, sometimes it lets me do more than just pressing one hotkey, but sometimes it doesn't. Here's a screencap:

What you see here: I'm pressing the short cut to open the palette (cmd+shift+u in my case) and then press different hotkeys ('1', '0', '3', '1', '1', etc.) until it takes.

Now, I assume that my macros might be to blame here. I will also include the two most complicated macros:

zkn Test Group Export Macros.kmlibrary (21.6 KB)

  • "zkn2 neuer Zettel (siehe Palette!)" is a macro which finds out what is the highest number a file of the naming pattern $prefix-xxx.md(wn) and creates a file of the same naming convention where xxx+1 this macro itself is used in other macros that specify the prefix
  • "zkn2 Create Zettel-Link" is a macro which interprets shortcodes and expands them. If I write "z1" this gets expanded to [[/zkn2/zettel/zettel-1]], if I write "k7" it gets expanded to [[/zkn2/konzept/konzept-7]]. In order to catch a possible mistake where I wrote p1 instead of either pe1 (person) or pr1 (project) another palette is opened up which allows me to chose if I meant to create a link to a note about a person or one about a project.

I have no idea what you are doing with your macros/palettes, but if you want nested palettes:

  • Create a set of macros for the top level palette. Give each macro the same hot key (cmd+shift+u). Pressing that will show the conflict palette for them.
  • Each of those macros could then Show a Macro Palette for a specific Macro Group

or

  • Create a macro group for the top level palette. Configure the macro group to show a palette for one action when the hot key (cmd+shift+u). In that macro group, create a set of macros, each which show a macro palette, and each with whatever trigger you desire.
1 Like

This is what I am doing. I have a macro group which is triggered by a hot key and shows a macro palette for one action. The macros in that macro group in turn activate and show a palette for another macro group for one action. This nested macro group contains some macros which actually do things. This works, or has worked in the past. However: For some reason and I assume it's complicated reason, since I have added a couple more complicated macros to this "macro system", the palettes don't behave as they did, that is: They do react to the hot key (cmd+shift+u) and the first palette gets shown, but if I try to trigger a macro by pressing the second hot key (that is, the hot key associated with one of those macros in that macro group) do not always behave as they should. Sometimes they open the nested palette and sometimes they only show the palette very shortly without the possibility to actually trigger a macro in that nested macro group palette.

The macros you included did not have any triggers and were in a macro group that did not have any activation.

If the macros are not being triggered, then they are not part of the problem, the problem is coming before then.

Note that a palette shown for one action will be closed if Keyboard Maestro does anything (eg trigger another Macro). SO if you had periodic macros or the like, that will close the palette as well.

1 Like

These macros are actually meant to be reuseable and get called by other macros (by utilizing the "execute macro" action) or are part of other macros (e.g. set a couple of variables before executing those macros), which saves me doing the same thing over and over again. So that's why there's seemingly no connection between those complicated macros and the macro system. The macros are getting triggered when it works. They are not, of course, when it doesn't.

This could very well be the problem, however I'm not sure if I have any periodic macros, that could prevent the opening of the palettes. And also: As I said, I am able to open the main palette without problems and I can leave it open without it getting closed, which goes against this suggestion, unless I understood it wrong.

Thanks for your thoughts and ideas, though. I appreciate it a lot!

I might've found the problem!

This is part of one of the macros I linked to above. I think that the pause condition basically was preventing other palettes to be opened or stay open, because it had to check for its pause conditions which probably means that it interrupted the other macros after all…

Thanks in advance. @peternlewis: your idea that there might be a periodic macro error led me in the right direction. Thanks.