Merge from emacs-24; up to 2012-04-21T14:12:27Z!sdl.web@gmail.com
[emacs.git] / lisp / play / meese.el
blobd811dacb9bc888633f0edff5199d64fbdacc9a62
1 ;;; meese.el --- protect the impressionable young minds of America
3 ;; This is in the public domain on account of being distributed since
4 ;; 1985 or 1986 without a copyright notice.
6 ;; This file is part of GNU Emacs.
8 ;; Maintainer: FSF
9 ;; Keywords: games
11 ;;; Commentary:
13 ;; Adds a hook to protect the impressionable young minds of America
14 ;; from reading certain files in the Emacs distribution using Emacs.
16 ;; This file is named after Ed Meese, the US Attorney General
17 ;; under President Reagan, because of his support for censorship.
19 ;;; Code:
21 (defun protect-innocence-hook ()
22 (let ((dir (file-name-directory buffer-file-name)))
23 (if (and (equal buffer-file-name (expand-file-name "sex.6" dir))
24 (file-exists-p buffer-file-name)
25 (not (y-or-n-p "Are you over 18? ")))
26 (progn
27 (clear-visited-file-modtime)
28 (setq buffer-file-name (expand-file-name "celibacy.1" dir))
29 (let ((inhibit-read-only t)) ; otherwise (erase-buffer) may bomb.
30 (erase-buffer)
31 (insert-file-contents buffer-file-name t))
32 (rename-buffer (file-name-nondirectory buffer-file-name))))))
34 (add-hook 'find-file-hook 'protect-innocence-hook)
35 (provide 'meese)
37 ;;; meese.el ends here