annotate lisp/play/meese.el @ 17623:a09fd9348b0d

Support compilers that give a message each time the file being compiled changes but don't include a file name each error message. Speed up by searching for regexps one by one instead of combining. (compile-internal): Takes more optional arguments. All five regexp alists can be given as argument. Change name of variable regexp-alist to error-regexp-alist. Change some local variables directly by setq instead of rebinding by let. (compilation-shell-minor-mode): New minor mode. Similar to compilation-minor-mode, but key bindings don't collide with shell mode. (compilation-shell-minor-mode-map, compilation-shell-minor-mode): New variables. (compile-auto-highlight): Doc fix. (compilation-error-regexp-alist): Removed unnecessary line break in first regexp. Replaced \\(\\|.* on \\) by \\(.* on \\)? in regexp for Absoft FORTRAN 77 Compiler 3.1.3. Added regexp for SPARCcompiler Pascal. Divided long line in regexp for Cray C compiler error messages. Made comment fit in line at regexp for Sun Ada (VADS, Solaris). FILE-IDX may be nil, meaning an error message with no file name, so the file name must be taken from an earlier message. LINE-IDX may be a function which is called with two arguments the file name and column strings and returns an error position descriptor. (compilation-enter-directory-regexp-alist) (compilation-leave-directory-regexp-alist): New variables. (compilation-file-regexp-alist) (compilation-nomessage-regexp-alist): New variables. (grep-regexp-alist): Removed unnecessary ^ at beginning of regexp. (compilation-enter-directory-regexp) (compilation-leave-directory-regexp): Variables deleted. Replaced by compilation-enter-directory-regexp-alist and compilation-leave-directory-regexp-alist. (compilation-buffer-p): Return true also for buffer in compilation-shell-minor-mode. (compilation-next-error-locus): Split a long line. (count-regexp-groupings): Comment about this function not being needed any more. (compilation-current-file, compilation-regexps); New variables. (compilation-parse-errors): Large parts rewritten. Don't put the regexps together in one large regexp, instead match them one by one. Support the generalized subexpression indices. (compile-collect-regexps, compile-buffer-substring): New functions supporting compilation-parse-errors.
author Richard M. Stallman <rms@gnu.org>
date Sat, 03 May 1997 04:37:52 +0000
parents 9127591ba072
children 66c03b43ceb8
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
2233
fb0ed5a1d0f3 Add standard library headers.
Eric S. Raymond <esr@snark.thyrsus.com>
parents: 896
diff changeset
1 ;;; meese.el --- protect the impressionable young minds of America
fb0ed5a1d0f3 Add standard library headers.
Eric S. Raymond <esr@snark.thyrsus.com>
parents: 896
diff changeset
2
896
7e4999005da1 entered into RCS
Richard M. Stallman <rms@gnu.org>
parents: 846
diff changeset
3 ;; This is in the public domain on account of being distributed since
7e4999005da1 entered into RCS
Richard M. Stallman <rms@gnu.org>
parents: 846
diff changeset
4 ;; 1985 or 1986 without a copyright notice.
791
203c23c9f22c *** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents: 659
diff changeset
5
203c23c9f22c *** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents: 659
diff changeset
6 ;; Maintainer: FSF
811
e694e0879463 *** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents: 791
diff changeset
7 ;; Keywords: games
659
505130d1ddf8 *** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents: 14
diff changeset
8
846
20674ae6bf52 *** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents: 840
diff changeset
9 ;;; Code:
20674ae6bf52 *** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents: 840
diff changeset
10
14
d2f6c32ff984 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
11 (defun protect-innocence-hook ()
8126
9127591ba072 Use add-hook, (provide 'meese).
Richard M. Stallman <rms@gnu.org>
parents: 2233
diff changeset
12 (let ((dir (file-name-directory buffer-file-name)))
9127591ba072 Use add-hook, (provide 'meese).
Richard M. Stallman <rms@gnu.org>
parents: 2233
diff changeset
13 (if (and (equal buffer-file-name (expand-file-name "sex.6" dir))
9127591ba072 Use add-hook, (provide 'meese).
Richard M. Stallman <rms@gnu.org>
parents: 2233
diff changeset
14 (file-exists-p buffer-file-name)
9127591ba072 Use add-hook, (provide 'meese).
Richard M. Stallman <rms@gnu.org>
parents: 2233
diff changeset
15 (not (y-or-n-p "Are you over 18? ")))
9127591ba072 Use add-hook, (provide 'meese).
Richard M. Stallman <rms@gnu.org>
parents: 2233
diff changeset
16 (progn
9127591ba072 Use add-hook, (provide 'meese).
Richard M. Stallman <rms@gnu.org>
parents: 2233
diff changeset
17 (clear-visited-file-modtime)
9127591ba072 Use add-hook, (provide 'meese).
Richard M. Stallman <rms@gnu.org>
parents: 2233
diff changeset
18 (setq buffer-file-name (expand-file-name "celibacy.1" dir))
9127591ba072 Use add-hook, (provide 'meese).
Richard M. Stallman <rms@gnu.org>
parents: 2233
diff changeset
19 (let ((inhibit-read-only t)) ; otherwise (erase-buffer) may bomb.
9127591ba072 Use add-hook, (provide 'meese).
Richard M. Stallman <rms@gnu.org>
parents: 2233
diff changeset
20 (erase-buffer)
9127591ba072 Use add-hook, (provide 'meese).
Richard M. Stallman <rms@gnu.org>
parents: 2233
diff changeset
21 (insert-file-contents buffer-file-name t))
9127591ba072 Use add-hook, (provide 'meese).
Richard M. Stallman <rms@gnu.org>
parents: 2233
diff changeset
22 (rename-buffer (file-name-nondirectory buffer-file-name))))))
14
d2f6c32ff984 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
23
8126
9127591ba072 Use add-hook, (provide 'meese).
Richard M. Stallman <rms@gnu.org>
parents: 2233
diff changeset
24 (add-hook 'find-file-hooks 'protect-innocence-hook)
9127591ba072 Use add-hook, (provide 'meese).
Richard M. Stallman <rms@gnu.org>
parents: 2233
diff changeset
25 (provide 'meese)
659
505130d1ddf8 *** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents: 14
diff changeset
26
505130d1ddf8 *** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents: 14
diff changeset
27 ;;; meese.el ends here