;;; -*- Mode:LISP; Readtable:CL; Base:10 -*-

;;; SST Generic lispm.init


;;;   defines commonly used stuff

;;;   NIC June 85




(common-lisp t t)				;nobody should be using zeta




;;;log the fact that someone has logged in

(with-open-file (str "lama:nick.login;result.text"
		     :direction :output :if-exists :append)
  (format str "~&Login ... ~A ~A" user-id (time:print-current-time nil :dd-mmm-yy)))




;;;set up so that when they log out that gets logged too ...

(advise logout :around test-results nil
  (with-open-file (str "lama:nick.login;result.text"
		       :direction :output :if-exists :append)
    (format str "~&   logout ~A ~A~&--------------------------" user-id (time:print-current-time nil :dd-mmm-yy)))
  :do-it
  (format t "~&Please remember to cold-boot the machine ...
~&      That's ctrl-meta-ctrl-meta-rubout ...")
  (unadvise logout))




;;;bug reporting software.  Periodically clean this file and send to LMI

(defun bugg (&optional (title "") &aux (line t))
  "Logs bug information to \"lama:nick.login;bug.text\"."
  (format t "~&Type a short description of the nature of the bug.  Use null line to terminate.~&")
  (with-open-file (str "lama:nick.login;bug.text"
		       :direction :output :if-exists :append)
    (format str "~&~A ~A    ~A"
	    user-id (time:print-current-time nil :dd-mmm-yy) title)
    (loop until (string-equal line "")
	  (setq line (read-line))
	  (format str "~&    ~A" line))))




;People never remember where the tape software is ...

(defun tape ()
  "Loads tape utilities."
  (load "lama:nick.login;tape.lisp")
  (with-open-file (s "half-inch-tape:"))
  (format t "~&Magtape utilities: complete-dump, incremental-dump, dump, lf, restore, and rew are now defined.
~&    Please use ctrl-abort to interrupt any tape utility."))




(fs:set-default-pathname (user-homedir-pathname))




;;; zwei initializations

(load "lama:nick.login;zwei-patches" :verbose nil)

(setq zwei::*region-marking-mode* :reverse-video
      zwei::*region-right-margin-mode* t)




;Probably should call the motd here ...




(format t "~&  Use (bugg \"title\") to report bugs.
~&  Use (tape) to load tape utilities.
~&Please logout when finished.")
