Macro script runner - make your operator prototyping faster

Hello, this little addon is what I use during large projects - do you need to quickly script something small, and you still want full operator functionality with tuning of properties and undo?
then this is for you.

This addon adds a new tab with your commands. You can script anything from one line to a longer script.
Any Integer, float, string and boolean properties defined before actual start of the script, will be interpreted as operator properties(up to 5 supported of each type)

download the script here:

and watch a super short video here(which also shows a long-standing blender bug where last edited text disappears when hitting undo, so save your file before running the macro and tweaking operator properties):

If you like the script and want to support me, go tothis page and donate to the blender CAM project.

2 Likes

Very cool ! This is definitely the type of thing that will help development of small quality-of-life features.

1 Like

Yes… And actually, I use it every day for heavier projects. Imagine you realise you need to move a specific animation key for hundreds of objects… or similar stuff which cannot be done manually and developing an addon for it is too much work, and not having operator-like behaviour is not comfortable

1 Like

hello,
Thank you for this addon which really useful. Well done!
I can not get it to work with my Blender 2.70. I activate the addon and I receive this message.
"
Traceback (most recent call last):
File “C:\Users\PORTABLE\AppData\Roaming\Blender Foundation\Blender\2.70\scripts\addons\Macro menu.py”, line 110, in draw
row.operator(“text.run_script_by_name”, text=t[0]).text=t[1]
AttributeError: ‘NoneType’ object has no attribute ‘text’

location: <unknown location>:-1
"

Very useful! Great addon! :wink:

Hi @pildanovak,
Could you make a update to your very useful addon for Blender 2.75, please.
This traceback about attribut “text” is always there.
Thanks in advance for your reply, please.

This script was just updated in the repo.

new are :
few bugs fixed
enable path strings (there was a problem with strings which have \ in them)
enable creating shortcuts(there was a blender bug with text specific operators)

Shortcuts currently work only in object mode, don’t know why. Add editmode toggles to start/beggining of your script…

Can someone test this script with blender 2.78.4 because
a=1
for i in range(0,a):
Is not working for me :eyebrowlift:

Hello. Big thanks for this addon.
But how to delete macros?

UPD
I found it.
In Windows 10:
C:\Users\YourUsername\AppData\Roaming\Blender Foundation\Blender\2.79\scripts\presets\macros

Glad someone still uses the addon.
I use it every day…

1 Like

Hello. Nice addon.
Is it possible create custom menu like “W”, ctrl+E, ctrl+V, ctrl+F but only for macros?

Hi, well I never made it as a menu. In 2.8 it will be probably easy, and I might attempt to do this…
A very advanced tool to do this the pie menu editor, however it’s a bit too much for me, I just need simple buttons to trigger my often made actions.

By now, I have sadly a too big todo to pay attention to this addon, but I hope in a few months I can convert it for 2.8.

1 Like

I have one question, what is “relief tools”?

This addon is the one of the reasons why I didn’t move to the 2.8, because it’s the only way for me to assign shortcut for each falloff in proportional editing mode, and for LoopTools (settings in keymap do not apply), and many other reasons.
I`m created many another macros and assigned them to the shortcuts. Great “save time” addon. Thanks.

Exampe, i’m created standart shortcut (right click - “add shortcut”) “ctrl+T” for “LoopTools - Relax”. In Keymap i’m change “interpolation” from “cubic” to “linear”, and than i’m pressed “ctrl+T” in 3Dview instead linear work cubic by default.

Using this addon I made macros and assigned it the “Ctrl+T”:

bpy.ops.mesh.looptools_relax(input='selected', interpolation='linear', iterations='1', regular=True)

After created shortcut can be changed location from “Object mode” to “Mesh”: