Copy between macros

Is there a way to copy (Copy/Paste) between macros? I have a macro already built and I need to get some of it into another macro Im building.

Oh boy - this one bit me too and thanks to this forum I found out how to do it!

Now it's my turn to give back and help you.

Do this:

  1. Select the action(s) you want to copy
  2. Press Command-C
  3. Go to the other macro
  4. Select the action you want to paste after (or if it's an empty macro don't bother trying to select anything)
  5. Press Command-V
  6. Voila!

Note: you can't achieve this using menu commands in KM.

Brilliant! Thanks for paying it forward! I can't believe I didn't just try that. I was looking for a menu command :slight_smile:

There is a COPY menu command. It works just the macOS Copy everywhere. Select the thing you want to copy, then the menu Edit > Copy.

Though I don't know what anyone would want to do that versus the very simple keyboard shortcut, which is the same everywhere on the mac: ⌘C

Also, while you have one or more KM Actions selected, you can do any of these standard macOS commands:

  • ⌘X -- cut
  • ⌘D -- duplicate
  • OPT Drag to duplicate and copy to new location

You can also do some KM-specific copy commands:

image

1 Like

Just looked back at my very first post here (How to copy and paste actions from one macro to another?) and my problem was slightly different but the solution more or less the same. Sorry @Five18 for not being quite accurate re using menu commands!

A little bit of trivia,
⌘X -- cut uses X as it was originally eXcise long long ago.
Similarly moVe for paste.

1 Like

Thanks for all the info! Very helpful :slight_smile:

Curious. I've never heard of that, and there is no mention of it here:
Cut, copy, and paste - Wikipedia

My guess is that the shortcut keys (X C V) were largely chosen for their ease of typing/reach, since all three are grouped at the bottom left of the keyboard, which makes it easy to reach in combination with the CMD (or CNTL) key.

Just my 2¢.

Long ago when I was first learning computers I was taught (as a mnemonic) to remember V as Velcro (Paste).

I would prefer recommending we have one more macro editing pane on KM UI. We need this not only because we need to copy paste between each other, but also we learn things from other macro.

I frequently open a 2nd Editor Window. This helps when copying and pasting actions.

2 Likes

Hi Steve. Do you mean we already have this feature? I cannot figure out how to open 2nd editor window.

I hope there is something like this in Context Menu. When you right-button-click macro in Macro List, you can choose Open in 2nd Editor Pane.

Under the File menu.
File > New Editor Window or keyboard shortcut ⌃ ⌘ N

2 Likes

Many thanks. Cannot imagine this is in File menu :sweat_smile:

But if we have more than one editing pane, we can use drag-and-drop to do a lot of copy-paste work. That would be cool.

And I just tried with 2nd Editor Window.
If you are editing a big KM macro which is including more than 100 actions, You will find it's difficult to do editing works in KM UI. Looks like the UI cannot refresh in time. Looks like you open a long webpage in Browser on a very slow computer.
If you are editing KM on Macbook Pro, it's OK. But if you do this on Macbook air, it's not smooth.
I really have build up some very very long macro. I fight with this UI refreshing issue for long time.
And I just found, this issue was magnified exaggeratively when you open second editor window. Especially when you open a same big body macro in second editor window.
You type ABCD in macro note. You will see the ABCD show up one by one with long time interval. Close the second editor window, you will see a big improvement.
I heard of that when you scroll up and down in internet browser, the system will only render the part you are seeing. I m not a coder So I dont know the internal principle.
But I think the algorithm of KM UI Refresh can be optimized. Especially for editing big-body-macro.@peternlewis @Steve_E

Yes, Keyboard Maestro is not designed for very long macros, and it definitely gets slow if you have long macros. And having a second window open means every change requires the entire macro in the second window to be refreshed, which will make if very slow for long macros. Allowing multiple editor windows was shoe-horned in to the design and so is not as efficient as it might be if it was designed that way from the start.

While I would like it to be better, I would not be holding my breath waiting for it.

The quickest solution would be not to have very long macros - break your macros up in to sub-macros using either Execute a Macro action or Execute a Subroutine action.

2 Likes

Apart from the very sound advice given to you by @peternlewis there may also be another thing you can try to improve the situation.

I too was having performance issues and I found a setting in KM version 10 that helped enormously. Have a look at this post of mine and try changing the Evaluate Condition Results setting. I hope it will make a difference for you as it did for me!

I already use Execute a Macro a lot in my Macro. Using software with KM can push the software to the limit. And we also push KM to the limit at the same time. It is determined by its own nature. I hope we can use it without compromise. If we cannot go further due to UI issue, that would be a pity.

I ll try this. Thanks. // Unfortunately, I just checked. This option was already unchecked by default on my system. So I cannot use it to improve the UI performance.

1 Like