I use this lisp to keep track of files i work on, whenever i hit save it writes the details to a log file.
While I find it indispensable for keeping track of my work over the week, for timesheet purposes, it's quite big, every time i hit save, it writes a line containg the time date and drawing details.
How could I change this so that it only kept a log of each drawing once?
(DEFUN C:QSAVEIT ()
(setq V1 (menucmd "M=$(edtime, $(getvar,date),DDDD)")
TM (menucmd "M=$(edtime, $(getvar,date),hh:mm:ss)")
MO (menucmd "M=$(edtime, $(getvar,date),MOnth)")
DAY (menucmd "M=$(edtime, $(getvar,date),DD)")
YR (menucmd "M=$(edtime, $(getvar,date),yyyy)")
DP (STRCAT (getvar "dwgprefix") (getvar "dwgname"))
DATE (strcat V1 ", " MO " " DAY ", " YR " " TM " - " DP))
(setq logfile "c:\\logfiles\\LOGFILE.TXT") ;<- set logfile name to variable
(if (findfile logfile) ;<- check to see if logfile exists
(setq TX (open "c:\\logfiles\\LOGFILE.TXT" "a")) ;<- if exists, append to log file
(setq TX (open "c:\\logfiles\\LOGFILE.TXT" "w"));<- if does not exist, create file
)
(write-line Date TX)
(close TX)
(COMMAND "QSAVE")
(princ)
)