Mercurial > emacs
annotate lisp/mail/emacsbug.el @ 12542:f86a10208f7e
(current_minor_maps): Catch errors in Findirect_function.
(current_minor_maps_error): New function.
author | Karl Heuer <kwzh@gnu.org> |
---|---|
date | Mon, 17 Jul 1995 22:21:54 +0000 |
parents | 63887def546f |
children | a9a0c4c57a07 |
rev | line source |
---|---|
662
8a533acedb77
*** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
474
diff
changeset
|
1 ;;; emacsbug.el --- command to report Emacs bugs to appropriate mailing list. |
8a533acedb77
*** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
474
diff
changeset
|
2 |
7300 | 3 ;; Copyright (C) 1985, 1994 Free Software Foundation, Inc. |
845 | 4 |
807
4f28bd14272c
*** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
794
diff
changeset
|
5 ;; Author: K. Shane Hartman |
794
2598c08c91c2
*** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
662
diff
changeset
|
6 ;; Maintainer: FSF |
2247
2c7997f249eb
Add or correct keywords
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
845
diff
changeset
|
7 ;; Keywords: maint |
794
2598c08c91c2
*** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
662
diff
changeset
|
8 |
36 | 9 ;; Not fully installed because it can work only on Internet hosts. |
10 ;; This file is part of GNU Emacs. | |
11 | |
12 ;; GNU Emacs is free software; you can redistribute it and/or modify | |
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:
794
diff
changeset
|
14 ;; the Free Software Foundation; either version 2, or (at your option) |
36 | 15 ;; any later version. |
16 | |
17 ;; GNU Emacs is distributed in the hope that it will be useful, | |
18 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of | |
19 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
20 ;; GNU General Public License for more details. | |
21 | |
22 ;; You should have received a copy of the GNU General Public License | |
23 ;; along with GNU Emacs; see the file COPYING. If not, write to | |
24 ;; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. | |
25 | |
2307
10e417efb12a
Added or corrected Commentary sections
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2247
diff
changeset
|
26 ;;; Commentary: |
10e417efb12a
Added or corrected Commentary sections
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2247
diff
changeset
|
27 |
10e417efb12a
Added or corrected Commentary sections
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2247
diff
changeset
|
28 ;; `M-x report-emacs-bug ' starts an email note to the Emacs maintainers |
10e417efb12a
Added or corrected Commentary sections
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2247
diff
changeset
|
29 ;; describing a problem. Here's how it's done... |
10e417efb12a
Added or corrected Commentary sections
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2247
diff
changeset
|
30 |
794
2598c08c91c2
*** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
662
diff
changeset
|
31 ;;; Code: |
36 | 32 |
33 ;; >> This should be an address which is accessible to your machine, | |
34 ;; >> otherwise you can't use this file. It will only work on the | |
35 ;; >> internet with this address. | |
36 | |
6971
90859715093d
(report-emacs-bug): Insert at separator, not at end.
Karl Heuer <kwzh@gnu.org>
parents:
2348
diff
changeset
|
37 (require 'sendmail) |
90859715093d
(report-emacs-bug): Insert at separator, not at end.
Karl Heuer <kwzh@gnu.org>
parents:
2348
diff
changeset
|
38 |
36 | 39 (defvar bug-gnu-emacs "bug-gnu-emacs@prep.ai.mit.edu" |
201 | 40 "Address of site maintaining mailing list for GNU Emacs bugs.") |
36 | 41 |
8130
c84ecb24316c
(report-emacs-bug-hook): Error if user has added no text.
Richard M. Stallman <rms@gnu.org>
parents:
7300
diff
changeset
|
42 (defvar report-emacs-bug-orig-text nil |
c84ecb24316c
(report-emacs-bug-hook): Error if user has added no text.
Richard M. Stallman <rms@gnu.org>
parents:
7300
diff
changeset
|
43 "The automatically-created initial text of bug report.") |
c84ecb24316c
(report-emacs-bug-hook): Error if user has added no text.
Richard M. Stallman <rms@gnu.org>
parents:
7300
diff
changeset
|
44 |
474 | 45 ;;;###autoload |
36 | 46 (defun report-emacs-bug (topic) |
474 | 47 "Report a bug in GNU Emacs. |
36 | 48 Prompts for bug subject. Leaves you in a mail buffer." |
49 (interactive "sBug Subject: ") | |
50 (mail nil bug-gnu-emacs topic) | |
6971
90859715093d
(report-emacs-bug): Insert at separator, not at end.
Karl Heuer <kwzh@gnu.org>
parents:
2348
diff
changeset
|
51 (goto-char (point-min)) |
90859715093d
(report-emacs-bug): Insert at separator, not at end.
Karl Heuer <kwzh@gnu.org>
parents:
2348
diff
changeset
|
52 (re-search-forward (concat "^" (regexp-quote mail-header-separator) "\n")) |
8842
289246a9fdb1
(report-emacs-bug): Insert configuration options.
Karl Heuer <kwzh@gnu.org>
parents:
8131
diff
changeset
|
53 (insert "In " (emacs-version) "\nconfigured using " |
8921
beb7bc6f2d5c
(report-emacs-bug): system-configuration-options was misspelled as
Karl Heuer <kwzh@gnu.org>
parents:
8842
diff
changeset
|
54 system-configuration-options "\n\n") |
12155
63887def546f
(report-emacs-bug-info): New command.
Karl Heuer <kwzh@gnu.org>
parents:
8921
diff
changeset
|
55 ;; This is so the user has to type something |
63887def546f
(report-emacs-bug-info): New command.
Karl Heuer <kwzh@gnu.org>
parents:
8921
diff
changeset
|
56 ;; in order to send easily. |
63887def546f
(report-emacs-bug-info): New command.
Karl Heuer <kwzh@gnu.org>
parents:
8921
diff
changeset
|
57 (use-local-map (nconc (make-sparse-keymap) (current-local-map))) |
63887def546f
(report-emacs-bug-info): New command.
Karl Heuer <kwzh@gnu.org>
parents:
8921
diff
changeset
|
58 (define-key (current-local-map) "\C-c\C-i" 'report-emacs-bug-info) |
63887def546f
(report-emacs-bug-info): New command.
Karl Heuer <kwzh@gnu.org>
parents:
8921
diff
changeset
|
59 (with-output-to-temp-buffer "*Bug Help*" |
63887def546f
(report-emacs-bug-info): New command.
Karl Heuer <kwzh@gnu.org>
parents:
8921
diff
changeset
|
60 (princ (substitute-command-keys |
63887def546f
(report-emacs-bug-info): New command.
Karl Heuer <kwzh@gnu.org>
parents:
8921
diff
changeset
|
61 "Type \\[mail-send-and-exit] to send the bug report.\n")) |
63887def546f
(report-emacs-bug-info): New command.
Karl Heuer <kwzh@gnu.org>
parents:
8921
diff
changeset
|
62 (terpri) |
63887def546f
(report-emacs-bug-info): New command.
Karl Heuer <kwzh@gnu.org>
parents:
8921
diff
changeset
|
63 (princ (substitute-command-keys |
63887def546f
(report-emacs-bug-info): New command.
Karl Heuer <kwzh@gnu.org>
parents:
8921
diff
changeset
|
64 "Type \\[report-emacs-bug-info] to visit in Info the Emacs Manual section |
63887def546f
(report-emacs-bug-info): New command.
Karl Heuer <kwzh@gnu.org>
parents:
8921
diff
changeset
|
65 about when and how to write a bug report, |
63887def546f
(report-emacs-bug-info): New command.
Karl Heuer <kwzh@gnu.org>
parents:
8921
diff
changeset
|
66 and what information to supply so that the bug can be fixed. |
63887def546f
(report-emacs-bug-info): New command.
Karl Heuer <kwzh@gnu.org>
parents:
8921
diff
changeset
|
67 Type SPC to scroll through this section and its subsections."))) |
8130
c84ecb24316c
(report-emacs-bug-hook): Error if user has added no text.
Richard M. Stallman <rms@gnu.org>
parents:
7300
diff
changeset
|
68 ;; Make it less likely people will send empty messages. |
c84ecb24316c
(report-emacs-bug-hook): Error if user has added no text.
Richard M. Stallman <rms@gnu.org>
parents:
7300
diff
changeset
|
69 (make-local-variable 'mail-send-hook) |
c84ecb24316c
(report-emacs-bug-hook): Error if user has added no text.
Richard M. Stallman <rms@gnu.org>
parents:
7300
diff
changeset
|
70 (add-hook 'mail-send-hook 'report-emacs-bug-hook) |
c84ecb24316c
(report-emacs-bug-hook): Error if user has added no text.
Richard M. Stallman <rms@gnu.org>
parents:
7300
diff
changeset
|
71 (save-excursion |
c84ecb24316c
(report-emacs-bug-hook): Error if user has added no text.
Richard M. Stallman <rms@gnu.org>
parents:
7300
diff
changeset
|
72 (goto-char (point-max)) |
c84ecb24316c
(report-emacs-bug-hook): Error if user has added no text.
Richard M. Stallman <rms@gnu.org>
parents:
7300
diff
changeset
|
73 (skip-chars-backward " \t\n") |
c84ecb24316c
(report-emacs-bug-hook): Error if user has added no text.
Richard M. Stallman <rms@gnu.org>
parents:
7300
diff
changeset
|
74 (make-local-variable 'report-emacs-bug-orig-text) |
c84ecb24316c
(report-emacs-bug-hook): Error if user has added no text.
Richard M. Stallman <rms@gnu.org>
parents:
7300
diff
changeset
|
75 (setq report-emacs-bug-orig-text (buffer-substring (point-min) (point))))) |
c84ecb24316c
(report-emacs-bug-hook): Error if user has added no text.
Richard M. Stallman <rms@gnu.org>
parents:
7300
diff
changeset
|
76 |
12155
63887def546f
(report-emacs-bug-info): New command.
Karl Heuer <kwzh@gnu.org>
parents:
8921
diff
changeset
|
77 (defun report-emacs-bug-info () |
63887def546f
(report-emacs-bug-info): New command.
Karl Heuer <kwzh@gnu.org>
parents:
8921
diff
changeset
|
78 "Go to the Info node on reporting Emacs bugs." |
63887def546f
(report-emacs-bug-info): New command.
Karl Heuer <kwzh@gnu.org>
parents:
8921
diff
changeset
|
79 (interactive) |
63887def546f
(report-emacs-bug-info): New command.
Karl Heuer <kwzh@gnu.org>
parents:
8921
diff
changeset
|
80 (info) |
63887def546f
(report-emacs-bug-info): New command.
Karl Heuer <kwzh@gnu.org>
parents:
8921
diff
changeset
|
81 (Info-directory) |
63887def546f
(report-emacs-bug-info): New command.
Karl Heuer <kwzh@gnu.org>
parents:
8921
diff
changeset
|
82 (Info-menu "emacs") |
63887def546f
(report-emacs-bug-info): New command.
Karl Heuer <kwzh@gnu.org>
parents:
8921
diff
changeset
|
83 (Info-goto-node "Bugs")) |
63887def546f
(report-emacs-bug-info): New command.
Karl Heuer <kwzh@gnu.org>
parents:
8921
diff
changeset
|
84 |
8130
c84ecb24316c
(report-emacs-bug-hook): Error if user has added no text.
Richard M. Stallman <rms@gnu.org>
parents:
7300
diff
changeset
|
85 (defun report-emacs-bug-hook () |
c84ecb24316c
(report-emacs-bug-hook): Error if user has added no text.
Richard M. Stallman <rms@gnu.org>
parents:
7300
diff
changeset
|
86 (save-excursion |
c84ecb24316c
(report-emacs-bug-hook): Error if user has added no text.
Richard M. Stallman <rms@gnu.org>
parents:
7300
diff
changeset
|
87 (goto-char (point-max)) |
c84ecb24316c
(report-emacs-bug-hook): Error if user has added no text.
Richard M. Stallman <rms@gnu.org>
parents:
7300
diff
changeset
|
88 (skip-chars-backward " \t\n") |
c84ecb24316c
(report-emacs-bug-hook): Error if user has added no text.
Richard M. Stallman <rms@gnu.org>
parents:
7300
diff
changeset
|
89 (if (and (= (- (point) (point-min)) |
c84ecb24316c
(report-emacs-bug-hook): Error if user has added no text.
Richard M. Stallman <rms@gnu.org>
parents:
7300
diff
changeset
|
90 (length report-emacs-bug-orig-text)) |
c84ecb24316c
(report-emacs-bug-hook): Error if user has added no text.
Richard M. Stallman <rms@gnu.org>
parents:
7300
diff
changeset
|
91 (equal (buffer-substring (point-min) (point)) |
c84ecb24316c
(report-emacs-bug-hook): Error if user has added no text.
Richard M. Stallman <rms@gnu.org>
parents:
7300
diff
changeset
|
92 report-emacs-bug-orig-text)) |
c84ecb24316c
(report-emacs-bug-hook): Error if user has added no text.
Richard M. Stallman <rms@gnu.org>
parents:
7300
diff
changeset
|
93 (error "No text entered in bug report")))) |
36 | 94 |
2348
581cda633215
Added a (provide 'emacsbug); lisp-mnt.el needs this.
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2307
diff
changeset
|
95 (provide 'emacsbug) |
581cda633215
Added a (provide 'emacsbug); lisp-mnt.el needs this.
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2307
diff
changeset
|
96 |
662
8a533acedb77
*** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
474
diff
changeset
|
97 ;;; emacsbug.el ends here |