What it solves
MickHanks kept leaving newly added objects with generic names, then paid for it later when a scene became difficult to navigate. Their first solution combined an external script, a custom Tools panel, and a PME Popup Dialog. It worked, but it was a lot of machinery for a small habit.
roaoao, PME’s original author, reduced the entire workflow to two actions with input_box: create the object, then ask for its name.
Current PME 2.1 recipe
Put this in a PME Command item:
bpy.ops.mesh.primitive_cube_add(); input_box(prop="C.active_object.name")PME 2.1 still exposes input_box(func=None, prop=None). The current implementation invokes PME’s input-box operator, and the current scripting reference uses C.active_object.name as its rename example. This was checked at origin/pme2-dev@9fb992798b98 for PME 2.1, whose manifest requires Blender 4.5.0 or newer.
Replace the cube operator with the creation action you use. The prompt must come right after creation, while the new object is still active.
Why prompt at creation
You name the object while you still know what it is for, and there is no doubt which object is meant.
- The prompt arrives before you move on.
- The active object is the target, so there is nothing to select later.
- Naming happens as part of the action instead of as later cleanup.
- One small pause saves searching in the Outliner, drivers, constraints, and scripts later.
MickHanks described the prompt’s inconvenience as “the whole point.”
When not to prompt
Skip the prompt when names follow a rule or objects are created in a batch. Derive the names from the rule, or ask once at the start.
For validation, prefixes, or another custom response, current PME also accepts a callback:
input_box(func=lambda value: overlay(value))Put longer validation or scene changes in a function or external script instead of a long one-line command.