2026. 3. 29.

캐드 리습(LISP) 쓰는 법 — 작업을 더 빠르게

캐드 리습(LISP) 쓰는 법 — 작업을 더 빠르게

오토캐드(AutoCAD), ZWCAD에서 리습(LISP)은 한 번 맛들이면 없이는 못 사는 기능이다. 반복적으로 하던 작업이 명령어 두 글자로 끝나고, 여러 단계를 거쳐야 했던 작업이 클릭 한 번으로 처리된다. 직접 코드를 짤 줄 몰라도 괜찮다. 인터넷에 올라와 있는 리습 파일을 불러다 쓰는 것만 알아도 작업 속도가 확 달라진다. 어떻게 불러오는지, 매번 불러오지 않아도 되게 자동 로드는 어떻게 설정하는지, 그리고 실무에서 바로 쓸 수 있는 리습은 어떤 게 있는지 정리했다.


리습이란

리습(LISP)은 캐드에 내장된 자동화 프로그래밍 언어다. 쉽게 말하면, 내가 자주 쓰는 명령어 조합을 하나의 단축 명령으로 묶어두는 것. 직접 만들 수도 있고, 인터넷에서 누군가 만들어 공유한 걸 그냥 가져다 쓸 수도 있다.

리습 파일 확장자는 .lsp. 메모장으로 열면 코드가 그냥 다 보인다.

AutoCAD와 ZWCAD 둘 다 리습을 지원한다. 사용법도 거의 동일.


리습 파일 불러오는 법 (APPLOAD)

.lsp 파일을 캐드에 불러오는 방법.

AutoCAD / ZWCAD 공통
명령창에 APPLOAD 입력 → Enter
(또는 단축키 AP)

  1. 응용프로그램 로드 창에서 .lsp 파일 위치로 이동
  2. 파일 선택 → 로드 클릭 → 닫기
  3. 명령창에 해당 리습의 명령어 입력 → 실행
캐드를 껐다 켜면 다시 불러와야 한다. 매번 로드하기 번거롭다면 아래 자동 로드 설정 사용.

캐드 시작할 때 자동으로 로드하기

  1. 명령창에 APPLOAD 입력
  2. 하단 목차(Contents)시작하기 세트(Startup Suite)추가
  3. 사용할 .lsp 파일 선택 → 열기 → 닫기

이후 캐드 실행할 때마다 자동 로드. 한 번만 설정해두면 끝.

신뢰할 수 없는 위치 경고창이 뜬다면
OP → 파일 탭 → 신뢰할 수 있는 위치 → 추가 → 리습 파일이 있는 폴더 등록
APPLOAD를 치면 뜨는 창화면

Startup Suite를 클릭하면 뜨는 창화면



실무에서 바로 쓰는 리습 예시

아래는 실제로 쓰고 있는 리습들이다. 직접 코드를 짤 필요 없이 파일만 로드하면 바로 사용 가능.

TT — 문자 내용 복사

원본 텍스트(또는 치수)를 선택하면 같은 내용을 다른 문자 객체에 한 번에 덮어쓴다. 같은 수치나 문구를 여러 곳에 적용할 때 유용.

명령어: TT

  1. TT 입력 → 원본 객체 선택
  2. 내용을 바꿀 문자/치수 객체들 선택 → Enter

BN — 블록 이름 변경

블록을 선택하고 새 이름을 입력하면 블록 이름이 변경된다. 기존에는 블록 분해 후 재정의해야 했던 작업을 한 번에 처리.

명령어: BN

  1. BN 입력 → 이름 바꿀 블록 선택
  2. 새 블록 이름 입력 → Enter

DF / AF / AA — 레이어 ON/OFF 토글

객체를 클릭하면 그 객체가 속한 레이어를 끄거나 켜는 기능. 레이어 창 열 필요 없이 화면에서 바로 처리.

  • DF — 클릭한 객체의 레이어 끄기
  • AF — 선택한 레이어만 남기고 나머지 전부 끄기
  • AA — 꺼진 레이어 전부 켜기

DIET — 파일 용량 줄이기 (퍼지 후 저장)

도면 파일이 불필요하게 커졌을 때 한 번에 정리. AUDIT, PURGE, 유령 객체 삭제, 축척 목록 정리까지 자동으로 실행하고 저장까지 마무리.

명령어: DIET

실행하면 자동으로 전부 처리. 대용량 도면 정리할 때 특히 효과적.

HPL — 해치 바운더리 생성

해치 영역의 경계선을 폴리선으로 자동 생성. 면적 계산이나 경계 편집이 필요할 때 사용.

명령어: HPL

KK — 면적 계산 + 바운더리 생성

클릭한 점 기준으로 바운더리를 자동 생성하고, 면적 수치를 도면에 바로 텍스트로 기입. 면적 계산 후 일일이 입력할 필요 없음.

명령어: KK

  1. KK 입력 → 텍스트 높이 입력
  2. 면적을 구할 영역 안쪽 클릭
  3. 면적 수치가 해당 위치에 자동 기입

NP — 선택한 숫자 문자 합산

도면 안에 흩어져 있는 숫자 텍스트들을 선택하면 전체 합계를 계산해서 지정 위치에 기입. 수량 합산 작업에 유용.

명령어: NP

  1. NP 입력 → 합산할 숫자 텍스트들 선택 → Enter
  2. 결과값 기입할 위치 클릭

IL — 단열재 표현 자동 그리기

두 점을 지정하면 단열재(insulation) 패턴을 자동으로 그려준다. 건축 도면 작업 시 반복 드로잉 없이 빠르게 표현 가능.

명령어: IL

  1. IL 입력 → 두께 입력
  2. 시작점 → 끝점 클릭

기타 유용한 리습 - 리습 파일 만들어보기

직접 코드를 짤 필요 없다. 아래처럼 이미 만들어진 리습을 가져다 쓰는 것 만으로도 작업 속도가 확 달라진다. 메모장을 열고 각 내용을 복사하여 붙여 넣은 후, 파일이름은 명령어.lsp 라고 저장하면 된다. 파일 이름에 어떤 기능인지 설명도 달아주면, 추후 리습 파일 관리가 편해진다.

1. 선택한 객체 레이어로 현재 레이어 바꾸기

작업 중 다른 레이어 객체를 클릭하면 그 레이어로 바로 전환. 매번 레이어 창 열 필요 없음.

(defun c:SL ()
  (setvar "clayer"
    (cdr (assoc 8 (entget (car (entsel "\n레이어 바꿀 객체 선택: "))))))
  (princ)
)

저장 → 로드 후 명령창에 SL 입력

2. 선택 객체를 현재 레이어로 이동

다른 레이어에 있는 객체를 현재 레이어로 한 번에 옮길 때.

(defun c:ML ()
  (command "_.chprop" (ssget) "" "la" (getvar "clayer") "")
  (princ)
)

저장 → 로드 후 명령창에 ML 입력

3. 문자 높이 일괄 변경

여러 문자 객체의 높이를 한 번에 바꿀 때. 일일이 선택해서 특성 바꾸는 수고 없음.

(defun c:TH ()
  (setq h (getreal "\n변경할 문자 높이 입력: "))
  (setq ss (ssget '((0 . "TEXT,MTEXT"))))
  (setq i 0)
  (while (< i (sslength ss))
    (setq en (ssname ss i))
    (setq ed (entget en))
    (entmod (subst (cons 40 h) (assoc 40 ed) ed))
    (setq i (1+ i))
  )
  (princ)
)

저장 → 로드 후 명령창에 TH 입력


리습 파일 어디서 구하나

직접 만들기 어렵다면 아래 사이트에서 검색해서 가져다 쓰면 된다.

  • lee-mac.com — 영문이지만 실무용 리습이 가장 많음
  • afralisp.net — 다양한 리습 예제
  • vbcad.co.kr — 국내 캐드 커뮤니티, 한글 리습 공유
  • 네이버 카페 고캐드(gocad) — 국내 사용자들이 직접 만든 리습 다수

아무래도 레슨이 필요하다면→크몽에서 '에치에치'
궁금한 점은 댓글로.

댓글 없음:

댓글 쓰기