Hello, AutoCAD community,
The AutoCAD team wants to hear your impressions of AutoLISP, specifically around its availability in the 2024 release of AutoCAD LT.
Which routines are you most excited to use? Let us know in the comments below!

Jonathan Hand
Industry Community Manager | AEC (Architecture & Building)
When I first saw AutoCAD LT 2024 had AutoLISP I jumped out of my chair. It was like an unexpected Christmas gift. Before AutoLISP showed up I had to build custom commands with some clever keyboard scripting, or run the lisp routines in ProgeCAD and import the drawing file. This was a pain point for me for years! Thank you for opening up LT to some real automation potential.
It works a lot better than building keyboard scripts in MS Excel and running those keyboard scripts in AutoCAD LT.
I'm curious, why did you avoid Bricscad if you are interested in lisp automation? Its the same price as LT for the full version with .net and all.
I have seen some companies simply stick to adesk products but I'd want both as someone who likes plan A and B (pun intended).
internal protected virtual unsafe Human() : mostlyHarmless
I'm just here for the Shelties
I used CMS IntelliCAD quite a bit a few years ago to automate tasks in an AutoCAD LT environment, but now that our company is willing to pay for ACE I don't think I'll have to go back... at least as long as business is good I suppose! But if I had to start over again in an ACAD LT environment, this is something great I never thought I'd see.
The ACE solutions are pretty well covered with Revit, Revit LT, and AutoCAD with the architectural objects. I see the AutoCAD LT AutoLISP useful for adjacent industries and subcontractors that don't have good solutions yet. I also really believe that AutoLISP's potential has not yet been fully explored now with the advent of generative design, machine learning, and interfacing with ChatGPT and other AI solutions. I would say there is plenty of forward future available for AutoLISP and I am glad Autodesk has opened up LT to share in that future.
Autolisp, .net, and objectarx (c++) are fundamentally unlimited.
I have a whole list of programs we need at our civil firm, and I could do them in lisp or .net.
So many people throw in the latest terms like AI, as if they automatically help.
They don't, at all, if you do not have objects in your cad system that facilitate decisions AI might try to test and make. Forget about AI at the start, the more useful thing is a system a person can tweak and see the results. I argue that person can eliminate 95% of the millions of iterations the computer might do to "optimize" things. So there we go, now you must define what optimum means. Look at Bentley siteops to see an attempt at this for civils. Its super limited, and they worked hard at it.
So first you must program a parametric system using lisp, .net, whatever, then talk about having a computer try combinations of params to head towards some set of goals.
If you can do the first part, you will have so much money that the AI part will be trivial. We are that desperate for such tools in the civil area. Adesk could solve a lot of that if they wanted but it would take ongoing development and that is expensive.
internal protected virtual unsafe Human() : mostlyHarmless
I'm just here for the Shelties
I find for myself the greatest challenge is how long it takes to program a solution to a problem I am facing. In my industry, custom architectural millwork, there are very few repeated drawings so I usually just draw the things I need. For instance, I recently did 50 shop drawings for custom doors and frames, with details and schedules. Things were going well until the general contractor installed a different thickness of wall through the main corridor of the building. This meant I had to adjust the plans, sections, details, and schedules for many doors. At this point it would have been nice if the entire set of door shop drawings were generated by a parametric AutoLISP program driven by spreadsheet instead of fixing each view by hand. So my problem is these conditions do not repeat (at all) so I would have to build a different AutoLISP program mostly from scratch for each new project. It is the speed of programming that is my bottleneck, otherwise I would use AutoLISP everywhere. I think I have to teach AutoLISP to create parametric AutoLISP programs from AutoCAD drawings.
where there's a will there's almost always a way...
There has to be some commonality in the way you draw those doorways, even if it the dimensions used virtually never repeat. The trick is to identify what you are doing redundantly first and plan around a base point from there. As far as being editable or replaceable, that's where your block definitions have to be well planned. I'm an electrical guy, so I may be way off base here, but it would seem you want a process similar to what ACE uses for PLC I/O wiring diagrams. At least if you build the doorways as blocks, you should be able to replace several at once when you inevitably have to go back and modify things.
I think you are correct. As soon as I draw a typical door shop drawing I could see what parts change parametrically and what parts are common to all the shop drawings and code from that. Thinking about this I realize I should focus on generating a parametric AutoLISP program from existing drawing entities. That would likely be my best tool to make is a tool that can create AutoLISP programs from drawings. As for using the code again on future projects, my projects vary from high-end restaurants and bars to hotel lobby wall paneling. Nothing is the same from project to project but there are patterns I can exploit inside each project. I just have to start fresh each time. That is why I need to improve my coding speed to make this useful.
Have a look at this video for high rise window framing. The new version does sections as well. Dims included. It was for a huge window company doing skyscrapers, it also includes windows and doors which are parametric so they auto size to fit, the type being a visibility state. There is a link to excel so sizes are checked against appropriate standards and will be rejected if not suitable. Sorry all copyright to company.
I have an acquaintance who does doors programmatically and is just adding options all the time, will send a email he may get in touch with you but no guarantee.
This looks good. I built something like that in VectorScript for a tower project. It was for building the window schedule by picking points along the plan. I had it working for single storey glazing, but I had no solution for multi storey glazing. It helped though. My problem is I would need to code a fresh AutoLISP solution for each new project. All our projects are so custom there are few to none repeatable solutions. These replies are good for me. I am beginning to see a high speed AutoLISP program generator forming on the horizon of my mind,
Thanks!
I do Doors and Windows very often and have a decent library of routines for elevations (slabs & frames) My company does a lot of custom work so the trick is to make them parametric within standards. If your interested I could show you some examples, Have simple timesavers for things like lite patterns, drawing panels, inserting hatch marks or ones the just completely draw and dimension entire frames with transoms and mulls or draw and dimension whole slabs/windows with lite patterns. Message me here or email me @ Annoisscary@gmail.com
@annoisscary It is good to see you leveraging AutoLISP in your millwork. I definitely could have used something like that when I did my doors and frames. My challenge is, what do I when I face a 100 foot long wood veneer barrel vaulted corridor, or a stone clad wedge shaped reception desk where only the left side is touching the ground? I have a suspended 40 foot wide trapezoidal TV theatre for an social lounge currently on my plate. All my projects are completely different from each other. I am the person millwork companies call when they need something drawn that does not easily fit in their standard system. Imagine a ghostwriter but for architectural millwork drafting. Ghost-drafter? I look forward to chatting: draftinations@live.ca
Honestly, I know to some it may not be much, but I used full AutoCAD for the last 25 years in the company I was with.
After going self employed & working from home post pandemic, I just couldn't afford the full version for myself.
I found it hard adapting to not being able to use some of my commands, especially when moving to an area of the screen or to type something is so automatic to me I do it without thinking.
They may not be much , but I've missed being able to being able to: break all to a distance, replace one block with another, delete solid hatches, change a block to an xref, Import layer property filters and match attribute text to name a few.
I'd happily pay to be able to use the express add-in, without all the Modelling elements of full AutoCAD. That would be an amazing option for those of us that do have to compromise what they can afford to use.
I hear you. I work from home as well. I used to have access to full AutoCAD and was able to automate quite a bit of stuff. I had to chose between using a non-AutoCAD drafting tool that had AutoLisp and VBA or be 100% compatible with my client's files so I opted for AutoCAD LT and 100% compatibility leaving AutoLisp as a distant dream. That is one reason why a nearly jumped out of my chair when AutoLisp showed up in AutoCAD LT. The range of possibilities improved tremendously. I have to agree with you that some of the Express tools would be nice to get in AutoCAD LT. I also miss BLOCKWASH that was in AutoCAD for Architecture where it would clean up the insides of blocks to layer 0 and color BYLAYER.
So that blockwash is a perfect example where Bricscad would be useful as a secondary platform.
There are tons of lisps that clean blocks. You still save in acad last, if client cares.
Our block tools menu is long its, um, too long:
I make whatever people want and have all the subroutines waiting.
The client will never know you used bcad if the last save is in the adesk prog (as you know I'm sure).
internal protected virtual unsafe Human() : mostlyHarmless
I'm just here for the Shelties
Like James do all my client coding testing now in Bricscad, very small amount of things that is different between Acad and Brics. In some cases a simple work around is effective, in others do a check is it Acad or Brics. it normally is like 1-2 extra lines.
I have not tested Bricscad Lite, as I have a Pro version and thinking about going to latest version.
That looks interesting. I will have to check out BricsCAD as well for these extra tools. I still am grateful that there is now an AutoLisp inside AutoCAD LT. Thanks!
Just a comment rather than try to build parametric blocks I suggest do from 1st principles and draw the object, but using lisp with dcl interface, in some cases it may be do lisp1 then make a choice lisp45 or lisp46 for next step.
In the window lisp there are 3 end types so the code takes that into account bearing in mind that is 2 ends as have left and right, the only sort of parmetric is a draw rectang defun that gets used extensively.
Pick a couple of common tasks and start there, I would use defuns rather than 1 big by step code, this way you can make a library of functions that can be used in any code loading that lisp 1st. It saves time when writing a new function and keeps code shorter as your not duplicating lines of code. There are 28 defuns in the draw windows. Each having a primary task like dimensions.
I have to agree that I would find better use of AutoLISP if I have smaller routines combining into larger solutions. In essence I would be creating a new domain specific language on top of AutoLISP and create my solutions in that new domain specific language. That is the true Lisp way of programming. Thanks!
Can't find what you're looking for? Ask the community or share your knowledge.