Trả lời nhanh: Gõ APPLOAD, chọn file .lsp, bấm Load rồi gõ tên lệnh nằm sau chữ C: trong dòng defun. Muốn tự nạp, thêm file vào Startup Suite hoặc ACADDOC.lsp (LT là ACADLTDOC.lsp). AutoCAD LT từ bản 2024 cho Windows chạy được AutoLISP, nhưng không có VLIDE, không tạo 3D, không gọi ObjectARX hay ứng dụng ngoài.
"LISP AutoCAD" được tìm khoảng 720 lần mỗi tháng, nhiều nhất là câu hỏi cài file LISP thế nào và AutoCAD LT có chạy được không. Bài này hướng dẫn từng bước theo tài liệu chính thức của Autodesk, kèm danh sách giới hạn AutoLISP trên LT để bạn chọn đúng bản trước khi mua.
LISP trong AutoCAD là gì
AutoLISP là một biến thể của ngôn ngữ Lisp, được Autodesk đưa vào AutoCAD từ năm 1986 để mở rộng chức năng (blog AutoCAD của Autodesk). Với AutoLISP, bạn tự động hóa các thao tác lặp lại (mạnh hơn file script), chọn điểm, chọn đối tượng, nhập dữ liệu ở dòng lệnh hoặc qua hộp thoại viết bằng DCL (Dialog Control Language). Dân CAD Việt Nam gọi tắt là "LISP": file đuôi .lsp tải từ đồng nghiệp hay diễn đàn để đánh số, tính diện tích, đổi layer hàng loạt.
Ngoài file .lsp (văn bản đọc được), AutoCAD còn nạp được .fas và .vlx, là dạng đã biên dịch nên không mở ra đọc được.
AutoCAD LT có dùng LISP được không
Câu trả lời phụ thuộc phiên bản. Theo bài hỗ trợ của Autodesk:
| Phiên bản | AutoLISP | Ghi chú |
|---|---|---|
| AutoCAD LT 2023 trở về trước | Không | Không hỗ trợ VBA, AutoLISP hay ngôn ngữ lập trình khác |
| AutoCAD LT 2024 trở lên cho Windows | Có, có giới hạn | Hỗ trợ AutoLISP và DCL |
| AutoCAD (bản đầy đủ) | Có, đầy đủ | Thêm ActiveX đầy đủ, ObjectARX, .NET, VBA, biên dịch LISP |
| AutoCAD trên web | Có | Chỉ cho người có thuê bao AutoCAD (từ bản 2023) |
Nghĩa là nếu văn phòng đang dùng AutoCAD LT 2027, phần lớn file LISP 2D quen thuộc chạy được. Các giới hạn cụ thể của LT được Autodesk liệt kê trong What’s New or Changed with AutoLISP:
- Không có Visual LISP IDE (lệnh VLIDE, VLISP); không gỡ lỗi được bằng AutoLISP Extension của Visual Studio Code trong LT.
- Không tạo được khối 3D, mặt 3D, mesh; sửa đối tượng 3D chỉ hỗ trợ hạn chế.
entmake,entmakex,entmodchỉ tạo, sửa được loại đối tượng mà LT hỗ trợ.- Các hàm
VLA*tạo, sửa solid, surface, helix, vật liệu, multiline... không chạy. vlax-get-or-create-objectvà vlax-create-object không có trong LT, nên LISP điều khiển Excel, Word kiểu này không chạy.- Hàm do chương trình ObjectARX, .NET bên ngoài cung cấp không dùng được; LT cũng không chạy VBA.
- File MNL không tự nạp theo file CUIx cùng tên; nạp bằng hàm
loadtừ file LISP khác. - LT chạy được file LISP đã biên dịch, nhưng chỉ AutoCAD bản đầy đủ mới biên dịch được.
LT cho Mac: các trang trên ghi hỗ trợ AutoLISP cho "AutoCAD LT for Windows". Người dùng LT trên Mac nên thử trước file LISP cần dùng, hoặc hỏi TND trước khi mua.
Cách cài và chạy file LISP trong AutoCAD, AutoCAD LT
Các bước dưới làm được cả trên AutoCAD và AutoCAD LT 2024 trở lên (theo hướng dẫn của Autodesk):
- Lưu file
.lspvào một thư mục cố định, ví dụD:\CAD\LISP. Không để trong thư mục Downloads dễ bị dọn. - Gõ lệnh
APPLOAD, hoặc bấm biểu tượng trong panel Applications của tab Manage trên ribbon. - Trong hộp thoại Load/Unload Applications, tìm tới file, chọn rồi bấm Load. Dòng lệnh báo nạp thành công.
- Tìm tên lệnh để chạy: thường tác giả in hướng dẫn ra dòng lệnh. Nếu không, mở file bằng Notepad, tìm dòng
(defun C:TenLenh. Chữ đứng sauC:chính là lệnh cần gõ, không phân biệt hoa thường. - Gõ tên lệnh đó và Enter.
Hai cách nạp nhanh khác: kéo thả file .lsp vào cửa sổ AutoCAD, hoặc gõ ở dòng lệnh (load "tenfile.lsp") nếu file nằm trong đường dẫn tìm kiếm đã khai báo; nằm ngoài thì phải ghi đủ đường dẫn.
Cho LISP tự nạp mỗi khi mở bản vẽ
Nạp bằng APPLOAD chỉ có hiệu lực trong phiên làm việc hiện tại. Có hai cách để LISP tự nạp:
- Startup Suite: nằm ở góc dưới bên phải hộp thoại APPLOAD. Thêm file LISP vào Startup Suite thì file được nạp mỗi lần mở bản vẽ.
- File ACADDOC.lsp (AutoCAD) hoặc ACADLTDOC.lsp (AutoCAD LT): file này nạp mỗi khi mở một bản vẽ. Ban đầu chưa có, bạn tạo bằng Notepad và đặt trong một thư mục thuộc đường dẫn tìm kiếm. Khác Startup Suite, trong file này bạn còn chạy được lệnh, đặt biến hệ thống cho cả văn phòng.
Ví dụ nội dung ACADLTDOC.lsp (hoặc ACADDOC.lsp) theo bài của Autodesk: đặt biến hệ thống và tạo lệnh tắt MP chạy MATCHPROP.
(setvar "FILEDIA" 1)(setvar "CMDDIA" 1)(setvar "ATTDIA" 1)(setenv "ShowFullPathInTitle" "1") (defun c:mp () (command "_matchprop") (princ))Dùng Notepad hoặc trình soạn văn bản thuần để viết LISP, không dùng Word vì định dạng chữ sẽ làm hỏng mã.
Chạy thử AutoLISP ngay ở dòng lệnh
AutoCAD và AutoCAD LT tự thông dịch AutoLISP, nên bạn gõ trực tiếp biểu thức ở dòng lệnh. Một vài ví dụ trong bài của Autodesk:
| Gõ ở dòng lệnh | Kết quả |
|---|---|
(+ 2 2) | Trả về 4: AutoLISP viết toán tử trước |
(/ (* pi 12) 2) khi lệnh đang hỏi khoảng cách | Tính ra 18.8496 và dùng luôn làm khoảng cách |
(setq SS (ssget)) | Chọn một nhóm đối tượng phức tạp và lưu vào biến SS |
!SS khi lệnh hỏi chọn đối tượng | Gọi lại đúng nhóm đã chọn, khi bản vẽ còn mở |
Lập trình viên viết LISP chung cho cả hai bản có thể kiểm biến hệ thống PROGRAM: AutoCAD LT trả về acadlt, từ đó bỏ qua phần mã chỉ chạy trên AutoCAD đầy đủ.
LISP không chạy: kiểm theo thứ tự này
Vuốt ngang để xem đủ bảng.
| Hiện tượng | Nguyên nhân thường gặp | Cách xử lý |
|---|---|---|
| Gõ tên lệnh báo Unknown command | Chưa nạp file, hoặc gõ sai tên sau C: | APPLOAD lại, mở file kiểm dòng defun C: |
| Chạy trên AutoCAD được, LT báo lỗi | Mã dùng hàm LT không hỗ trợ (3D, vlax-create-object, ObjectARX) | Tìm bản LISP 2D khác hoặc dùng AutoCAD đầy đủ |
| File có dòng (vl-load-com), lệnh vla-, vlax- | Mã dùng ActiveX | LT hỗ trợ phần lớn, nhưng phần tạo 3D, gọi ứng dụng ngoài sẽ không chạy |
| Mở bản vẽ khác thì mất lệnh | Chỉ nạp bằng APPLOAD | Đưa vào Startup Suite hoặc ACADDOC.lsp, ACADLTDOC.lsp |
| AutoCAD LT 2023 trở về trước | Không hỗ trợ AutoLISP | Lên LT 2024 trở lên (thuê bao được dùng bản mới nhất) |
An toàn: LISP chạy được lệnh trên máy bạn. Chỉ nạp file từ nguồn tin cậy, mở bằng Notepad xem qua trước khi dùng, nhất là file .fas, .vlx không đọc được nội dung.
Dùng LISP nhiều thì chọn AutoCAD LT hay AutoCAD
| Nhu cầu | Gợi ý | Giá tại TND |
|---|---|---|
| Dùng LISP 2D có sẵn: đánh số, thống kê, đổi layer, ghi chú | AutoCAD LT 2027 | 12.800.000đ/năm |
| Tự viết, gỡ lỗi LISP; LISP điều khiển Excel; LISP 3D; VBA, .NET | AutoCAD 2027 kèm bộ công cụ chuyên ngành | 41.900.000đ/năm |
Các điểm khác giữa hai bản ngoài LISP: xem AutoCAD LT và AutoCAD full khác nhau gì. Muốn thử LISP trên bản chính hãng trước khi mua: tải AutoCAD bản dùng thử chính hãng. Toàn bộ phần mềm CAD TND đang bán, có hóa đơn VAT: phần mềm CAD bản quyền.
Câu hỏi thường gặp
AutoCAD LT có chạy LISP không?
Có, từ AutoCAD LT 2024 cho Windows. Bản LT 2023 trở về trước không hỗ trợ AutoLISP.
Lệnh APPLOAD dùng để làm gì?
APPLOAD mở hộp thoại Load/Unload Applications để nạp file .lsp, .fas, .vlx và quản lý Startup Suite.
Nạp LISP xong gõ lệnh gì để chạy?
Mở file .lsp bằng Notepad, tìm dòng (defun C:...). Chữ ngay sau C: là tên lệnh cần gõ.
Làm sao để LISP tự nạp mỗi khi mở AutoCAD?
Thêm file vào Startup Suite trong hộp thoại APPLOAD, hoặc gọi (load "tenfile.lsp") trong ACADDOC.lsp (AutoCAD), ACADLTDOC.lsp (AutoCAD LT).
Vì sao LISP chạy trên AutoCAD nhưng lỗi trên AutoCAD LT?
Mã có thể dùng hàm LT không hỗ trợ: tạo 3D, vlax-create-object, hàm của ObjectARX hoặc .NET, VBA.
Viết và gỡ lỗi LISP thì cần bản nào?
AutoCAD bản đầy đủ. AutoCAD LT không có Visual LISP IDE và không gỡ lỗi được bằng AutoLISP Extension của VS Code.



