STARTUPBUILD builds your acaddoc.lsp — the file AutoCAD runs automatically for every drawing you open. Pick your routines from a multi-folder file browser and it writes the loading expressions for you.
What StartupBuilder does
Start here when deploying a LISP library to a team. It is the difference between “load these forty files by hand” and “everything is just there”.
How to use it
- Load the routine with
APPLOAD, or put it on your support file search path. - Type
STARTUPBUILD. - Pick the routines from the file browser, across as many folders as you need.
- The loading expressions are appended to your existing
acaddoc.lsp, or a new one is created.
How it works
AUTOLOAD versus LOAD is the whole point of the routine. For a .lsp file whose commands can be identified, an autoload expression is written:
(autoload "C:/lisp/BFind.lsp" '("BFIND"))
That does not load the file at startup. It registers the command names, and the file is loaded the first moment somebody actually types one. With a hundred routines that is the difference between AutoCAD starting instantly and taking several seconds on every drawing — which is the cost that makes people quietly stop using a shared library.
A plain load is written only where autoload cannot work — for compiled .vlx and .fas files, and for any .lsp whose commands cannot be determined:
(load "C:/lisp/reactor.lsp" "Failed to load reactor.lsp")
The second argument is the message shown if the file is missing, which turns a cryptic startup error into something a colleague can act on without ringing you.
Commands are found without loading the file. Each .lsp is read as plain text and scanned with a regular expression for command definitions. No code from the file is ever evaluated, so scanning a file cannot do anything to your session.
Notes and limits
- An existing acaddoc.lsp is appended to, never overwritten. Your existing startup code survives. If none exists anywhere on the support file search path, a new one is created in the Support folder under your roamable profile.
- Autoload defers loading until first use. That is why a large library costs nothing at startup.
- Compiled files always get a plain load, because their commands cannot be read as text.
- Reactor-based routines need a plain load too — they must run at startup to register, so autoload would defeat them.
Download and details
| Name | StartupBuilder — build your acaddoc.lsp from a multi-folder file browser |
| Download | StartupBuilder.lsp — 33.8 KB, plain AutoLISP source. Downloads directly; no zip to unpack. |
| Type | AutoCAD AutoLISP routine |
| Command | STARTUPBUILD |
| 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 | 33.8 KB, 806 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
- CMDSCOUT LISP — see what commands a file defines before you add it
- USAGELOG LISP — find out which of them actually get used
- LAYERPILOT LISP — one of the routines that must load rather than autoload
- More free AutoLISP routines on this site
- Wisey’s Steel Shapes — free structural steel section drawing program