Pick a single attribute — one door number, one pipe label, one revision tag — and TagTweak applies your change to that same attribute in every matching block in the drawing.
What TagTweak does
This is the fix for the classic attribute problem. Someone changes the block definition, and now three hundred existing insertions have their tag sitting in slightly the wrong place, at the wrong height, or in the wrong style. ATTSYNC would reset all the values along with the geometry. TagTweak changes only what you ask it to, and leaves the text content of each block alone unless you explicitly tick that box.
Three commands share the same front end. TAGMOVE drags one attribute and every matching attribute moves by the same displacement, keeping its own position relative to its own block. TAGSPIN sets a rotation angle and every matching attribute turns to it. TAGEDIT opens a dialog to change any combination of content, text style, justification, height, oblique angle and rotation.
How to use it
- Load the routine with
APPLOAD, or put it on your support file search path. - Type
TAGMOVE,TAGSPINorTAGEDIT. - Click one attribute. That single click sets both the tag name and the block name to operate on.
- Press Enter to take every insertion of that block, or window a subset.
- Make the change.
How it works
That first click establishes two things: the tag name to operate on, and the block name that owns it. The filter is then restricted to that one block name, so a tag called NUMBER in your door blocks is never confused with a tag called NUMBER in your window blocks.
The block name used is the effective name, so dynamic blocks that AutoCAD has renamed internally to *U27 are still matched by the name you see.
Locked layers are unlocked rather than skipped. Attributes on locked layers cannot be modified, so all layers are unlocked for the duration of the edit and relocked afterwards — including if the command errors or is cancelled. The list of which layers were locked is captured before anything changes, so the original state is restored exactly rather than everything being left unlocked.
Notes and limits
- TAGMOVE and TAGSPIN also act on constant attributes, and those live in the block definition rather than in each insertion. So changing one changes every insertion of that block everywhere in the drawing, including any you did not select. This is intentional — there is no other way to move a constant attribute — but worth knowing before running it on a subset.
- TAGEDIT does not touch constant attributes, because their content and formatting properly belong to the block definition.
- Values are left alone unless you tick the box. That is the whole difference from
ATTSYNC. - Locked layers are restored exactly as they were, on every exit path.
Download and details
| Name | TagTweak — edit one attribute across every matching block at once |
| Download | TagTweak.lsp — 34.9 KB, plain AutoLISP source. Downloads directly; no zip to unpack. |
| Type | AutoCAD AutoLISP routine |
| Commands | TAGEDIT, TAGMOVE, TAGSPIN |
| Requires | the ActiveX layer (loaded automatically by the routine with vl-load-com); nothing extra — the dialog is written to a temporary file at run time and deleted again, so there is no .dcl to install. |
| Source size | 34.9 KB, 851 lines |
| Error handling | Yes — a *error* handler restores every system variable it changed, on cancel as well as on error. |
| Undo | Not needed — this routine only reads the drawing and changes nothing. |
| Compatibility | AutoCAD (any release with AutoLISP), BricsCAD, ZWCAD, GstarCAD, ProgeCAD and other IntelliCAD-based platforms. AutoCAD LT needs a LISP enabler. No .NET, no ObjectARX, no installer. |
| Author | YZ, August 2026 |
| Licence | Free to use, supplied “as is” with no warranty. |
References
- ATTCLONE LISP — copy formatting from one attribute to another
- TAGTINT LISP — recolour chosen tags across many blocks
- TAGBATCH LISP — setting values across many drawings instead
- More free AutoLISP routines on this site
- Wisey’s Steel Shapes — free structural steel section drawing program