;;;Apply word wrap to a text string (makes multiple lines from single line). ;;;Uses ABRKSTR.LSP, UINT.LSP. ;;; ;;;Added L2 L3 L4 macros for quick multiline breaks. ;;; ;;;> Author: Henry C. Francis ;;;> 425 N. Ashe St. ;;;> Southern Pines, NC 28387 ;;;> http://paracadd.com ;;;> All rights reserved. ;;; ;;;> COPYRIGHT: 10-4-98 ;;;> EDITED: 01-09-2007 ;;; (DEFUN C:ABSTR (/ typ_t1 typ_t2 typ_t3 typ_t4 typ_t5 typ_t6 typ_t7 typ_t8 typ_t9 typ_t10 count ) (COMMAND ".UNDO" "M") (SETQ count 1) (IF (EQ (TYPE wrap_it)'INT) NIL (SETQ wrap_it NIL) ) (WHILE (EVAL (READ (STRCAT "typ_t" (ITOA COUNT)))) (SET (READ (STRCAT "typ_t" (ITOA COUNT))) NIL) (SETQ count (1+ count)) ) ;_ end of WHILE (IF uint NIL (LOAD "uint" "File UINT.LSP not found!") ) (IF prewrap_it (SETQ wrap_it prewrap_it COUNT 2) (SETQ WRAP_IT (UINT 1 "Match L2 L3 L4 L5 L6 L7 L8 L9 L10" "Emter wrap length, No. of lines or atch existing text length" (IF wrap_it wrap_it 24 ) ;_ end of if ) ;_ end of UINT COUNT 2 ) ;_ end of SETQ ) (COND ((EQ WRAP_IT "Match") (PROGN (WHILE (OR (NOT(SETQ MATCH_TEXT (ENTSEL "\nSelect text to match. ")))(/=(CDR(ASSOC 0 (ENTGET(CAR MATCH_TEXT))))"TEXT"))) (SETQ WRAP_IT (STRLEN (CDR(ASSOC 1 (ENTGET(CAR MATCH_TEXT)))))) )) ) (WHILE (AND (NOT (SETQ text_ent (ENTGET (CAR (ENTSEL "\nSelect text to break: "))) ) ;_ end of SETQ ) ;_ end of NOT (NOT (EQ "TEXT" (CDR (ASSOC 0 text_ent) ) ;_ end of assoc ) ;_ end of cdr ) ;_ end of eq ) ;_ end of not ) ;_ end of while (COND ((EQ WRAP_IT "L2") (SETQ WRAP_IT (+(FIX(/(STRLEN (CDR(ASSOC 1 text_ent)))2.0))3))) ((EQ WRAP_IT "L3") (SETQ WRAP_IT (+(FIX(/(STRLEN (CDR(ASSOC 1 text_ent)))3.0))3))) ((EQ WRAP_IT "L4") (SETQ WRAP_IT (+(FIX(/(STRLEN (CDR(ASSOC 1 text_ent)))4.0))3))) ((EQ WRAP_IT "L5") (SETQ WRAP_IT (+(FIX(/(STRLEN (CDR(ASSOC 1 text_ent)))5.0))3))) ((EQ WRAP_IT "L6") (SETQ WRAP_IT (+(FIX(/(STRLEN (CDR(ASSOC 1 text_ent)))6.0))3))) ((EQ WRAP_IT "L7") (SETQ WRAP_IT (+(FIX(/(STRLEN (CDR(ASSOC 1 text_ent)))7.0))3))) ((EQ WRAP_IT "L8") (SETQ WRAP_IT (+(FIX(/(STRLEN (CDR(ASSOC 1 text_ent)))8.0))3))) ((EQ WRAP_IT "L9") (SETQ WRAP_IT (+(FIX(/(STRLEN (CDR(ASSOC 1 text_ent)))9.0))3))) ((EQ WRAP_IT "L10") (SETQ WRAP_IT (+(FIX(/(STRLEN (CDR(ASSOC 1 text_ent)))10.0))3))) ) (IF abrkstr nil (LOAD "abrkstr" "File ABRKSTR.LSP not found! ") ) ;_ end of if (abrkstr (CDR (ASSOC 1 text_ent)) wrap_it) (SETQ newt_1 (SUBST (CONS 1 typ_t1) (ASSOC 1 text_ent) text_ent)) (ENTMOD newt_1) (WHILE (EVAL (READ (STRCAT "typ_t" (ITOA COUNT)))) (PROGN (SET (READ (STRCAT "newt_" (ITOA COUNT))) (SUBST (CONS (IF (OR (/= (CDR (ASSOC 72 TEXT_ENT)) 0) (/= (CDR (ASSOC 73 TEXT_ENT)) 0) ) ;_ end of AND 11 10 ) ;_ end of IF (POLAR (CDR (ASSOC (IF (OR (/= (CDR (ASSOC 72 TEXT_ENT)) 0) (/= (CDR (ASSOC 73 TEXT_ENT)) 0) ) ;_ end of AND 11 10 ) ;_ end of IF (EVAL (READ (STRCAT "newt_" (ITOA (1- COUNT))))) ) ;_ end of ASSOC ) ;_ end of CDR (+ (CDR (ASSOC 50 text_ent)) (* PI 1.5)) (* (CDR (ASSOC 40 text_ent)) 1.5) ) ;_ end of polar ) ;_ end of cons (ASSOC (IF (OR (/= (CDR (ASSOC 72 TEXT_ENT)) 0) (/= (CDR (ASSOC 73 TEXT_ENT)) 0) ) ;_ end of AND 11 10 ) ;_ end of IF (EVAL (READ (STRCAT "newt_" (ITOA (1- COUNT))))) ) ;_ end of ASSOC (EVAL (READ (STRCAT "newt_" (ITOA (1- COUNT))))) ) ;_ end of subst ) ;_ end of set (ENTMAKE (CDR (EVAL (READ (STRCAT "newt_" (ITOA COUNT)))))) (SETQ cur_text (SUBST (CONS 1 (EVAL (READ (STRCAT "typ_t" (ITOA count))))) (ASSOC 1 (ENTGET (ENTLAST))) (ENTGET (ENTLAST)) ) ;_ end of SUBST ) ;_ end of SETQ (ENTMOD cur_text) (SETQ COUNT (1+ COUNT)) ) ;_ end of progn ) ;_ end of WHILE (SETQ COUNT 1) (WHILE (EVAL (READ (STRCAT "newt_" (ITOA COUNT)))) (SET (READ (STRCAT "newt_" (ITOA COUNT))) NIL) (SETQ count (1+ count)) ) ;_ end of WHILE (SETQ count 1) (WHILE (EVAL (READ (STRCAT "typ_t" (ITOA COUNT)))) (SET (READ (STRCAT "typ_t" (ITOA COUNT))) NIL) (SETQ count (1+ count)) ) ;_ end of WHILE (PRINC) ) ;_ end of DEFUN (defun c:l2 ( / prewrap_it) (setq prewrap_it "L2") (c:abstr) (princ) ) (defun c:l3 ( / prewrap_it) (setq prewrap_it "L3") (c:abstr) (princ) ) (defun c:l4 ( / prewrap_it) (setq prewrap_it "L4") (c:abstr) (princ) ) ;|«Visual LISP© Format Options» (72 2 40 2 T "end of " 60 9 2 0 0 T T nil T) ***Don't add text below the comment!***|;