Mercurial > hg > xemacs-beta
comparison lisp/packages/emacsbug.el @ 0:376386a54a3c r19-14
Import from CVS: tag r19-14
author | cvs |
---|---|
date | Mon, 13 Aug 2007 08:45:50 +0200 |
parents | |
children | ac2d302a0011 |
comparison
equal
deleted
inserted
replaced
-1:000000000000 | 0:376386a54a3c |
---|---|
1 ;;; emacsbug.el --- command to report Emacs bugs to appropriate mailing list. | |
2 | |
3 ;; Copyright (C) 1985, 1994 Free Software Foundation, Inc. | |
4 | |
5 ;; Author: K. Shane Hartman | |
6 ;; Maintainer: FSF | |
7 ;; Keywords: maint | |
8 | |
9 ;; Not fully installed because it can work only on Internet hosts. | |
10 ;; This file is part of XEmacs. | |
11 | |
12 ;; XEmacs is free software; you can redistribute it and/or modify it | |
13 ;; under the terms of the GNU General Public License as published by | |
14 ;; the Free Software Foundation; either version 2, or (at your option) | |
15 ;; any later version. | |
16 | |
17 ;; XEmacs is distributed in the hope that it will be useful, but | |
18 ;; WITHOUT ANY WARRANTY; without even the implied warranty of | |
19 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
20 ;; General Public License for more details. | |
21 | |
22 ;; You should have received a copy of the GNU General Public License | |
23 ;; along with XEmacs; see the file COPYING. If not, write to the Free | |
24 ;; Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. | |
25 | |
26 ;;; Synched up with: FSF 19.30. | |
27 | |
28 ;;; Commentary: | |
29 | |
30 ;; `M-x report-emacs-bug ' starts an email note to the Emacs maintainers | |
31 ;; describing a problem. Here's how it's done... | |
32 | |
33 ;;; Code: | |
34 | |
35 ;; >> This should be an address which is accessible to your machine, | |
36 ;; >> otherwise you can't use this file. It will only work on the | |
37 ;; >> internet with this address. | |
38 | |
39 (require 'sendmail) | |
40 | |
41 (defvar bug-gnu-emacs "xemacs@cs.uiuc.edu" | |
42 "Address of site maintaining mailing list for GNU Emacs bugs.") | |
43 | |
44 (defvar report-emacs-bug-orig-text nil | |
45 "The automatically-created initial text of bug report.") | |
46 | |
47 ;;;###autoload | |
48 (defun report-emacs-bug (topic) | |
49 "Report a bug in GNU Emacs. | |
50 Prompts for bug subject. Leaves you in a mail buffer." | |
51 (interactive "sBug Subject: ") | |
52 (mail nil bug-gnu-emacs topic) | |
53 (goto-char (point-min)) | |
54 (re-search-forward (concat "^" (regexp-quote mail-header-separator) "\n")) | |
55 (insert "In " (emacs-version) "\n") | |
56 (if (and system-configuration-options | |
57 (not (equal system-configuration-options ""))) | |
58 (insert "configured using `configure " | |
59 system-configuration-options "'\n")) | |
60 (insert "\n") | |
61 ;; This is so the user has to type something | |
62 ;; in order to send easily. | |
63 (use-local-map (nconc (make-sparse-keymap) (current-local-map))) | |
64 (define-key (current-local-map) "\C-c\C-i" 'report-emacs-bug-info) | |
65 (with-output-to-temp-buffer "*Bug Help*" | |
66 (princ (substitute-command-keys | |
67 "Type \\[mail-send-and-exit] to send the bug report.\n")) | |
68 (terpri) | |
69 (princ (substitute-command-keys | |
70 "Type \\[report-emacs-bug-info] to visit in Info the Emacs Manual section | |
71 about when and how to write a bug report, | |
72 and what information to supply so that the bug can be fixed. | |
73 Type SPC to scroll through this section and its subsections."))) | |
74 ;; Make it less likely people will send empty messages. | |
75 (make-local-variable 'mail-send-hook) | |
76 (add-hook 'mail-send-hook 'report-emacs-bug-hook) | |
77 (save-excursion | |
78 (goto-char (point-max)) | |
79 (skip-chars-backward " \t\n") | |
80 (make-local-variable 'report-emacs-bug-orig-text) | |
81 (setq report-emacs-bug-orig-text (buffer-substring (point-min) (point))))) | |
82 | |
83 (defun report-emacs-bug-info () | |
84 "Go to the Info node on reporting Emacs bugs." | |
85 (interactive) | |
86 (info) | |
87 (Info-directory) | |
88 (Info-menu "emacs") | |
89 (Info-goto-node "Bugs")) | |
90 | |
91 (defun report-emacs-bug-hook () | |
92 (save-excursion | |
93 (goto-char (point-max)) | |
94 (skip-chars-backward " \t\n") | |
95 (if (and (= (- (point) (point-min)) | |
96 (length report-emacs-bug-orig-text)) | |
97 (equal (buffer-substring (point-min) (point)) | |
98 report-emacs-bug-orig-text)) | |
99 (error "No text entered in bug report")))) | |
100 | |
101 (provide 'emacsbug) | |
102 | |
103 ;;; emacsbug.el ends here |