view lisp/play/meese.el @ 25694:475a9b6bd640

Support print-circle and related features. (Vprint_gensym_alist): Removed. (Vprint_circle, Vprint_continuous_numbering, print_number_index Vprint_number_table): New variables. (PRINT_NUMBER_OBJECT, PRINT_NUMBER_STATUS): New macros. (PRINTPREPARE, PRINTFINISH): Don't set Vprint_gensym_alist. (print, print_preprocess, print_preprocess_string, print_object): New/modified functions with print-circle feature. Use Vprint_number_table instead of Vprint_gensym_alist for print-gensym. (syms_of_print): Defined new Lisp variables `print-circle', `print-continuous-numbering', `print-number-table'.
author Richard M. Stallman <rms@gnu.org>
date Mon, 13 Sep 1999 19:26:18 +0000
parents 9127591ba072
children 66c03b43ceb8
line wrap: on
line source

;;; meese.el --- protect the impressionable young minds of America

;; This is in the public domain on account of being distributed since
;; 1985 or 1986 without a copyright notice.

;; Maintainer: FSF
;; Keywords: games

;;; Code:

(defun protect-innocence-hook ()
  (let ((dir (file-name-directory buffer-file-name)))
    (if (and (equal buffer-file-name (expand-file-name "sex.6" dir))
	     (file-exists-p buffer-file-name)
	     (not (y-or-n-p "Are you over 18? ")))
	(progn
	  (clear-visited-file-modtime)
	  (setq buffer-file-name (expand-file-name "celibacy.1" dir))
	  (let ((inhibit-read-only t))	; otherwise (erase-buffer) may bomb.
	    (erase-buffer)
	    (insert-file-contents buffer-file-name t))
	  (rename-buffer (file-name-nondirectory buffer-file-name))))))

(add-hook 'find-file-hooks 'protect-innocence-hook)
(provide 'meese)

;;; meese.el ends here