annotate lisp/play/spook.el @ 71019:82cce6834b5d

(get_phys_cursor_geometry): Return computed x and y through parameters. Adjust x and width in case cursor in on a partially visible stretch glyph on the left edge. (erase_phys_cursor): Don't erase into left fringe/margin in case previous cursor glyph is a partially visible stretch glyph on left.
author Kim F. Storm <storm@cua.dk>
date Sat, 27 May 2006 22:36:58 +0000
parents 836785857446
children f7702c5f335d c5406394f567
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
658
7cbd4fcd8b0f *** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents: 444
diff changeset
1 ;;; spook.el --- spook phrase utility for overloading the NSA line eater
7cbd4fcd8b0f *** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents: 444
diff changeset
2
64701
34bd8e434dd7 Update years in copyright notice; nfc.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 64085
diff changeset
3 ;; Copyright (C) 1988, 1993, 2002, 2003, 2004,
68634
836785857446 Update copyright notices of all files in the lisp/play directory.
Romain Francoise <romain@orebokech.com>
parents: 64701
diff changeset
4 ;; 2005, 2006 Free Software Foundation, Inc.
841
2cdce064065f entered into RCS
Eric S. Raymond <esr@snark.thyrsus.com>
parents: 814
diff changeset
5
814
38b2499cb3e9 *** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents: 807
diff changeset
6 ;; Maintainer: FSF
38b2499cb3e9 *** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents: 807
diff changeset
7 ;; Keywords: games
2315
9e7ec92a4fdf Added or corrected Commentary headers
Eric S. Raymond <esr@snark.thyrsus.com>
parents: 1219
diff changeset
8 ;; Created: May 1987
787
3cece0106722 *** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents: 658
diff changeset
9
36
9697c13298e5 Initial revision
Joseph Arceneaux <jla@gnu.org>
parents:
diff changeset
10 ;; This file is part of GNU Emacs.
9697c13298e5 Initial revision
Joseph Arceneaux <jla@gnu.org>
parents:
diff changeset
11
9697c13298e5 Initial revision
Joseph Arceneaux <jla@gnu.org>
parents:
diff changeset
12 ;; GNU Emacs is free software; you can redistribute it and/or modify
9697c13298e5 Initial revision
Joseph Arceneaux <jla@gnu.org>
parents:
diff changeset
13 ;; it under the terms of the GNU General Public License as published by
807
4f28bd14272c *** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents: 787
diff changeset
14 ;; the Free Software Foundation; either version 2, or (at your option)
36
9697c13298e5 Initial revision
Joseph Arceneaux <jla@gnu.org>
parents:
diff changeset
15 ;; any later version.
9697c13298e5 Initial revision
Joseph Arceneaux <jla@gnu.org>
parents:
diff changeset
16
9697c13298e5 Initial revision
Joseph Arceneaux <jla@gnu.org>
parents:
diff changeset
17 ;; GNU Emacs is distributed in the hope that it will be useful,
9697c13298e5 Initial revision
Joseph Arceneaux <jla@gnu.org>
parents:
diff changeset
18 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of
9697c13298e5 Initial revision
Joseph Arceneaux <jla@gnu.org>
parents:
diff changeset
19 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
9697c13298e5 Initial revision
Joseph Arceneaux <jla@gnu.org>
parents:
diff changeset
20 ;; GNU General Public License for more details.
9697c13298e5 Initial revision
Joseph Arceneaux <jla@gnu.org>
parents:
diff changeset
21
9697c13298e5 Initial revision
Joseph Arceneaux <jla@gnu.org>
parents:
diff changeset
22 ;; You should have received a copy of the GNU General Public License
14169
83f275dcd93a Update FSF's address.
Erik Naggum <erik@naggum.no>
parents: 4091
diff changeset
23 ;; along with GNU Emacs; see the file COPYING. If not, write to the
64085
18a818a2ee7c Update FSF's address.
Lute Kamstra <lute@gnu.org>
parents: 52401
diff changeset
24 ;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
18a818a2ee7c Update FSF's address.
Lute Kamstra <lute@gnu.org>
parents: 52401
diff changeset
25 ;; Boston, MA 02110-1301, USA.
36
9697c13298e5 Initial revision
Joseph Arceneaux <jla@gnu.org>
parents:
diff changeset
26
787
3cece0106722 *** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents: 658
diff changeset
27 ;;; Commentary:
36
9697c13298e5 Initial revision
Joseph Arceneaux <jla@gnu.org>
parents:
diff changeset
28
14169
83f275dcd93a Update FSF's address.
Erik Naggum <erik@naggum.no>
parents: 4091
diff changeset
29 ;; Steve Strassmann <straz@media-lab.media.mit.edu> didn't write
83f275dcd93a Update FSF's address.
Erik Naggum <erik@naggum.no>
parents: 4091
diff changeset
30 ;; this, and even if he did, he really didn't mean for you to use it
83f275dcd93a Update FSF's address.
Erik Naggum <erik@naggum.no>
parents: 4091
diff changeset
31 ;; in an anarchistic way.
83f275dcd93a Update FSF's address.
Erik Naggum <erik@naggum.no>
parents: 4091
diff changeset
32 ;;
83f275dcd93a Update FSF's address.
Erik Naggum <erik@naggum.no>
parents: 4091
diff changeset
33 ;; To use this:
83f275dcd93a Update FSF's address.
Erik Naggum <erik@naggum.no>
parents: 4091
diff changeset
34 ;; Just before sending mail, do M-x spook.
83f275dcd93a Update FSF's address.
Erik Naggum <erik@naggum.no>
parents: 4091
diff changeset
35 ;; A number of phrases will be inserted into your buffer, to help
83f275dcd93a Update FSF's address.
Erik Naggum <erik@naggum.no>
parents: 4091
diff changeset
36 ;; give your message that extra bit of attractiveness for automated
83f275dcd93a Update FSF's address.
Erik Naggum <erik@naggum.no>
parents: 4091
diff changeset
37 ;; keyword scanners. Help defeat the NSA trunk trawler!
36
9697c13298e5 Initial revision
Joseph Arceneaux <jla@gnu.org>
parents:
diff changeset
38
787
3cece0106722 *** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents: 658
diff changeset
39 ;;; Code:
3cece0106722 *** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents: 658
diff changeset
40
3384
55e7bbf78b1a Use cookie1.el.
Richard M. Stallman <rms@gnu.org>
parents: 2320
diff changeset
41 (require 'cookie1)
2320
ee096523431c Modified to use cookie.el
Eric S. Raymond <esr@snark.thyrsus.com>
parents: 2315
diff changeset
42
36
9697c13298e5 Initial revision
Joseph Arceneaux <jla@gnu.org>
parents:
diff changeset
43 ; Variables
21363
f1fc193b6958 Customized.
Stephen Eglen <stephen@gnu.org>
parents: 18383
diff changeset
44 (defgroup spook nil
f1fc193b6958 Customized.
Stephen Eglen <stephen@gnu.org>
parents: 18383
diff changeset
45 "Spook phrase utility for overloading the NSA line eater."
f1fc193b6958 Customized.
Stephen Eglen <stephen@gnu.org>
parents: 18383
diff changeset
46 :prefix "spook-"
f1fc193b6958 Customized.
Stephen Eglen <stephen@gnu.org>
parents: 18383
diff changeset
47 :group 'games)
36
9697c13298e5 Initial revision
Joseph Arceneaux <jla@gnu.org>
parents:
diff changeset
48
32296
dbb638e8f5d5 (spook-phrases-file): Use expand-file-name, not
Dave Love <fx@gnu.org>
parents: 21363
diff changeset
49 (defcustom spook-phrases-file (expand-file-name "spook.lines" data-directory)
21363
f1fc193b6958 Customized.
Stephen Eglen <stephen@gnu.org>
parents: 18383
diff changeset
50 "Keep your favorite phrases here."
f1fc193b6958 Customized.
Stephen Eglen <stephen@gnu.org>
parents: 18383
diff changeset
51 :type 'file
f1fc193b6958 Customized.
Stephen Eglen <stephen@gnu.org>
parents: 18383
diff changeset
52 :group 'spook)
f1fc193b6958 Customized.
Stephen Eglen <stephen@gnu.org>
parents: 18383
diff changeset
53
f1fc193b6958 Customized.
Stephen Eglen <stephen@gnu.org>
parents: 18383
diff changeset
54 (defcustom spook-phrase-default-count 15
f1fc193b6958 Customized.
Stephen Eglen <stephen@gnu.org>
parents: 18383
diff changeset
55 "Default number of phrases to insert."
f1fc193b6958 Customized.
Stephen Eglen <stephen@gnu.org>
parents: 18383
diff changeset
56 :type 'integer
f1fc193b6958 Customized.
Stephen Eglen <stephen@gnu.org>
parents: 18383
diff changeset
57 :group 'spook)
36
9697c13298e5 Initial revision
Joseph Arceneaux <jla@gnu.org>
parents:
diff changeset
58
1219
3e9034e7bebf (spook): Make it autoload.
Richard M. Stallman <rms@gnu.org>
parents: 841
diff changeset
59 ;;;###autoload
36
9697c13298e5 Initial revision
Joseph Arceneaux <jla@gnu.org>
parents:
diff changeset
60 (defun spook ()
9697c13298e5 Initial revision
Joseph Arceneaux <jla@gnu.org>
parents:
diff changeset
61 "Adds that special touch of class to your outgoing mail."
9697c13298e5 Initial revision
Joseph Arceneaux <jla@gnu.org>
parents:
diff changeset
62 (interactive)
4091
51d19cce579f (snarf-spooks): Restore function.
Roland McGrath <roland@gnu.org>
parents: 3384
diff changeset
63 (cookie-insert spook-phrases-file
51d19cce579f (snarf-spooks): Restore function.
Roland McGrath <roland@gnu.org>
parents: 3384
diff changeset
64 spook-phrase-default-count
51d19cce579f (snarf-spooks): Restore function.
Roland McGrath <roland@gnu.org>
parents: 3384
diff changeset
65 "Checking authorization..."
51d19cce579f (snarf-spooks): Restore function.
Roland McGrath <roland@gnu.org>
parents: 3384
diff changeset
66 "Checking authorization...Approved"))
36
9697c13298e5 Initial revision
Joseph Arceneaux <jla@gnu.org>
parents:
diff changeset
67
4091
51d19cce579f (snarf-spooks): Restore function.
Roland McGrath <roland@gnu.org>
parents: 3384
diff changeset
68 ;;;###autoload
51d19cce579f (snarf-spooks): Restore function.
Roland McGrath <roland@gnu.org>
parents: 3384
diff changeset
69 (defun snarf-spooks ()
51d19cce579f (snarf-spooks): Restore function.
Roland McGrath <roland@gnu.org>
parents: 3384
diff changeset
70 "Return a vector containing the lines from `spook-phrases-file'."
51d19cce579f (snarf-spooks): Restore function.
Roland McGrath <roland@gnu.org>
parents: 3384
diff changeset
71 (cookie-snarf spook-phrases-file
51d19cce579f (snarf-spooks): Restore function.
Roland McGrath <roland@gnu.org>
parents: 3384
diff changeset
72 "Checking authorization..."
51d19cce579f (snarf-spooks): Restore function.
Roland McGrath <roland@gnu.org>
parents: 3384
diff changeset
73 "Checking authorization...Approved"))
51d19cce579f (snarf-spooks): Restore function.
Roland McGrath <roland@gnu.org>
parents: 3384
diff changeset
74
51d19cce579f (snarf-spooks): Restore function.
Roland McGrath <roland@gnu.org>
parents: 3384
diff changeset
75 ;; Note: the implementation that used to take up most of this file has been
51d19cce579f (snarf-spooks): Restore function.
Roland McGrath <roland@gnu.org>
parents: 3384
diff changeset
76 ;; cleaned up, generalized, gratuitously broken by esr, and now resides in
51d19cce579f (snarf-spooks): Restore function.
Roland McGrath <roland@gnu.org>
parents: 3384
diff changeset
77 ;; cookie1.el.
658
7cbd4fcd8b0f *** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents: 444
diff changeset
78
18383
11218164bc54 Add provide call.
Richard M. Stallman <rms@gnu.org>
parents: 14169
diff changeset
79 (provide 'spook)
11218164bc54 Add provide call.
Richard M. Stallman <rms@gnu.org>
parents: 14169
diff changeset
80
52401
695cf19ef79e Add arch taglines
Miles Bader <miles@gnu.org>
parents: 32296
diff changeset
81 ;;; arch-tag: c682b61f-92b6-4492-9c0d-2367e562449c
658
7cbd4fcd8b0f *** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents: 444
diff changeset
82 ;;; spook.el ends here