Mercurial > emacs
annotate lisp/mail/emacsbug.el @ 92129:1f3cc233058d
Remove leading `*' from defcustom doc-strings.
(smtpmail-code-conv-from): Doc fix. Fix custom type.
(smtpmail-queue-index-file): Make it a defcustom.
(smtpmail-queue-index): Delete.
(smtpmail-send-it, smtpmail-send-queued-mail):
Use smtpmail-queue-index-file and smtpmail-queue-dir rather than
smtpmail-queue-index.
author | Glenn Morris <rgm@gnu.org> |
---|---|
date | Sat, 23 Feb 2008 19:33:50 +0000 |
parents | 606f2d163a64 |
children | d2de7d81aab9 |
rev | line source |
---|---|
38412
253f761ad37b
Some fixes to follow coding conventions in files maintained by FSF.
Pavel Janík <Pavel@Janik.cz>
parents:
37671
diff
changeset
|
1 ;;; emacsbug.el --- command to report Emacs bugs to appropriate mailing list |
662
8a533acedb77
*** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
474
diff
changeset
|
2 |
64754
fafd692d1e40
Update years in copyright notice; nfc.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents:
64555
diff
changeset
|
3 ;; Copyright (C) 1985, 1994, 1997, 1998, 2000, 2001, 2002, 2003, |
87567
4c3c683cdff8
* erc-ibuffer.el (erc-channel-modes):
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
87120
diff
changeset
|
4 ;; 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. |
845 | 5 |
807
4f28bd14272c
*** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
794
diff
changeset
|
6 ;; Author: K. Shane Hartman |
794
2598c08c91c2
*** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
662
diff
changeset
|
7 ;; Maintainer: FSF |
20774
d56dca77717a
(emacsbug): Customized.
Richard M. Stallman <rms@gnu.org>
parents:
20052
diff
changeset
|
8 ;; Keywords: maint mail |
794
2598c08c91c2
*** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
662
diff
changeset
|
9 |
36 | 10 ;; Not fully installed because it can work only on Internet hosts. |
11 ;; This file is part of GNU Emacs. | |
12 | |
13 ;; GNU Emacs is free software; you can redistribute it and/or modify | |
14 ;; it under the terms of the GNU General Public License as published by | |
78232
8e27d63c45eb
Switch license to GPLv3 or later.
Glenn Morris <rgm@gnu.org>
parents:
76450
diff
changeset
|
15 ;; the Free Software Foundation; either version 3, or (at your option) |
36 | 16 ;; any later version. |
17 | |
18 ;; GNU Emacs is distributed in the hope that it will be useful, | |
19 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of | |
20 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
21 ;; GNU General Public License for more details. | |
22 | |
23 ;; You should have received a copy of the GNU General Public License | |
14169 | 24 ;; along with GNU Emacs; see the file COPYING. If not, write to the |
64085 | 25 ;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, |
26 ;; Boston, MA 02110-1301, USA. | |
36 | 27 |
2307
10e417efb12a
Added or corrected Commentary sections
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2247
diff
changeset
|
28 ;;; Commentary: |
10e417efb12a
Added or corrected Commentary sections
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2247
diff
changeset
|
29 |
46564
293b682578b5
Update copyright notice and fix typo in commentary section.
Markus Rost <rost@math.uni-bielefeld.de>
parents:
45381
diff
changeset
|
30 ;; `M-x report-emacs-bug' starts an email note to the Emacs maintainers |
2307
10e417efb12a
Added or corrected Commentary sections
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2247
diff
changeset
|
31 ;; 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
|
32 |
794
2598c08c91c2
*** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
662
diff
changeset
|
33 ;;; Code: |
36 | 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 | |
6971
90859715093d
(report-emacs-bug): Insert at separator, not at end.
Karl Heuer <kwzh@gnu.org>
parents:
2348
diff
changeset
|
39 (require 'sendmail) |
90859715093d
(report-emacs-bug): Insert at separator, not at end.
Karl Heuer <kwzh@gnu.org>
parents:
2348
diff
changeset
|
40 |
20774
d56dca77717a
(emacsbug): Customized.
Richard M. Stallman <rms@gnu.org>
parents:
20052
diff
changeset
|
41 (defgroup emacsbug nil |
d56dca77717a
(emacsbug): Customized.
Richard M. Stallman <rms@gnu.org>
parents:
20052
diff
changeset
|
42 "Sending Emacs bug reports." |
d56dca77717a
(emacsbug): Customized.
Richard M. Stallman <rms@gnu.org>
parents:
20052
diff
changeset
|
43 :group 'maint |
d56dca77717a
(emacsbug): Customized.
Richard M. Stallman <rms@gnu.org>
parents:
20052
diff
changeset
|
44 :group 'mail) |
d56dca77717a
(emacsbug): Customized.
Richard M. Stallman <rms@gnu.org>
parents:
20052
diff
changeset
|
45 |
21360
238c1cd70a27
(report-emacs-bug-hook): Use skip-chars-forward
Richard M. Stallman <rms@gnu.org>
parents:
21353
diff
changeset
|
46 (defcustom report-emacs-bug-address "bug-gnu-emacs@gnu.org" |
20797
5941b5298627
(report-emacs-bug-address):
Richard M. Stallman <rms@gnu.org>
parents:
20774
diff
changeset
|
47 "*Address of mailing list for GNU Emacs bugs." |
5941b5298627
(report-emacs-bug-address):
Richard M. Stallman <rms@gnu.org>
parents:
20774
diff
changeset
|
48 :group 'emacsbug |
5941b5298627
(report-emacs-bug-address):
Richard M. Stallman <rms@gnu.org>
parents:
20774
diff
changeset
|
49 :type 'string) |
14815
4a742f2d5328
(report-emacs-bug): Use a different address for pretest versions.
Richard M. Stallman <rms@gnu.org>
parents:
14280
diff
changeset
|
50 |
21360
238c1cd70a27
(report-emacs-bug-hook): Use skip-chars-forward
Richard M. Stallman <rms@gnu.org>
parents:
21353
diff
changeset
|
51 (defcustom report-emacs-bug-pretest-address "emacs-pretest-bug@gnu.org" |
20797
5941b5298627
(report-emacs-bug-address):
Richard M. Stallman <rms@gnu.org>
parents:
20774
diff
changeset
|
52 "*Address of mailing list for GNU Emacs pretest bugs." |
5941b5298627
(report-emacs-bug-address):
Richard M. Stallman <rms@gnu.org>
parents:
20774
diff
changeset
|
53 :group 'emacsbug |
5941b5298627
(report-emacs-bug-address):
Richard M. Stallman <rms@gnu.org>
parents:
20774
diff
changeset
|
54 :type 'string) |
36 | 55 |
8130
c84ecb24316c
(report-emacs-bug-hook): Error if user has added no text.
Richard M. Stallman <rms@gnu.org>
parents:
7300
diff
changeset
|
56 (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
|
57 "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
|
58 |
20774
d56dca77717a
(emacsbug): Customized.
Richard M. Stallman <rms@gnu.org>
parents:
20052
diff
changeset
|
59 (defcustom report-emacs-bug-no-confirmation nil |
d56dca77717a
(emacsbug): Customized.
Richard M. Stallman <rms@gnu.org>
parents:
20052
diff
changeset
|
60 "*If non-nil, suppress the confirmations asked for the sake of novice users." |
d56dca77717a
(emacsbug): Customized.
Richard M. Stallman <rms@gnu.org>
parents:
20052
diff
changeset
|
61 :group 'emacsbug |
d56dca77717a
(emacsbug): Customized.
Richard M. Stallman <rms@gnu.org>
parents:
20052
diff
changeset
|
62 :type 'boolean) |
d56dca77717a
(emacsbug): Customized.
Richard M. Stallman <rms@gnu.org>
parents:
20052
diff
changeset
|
63 |
d56dca77717a
(emacsbug): Customized.
Richard M. Stallman <rms@gnu.org>
parents:
20052
diff
changeset
|
64 (defcustom report-emacs-bug-no-explanations nil |
d56dca77717a
(emacsbug): Customized.
Richard M. Stallman <rms@gnu.org>
parents:
20052
diff
changeset
|
65 "*If non-nil, suppress the explanations given for the sake of novice users." |
d56dca77717a
(emacsbug): Customized.
Richard M. Stallman <rms@gnu.org>
parents:
20052
diff
changeset
|
66 :group 'emacsbug |
d56dca77717a
(emacsbug): Customized.
Richard M. Stallman <rms@gnu.org>
parents:
20052
diff
changeset
|
67 :type 'boolean) |
18795
3446ea06d63f
(report-emacs-bug-run-tersely): New variable
Kenichi Handa <handa@m17n.org>
parents:
18608
diff
changeset
|
68 |
3446ea06d63f
(report-emacs-bug-run-tersely): New variable
Kenichi Handa <handa@m17n.org>
parents:
18608
diff
changeset
|
69 ;;;###autoload |
16576
a04c1653a37c
(report-emacs-bug): Reorder arguments.
Erik Naggum <erik@naggum.no>
parents:
16572
diff
changeset
|
70 (defun report-emacs-bug (topic &optional recent-keys) |
474 | 71 "Report a bug in GNU Emacs. |
36 | 72 Prompts for bug subject. Leaves you in a mail buffer." |
16576
a04c1653a37c
(report-emacs-bug): Reorder arguments.
Erik Naggum <erik@naggum.no>
parents:
16572
diff
changeset
|
73 ;; This strange form ensures that (recent-keys) is the value before |
a04c1653a37c
(report-emacs-bug): Reorder arguments.
Erik Naggum <erik@naggum.no>
parents:
16572
diff
changeset
|
74 ;; the bug subject string is read. |
a04c1653a37c
(report-emacs-bug): Reorder arguments.
Erik Naggum <erik@naggum.no>
parents:
16572
diff
changeset
|
75 (interactive (reverse (list (recent-keys) (read-string "Bug Subject: ")))) |
82382
5d46134ea7dd
(report-emacs-bug): Put `Bug: emacs-version; ' in the mail title.
Michaël Cadilhac <michael.cadilhac@lrde.org>
parents:
78232
diff
changeset
|
76 ;; The syntax `version;' is preferred to `[version]' because the |
5d46134ea7dd
(report-emacs-bug): Put `Bug: emacs-version; ' in the mail title.
Michaël Cadilhac <michael.cadilhac@lrde.org>
parents:
78232
diff
changeset
|
77 ;; latter could be mistakenly stripped by mailing software. |
82434
e460d01bb038
(report-emacs-bug): Make MS-DOS a special case (there's no build number).
Michaël Cadilhac <michael.cadilhac@lrde.org>
parents:
82429
diff
changeset
|
78 (if (eq system-type 'ms-dos) |
e460d01bb038
(report-emacs-bug): Make MS-DOS a special case (there's no build number).
Michaël Cadilhac <michael.cadilhac@lrde.org>
parents:
82429
diff
changeset
|
79 (setq topic (concat emacs-version "; " topic)) |
e460d01bb038
(report-emacs-bug): Make MS-DOS a special case (there's no build number).
Michaël Cadilhac <michael.cadilhac@lrde.org>
parents:
82429
diff
changeset
|
80 (when (string-match "^\\(\\([.0-9]+\\)*\\)\\.[0-9]+$" emacs-version) |
e460d01bb038
(report-emacs-bug): Make MS-DOS a special case (there's no build number).
Michaël Cadilhac <michael.cadilhac@lrde.org>
parents:
82429
diff
changeset
|
81 (setq topic (concat (match-string 1 emacs-version) "; " topic)))) |
e460d01bb038
(report-emacs-bug): Make MS-DOS a special case (there's no build number).
Michaël Cadilhac <michael.cadilhac@lrde.org>
parents:
82429
diff
changeset
|
82 ;; If there are four numbers in emacs-version (three for MS-DOS), |
e460d01bb038
(report-emacs-bug): Make MS-DOS a special case (there's no build number).
Michaël Cadilhac <michael.cadilhac@lrde.org>
parents:
82429
diff
changeset
|
83 ;; this is a pretest version. |
e460d01bb038
(report-emacs-bug): Make MS-DOS a special case (there's no build number).
Michaël Cadilhac <michael.cadilhac@lrde.org>
parents:
82429
diff
changeset
|
84 (let* ((pretest-p (string-match (if (eq system-type 'ms-dos) |
e460d01bb038
(report-emacs-bug): Make MS-DOS a special case (there's no build number).
Michaël Cadilhac <michael.cadilhac@lrde.org>
parents:
82429
diff
changeset
|
85 "\\..*\\." |
e460d01bb038
(report-emacs-bug): Make MS-DOS a special case (there's no build number).
Michaël Cadilhac <michael.cadilhac@lrde.org>
parents:
82429
diff
changeset
|
86 "\\..*\\..*\\.") |
e460d01bb038
(report-emacs-bug): Make MS-DOS a special case (there's no build number).
Michaël Cadilhac <michael.cadilhac@lrde.org>
parents:
82429
diff
changeset
|
87 emacs-version)) |
82382
5d46134ea7dd
(report-emacs-bug): Put `Bug: emacs-version; ' in the mail title.
Michaël Cadilhac <michael.cadilhac@lrde.org>
parents:
78232
diff
changeset
|
88 (from-buffer (current-buffer)) |
5d46134ea7dd
(report-emacs-bug): Put `Bug: emacs-version; ' in the mail title.
Michaël Cadilhac <michael.cadilhac@lrde.org>
parents:
78232
diff
changeset
|
89 (reporting-address (if pretest-p |
5d46134ea7dd
(report-emacs-bug): Put `Bug: emacs-version; ' in the mail title.
Michaël Cadilhac <michael.cadilhac@lrde.org>
parents:
78232
diff
changeset
|
90 report-emacs-bug-pretest-address |
5d46134ea7dd
(report-emacs-bug): Put `Bug: emacs-version; ' in the mail title.
Michaël Cadilhac <michael.cadilhac@lrde.org>
parents:
78232
diff
changeset
|
91 report-emacs-bug-address)) |
5d46134ea7dd
(report-emacs-bug): Put `Bug: emacs-version; ' in the mail title.
Michaël Cadilhac <michael.cadilhac@lrde.org>
parents:
78232
diff
changeset
|
92 ;; Put these properties on semantically-void text. |
5d46134ea7dd
(report-emacs-bug): Put `Bug: emacs-version; ' in the mail title.
Michaël Cadilhac <michael.cadilhac@lrde.org>
parents:
78232
diff
changeset
|
93 (prompt-properties '(field emacsbug-prompt |
5d46134ea7dd
(report-emacs-bug): Put `Bug: emacs-version; ' in the mail title.
Michaël Cadilhac <michael.cadilhac@lrde.org>
parents:
78232
diff
changeset
|
94 intangible but-helpful |
5d46134ea7dd
(report-emacs-bug): Put `Bug: emacs-version; ' in the mail title.
Michaël Cadilhac <michael.cadilhac@lrde.org>
parents:
78232
diff
changeset
|
95 rear-nonsticky t)) |
5d46134ea7dd
(report-emacs-bug): Put `Bug: emacs-version; ' in the mail title.
Michaël Cadilhac <michael.cadilhac@lrde.org>
parents:
78232
diff
changeset
|
96 user-point message-end-point) |
20052
38942e2dfffa
(report-emacs-bug): Delete the condition-case.
Karl Heuer <kwzh@gnu.org>
parents:
18827
diff
changeset
|
97 (setq message-end-point |
39067
781a740a46a0
(report-emacs-bug): Make sure *Messages*
Eli Zaretskii <eliz@gnu.org>
parents:
38412
diff
changeset
|
98 (with-current-buffer (get-buffer-create "*Messages*") |
20052
38942e2dfffa
(report-emacs-bug): Delete the condition-case.
Karl Heuer <kwzh@gnu.org>
parents:
18827
diff
changeset
|
99 (point-max-marker))) |
68075
d16e53a3e227
(report-emacs-bug): Let explanations correctly reflect the address to which
Eli Zaretskii <eliz@gnu.org>
parents:
64754
diff
changeset
|
100 (compose-mail reporting-address |
20052
38942e2dfffa
(report-emacs-bug): Delete the condition-case.
Karl Heuer <kwzh@gnu.org>
parents:
18827
diff
changeset
|
101 topic) |
38942e2dfffa
(report-emacs-bug): Delete the condition-case.
Karl Heuer <kwzh@gnu.org>
parents:
18827
diff
changeset
|
102 ;; The rest of this does not execute |
38942e2dfffa
(report-emacs-bug): Delete the condition-case.
Karl Heuer <kwzh@gnu.org>
parents:
18827
diff
changeset
|
103 ;; if the user was asked to confirm and said no. |
21869
0f8ca1599a5a
(report-emacs-bug): Use rfc822-goto-eoh.
Richard M. Stallman <rms@gnu.org>
parents:
21498
diff
changeset
|
104 (rfc822-goto-eoh) |
0f8ca1599a5a
(report-emacs-bug): Use rfc822-goto-eoh.
Richard M. Stallman <rms@gnu.org>
parents:
21498
diff
changeset
|
105 (forward-line 1) |
0f8ca1599a5a
(report-emacs-bug): Use rfc822-goto-eoh.
Richard M. Stallman <rms@gnu.org>
parents:
21498
diff
changeset
|
106 |
0f8ca1599a5a
(report-emacs-bug): Use rfc822-goto-eoh.
Richard M. Stallman <rms@gnu.org>
parents:
21498
diff
changeset
|
107 (let ((signature (buffer-substring (point) (point-max)))) |
0f8ca1599a5a
(report-emacs-bug): Use rfc822-goto-eoh.
Richard M. Stallman <rms@gnu.org>
parents:
21498
diff
changeset
|
108 (delete-region (point) (point-max)) |
21974
42b308d86213
(report-emacs-bug): After reinserting
Richard M. Stallman <rms@gnu.org>
parents:
21869
diff
changeset
|
109 (insert signature) |
42b308d86213
(report-emacs-bug): After reinserting
Richard M. Stallman <rms@gnu.org>
parents:
21869
diff
changeset
|
110 (backward-char (length signature))) |
20774
d56dca77717a
(emacsbug): Customized.
Richard M. Stallman <rms@gnu.org>
parents:
20052
diff
changeset
|
111 (unless report-emacs-bug-no-explanations |
d56dca77717a
(emacsbug): Customized.
Richard M. Stallman <rms@gnu.org>
parents:
20052
diff
changeset
|
112 ;; Insert warnings for novice users. |
68075
d16e53a3e227
(report-emacs-bug): Let explanations correctly reflect the address to which
Eli Zaretskii <eliz@gnu.org>
parents:
64754
diff
changeset
|
113 (when (string-match "@gnu\\.org^" reporting-address) |
d16e53a3e227
(report-emacs-bug): Let explanations correctly reflect the address to which
Eli Zaretskii <eliz@gnu.org>
parents:
64754
diff
changeset
|
114 (insert "This bug report will be sent to the Free Software Foundation,\n") |
d16e53a3e227
(report-emacs-bug): Let explanations correctly reflect the address to which
Eli Zaretskii <eliz@gnu.org>
parents:
64754
diff
changeset
|
115 (let ((pos (point))) |
d16e53a3e227
(report-emacs-bug): Let explanations correctly reflect the address to which
Eli Zaretskii <eliz@gnu.org>
parents:
64754
diff
changeset
|
116 (insert "not to your local site managers!") |
d16e53a3e227
(report-emacs-bug): Let explanations correctly reflect the address to which
Eli Zaretskii <eliz@gnu.org>
parents:
64754
diff
changeset
|
117 (put-text-property pos (point) 'face 'highlight))) |
82382
5d46134ea7dd
(report-emacs-bug): Put `Bug: emacs-version; ' in the mail title.
Michaël Cadilhac <michael.cadilhac@lrde.org>
parents:
78232
diff
changeset
|
118 (insert "\nPlease write in ") |
20774
d56dca77717a
(emacsbug): Customized.
Richard M. Stallman <rms@gnu.org>
parents:
20052
diff
changeset
|
119 (let ((pos (point))) |
d56dca77717a
(emacsbug): Customized.
Richard M. Stallman <rms@gnu.org>
parents:
20052
diff
changeset
|
120 (insert "English") |
d56dca77717a
(emacsbug): Customized.
Richard M. Stallman <rms@gnu.org>
parents:
20052
diff
changeset
|
121 (put-text-property pos (point) 'face 'highlight)) |
45273
b9f48b248687
(report-emacs-bug): Change the "English please" msg.
Richard M. Stallman <rms@gnu.org>
parents:
45027
diff
changeset
|
122 (insert " if possible, because the Emacs maintainers |
b9f48b248687
(report-emacs-bug): Change the "English please" msg.
Richard M. Stallman <rms@gnu.org>
parents:
45027
diff
changeset
|
123 usually do not have translators to read other languages for them.\n\n") |
35516
05a619c13dea
(report-emacs-bug): Mention the fact that the
Eli Zaretskii <eliz@gnu.org>
parents:
35437
diff
changeset
|
124 (insert (format "Your bug report will be posted to the %s mailing list" |
68075
d16e53a3e227
(report-emacs-bug): Let explanations correctly reflect the address to which
Eli Zaretskii <eliz@gnu.org>
parents:
64754
diff
changeset
|
125 reporting-address)) |
35516
05a619c13dea
(report-emacs-bug): Mention the fact that the
Eli Zaretskii <eliz@gnu.org>
parents:
35437
diff
changeset
|
126 (if pretest-p |
05a619c13dea
(report-emacs-bug): Mention the fact that the
Eli Zaretskii <eliz@gnu.org>
parents:
35437
diff
changeset
|
127 (insert ".\n\n") |
05a619c13dea
(report-emacs-bug): Mention the fact that the
Eli Zaretskii <eliz@gnu.org>
parents:
35437
diff
changeset
|
128 (insert ",\nand to the gnu.emacs.bug news group.\n\n"))) |
18795
3446ea06d63f
(report-emacs-bug-run-tersely): New variable
Kenichi Handa <handa@m17n.org>
parents:
18608
diff
changeset
|
129 |
45346
abf76eedb517
(report-emacs-bug-text-prompt): New variable.
Markus Rost <rost@math.uni-bielefeld.de>
parents:
45273
diff
changeset
|
130 (insert "Please describe exactly what actions triggered the bug\n" |
68115
09374864b194
(report-emacs-bug-text-prompt): Delete var.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents:
68075
diff
changeset
|
131 "and the precise symptoms of the bug:\n\n") |
09374864b194
(report-emacs-bug-text-prompt): Delete var.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents:
68075
diff
changeset
|
132 (add-text-properties (point) (save-excursion (mail-text) (point)) |
09374864b194
(report-emacs-bug-text-prompt): Delete var.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents:
68075
diff
changeset
|
133 prompt-properties) |
45346
abf76eedb517
(report-emacs-bug-text-prompt): New variable.
Markus Rost <rost@math.uni-bielefeld.de>
parents:
45273
diff
changeset
|
134 |
abf76eedb517
(report-emacs-bug-text-prompt): New variable.
Markus Rost <rost@math.uni-bielefeld.de>
parents:
45273
diff
changeset
|
135 (setq user-point (point)) |
64555
8a35276b0990
(report-emacs-bug): Request that backtraces are
Kim F. Storm <storm@cua.dk>
parents:
64085
diff
changeset
|
136 (insert "\n\n") |
8a35276b0990
(report-emacs-bug): Request that backtraces are
Kim F. Storm <storm@cua.dk>
parents:
64085
diff
changeset
|
137 |
73738
266042c9bbc6
(report-emacs-bug): Fix typos in output message.
Juanma Barranquero <lekktu@gmail.com>
parents:
68648
diff
changeset
|
138 (insert "If Emacs crashed, and you have the Emacs process in the gdb debugger,\n" |
64555
8a35276b0990
(report-emacs-bug): Request that backtraces are
Kim F. Storm <storm@cua.dk>
parents:
64085
diff
changeset
|
139 "please include the output from the following gdb commands:\n" |
8a35276b0990
(report-emacs-bug): Request that backtraces are
Kim F. Storm <storm@cua.dk>
parents:
64085
diff
changeset
|
140 " `bt full' and `xbacktrace'.\n") |
45346
abf76eedb517
(report-emacs-bug-text-prompt): New variable.
Markus Rost <rost@math.uni-bielefeld.de>
parents:
45273
diff
changeset
|
141 |
64555
8a35276b0990
(report-emacs-bug): Request that backtraces are
Kim F. Storm <storm@cua.dk>
parents:
64085
diff
changeset
|
142 (let ((debug-file (expand-file-name "DEBUG" data-directory))) |
8a35276b0990
(report-emacs-bug): Request that backtraces are
Kim F. Storm <storm@cua.dk>
parents:
64085
diff
changeset
|
143 (if (file-readable-p debug-file) |
82382
5d46134ea7dd
(report-emacs-bug): Put `Bug: emacs-version; ' in the mail title.
Michaël Cadilhac <michael.cadilhac@lrde.org>
parents:
78232
diff
changeset
|
144 (insert "If you would like to further debug the crash, please read the file\n" |
5d46134ea7dd
(report-emacs-bug): Put `Bug: emacs-version; ' in the mail title.
Michaël Cadilhac <michael.cadilhac@lrde.org>
parents:
78232
diff
changeset
|
145 debug-file " for instructions.\n"))) |
68115
09374864b194
(report-emacs-bug-text-prompt): Delete var.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents:
68075
diff
changeset
|
146 (add-text-properties (1+ user-point) (point) prompt-properties) |
64555
8a35276b0990
(report-emacs-bug): Request that backtraces are
Kim F. Storm <storm@cua.dk>
parents:
64085
diff
changeset
|
147 |
8a35276b0990
(report-emacs-bug): Request that backtraces are
Kim F. Storm <storm@cua.dk>
parents:
64085
diff
changeset
|
148 (insert "\n\nIn " (emacs-version) "\n") |
57768
84cd4892a56e
* mail/emacsbug.el (report-emacs-bug): Insert x-server-vendor
Jan Djärv <jan.h.d@swipnet.se>
parents:
52757
diff
changeset
|
149 (if (fboundp 'x-server-vendor) |
58462
8d3f889b4462
* mail/emacsbug.el (report-emacs-bug): Catch error that x-server-vendor
Jan Djärv <jan.h.d@swipnet.se>
parents:
57768
diff
changeset
|
150 (condition-case nil |
76450
a3474cbaf397
(report-emacs-bug): Don't hard code the "X" name.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
75347
diff
changeset
|
151 ;; This is used not only for X11 but also W32 and others. |
a3474cbaf397
(report-emacs-bug): Don't hard code the "X" name.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
75347
diff
changeset
|
152 (insert "Windowing system distributor `" (x-server-vendor) |
a3474cbaf397
(report-emacs-bug): Don't hard code the "X" name.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
75347
diff
changeset
|
153 "', version " |
58462
8d3f889b4462
* mail/emacsbug.el (report-emacs-bug): Catch error that x-server-vendor
Jan Djärv <jan.h.d@swipnet.se>
parents:
57768
diff
changeset
|
154 (mapconcat 'number-to-string (x-server-version) ".") "\n") |
8d3f889b4462
* mail/emacsbug.el (report-emacs-bug): Catch error that x-server-vendor
Jan Djärv <jan.h.d@swipnet.se>
parents:
57768
diff
changeset
|
155 (error t))) |
20052
38942e2dfffa
(report-emacs-bug): Delete the condition-case.
Karl Heuer <kwzh@gnu.org>
parents:
18827
diff
changeset
|
156 (if (and system-configuration-options |
38942e2dfffa
(report-emacs-bug): Delete the condition-case.
Karl Heuer <kwzh@gnu.org>
parents:
18827
diff
changeset
|
157 (not (equal system-configuration-options ""))) |
38942e2dfffa
(report-emacs-bug): Delete the condition-case.
Karl Heuer <kwzh@gnu.org>
parents:
18827
diff
changeset
|
158 (insert "configured using `configure " |
45346
abf76eedb517
(report-emacs-bug-text-prompt): New variable.
Markus Rost <rost@math.uni-bielefeld.de>
parents:
45273
diff
changeset
|
159 system-configuration-options "'\n\n")) |
35427
21fa311a0352
(report-emacs-bug): Report values of
Eli Zaretskii <eliz@gnu.org>
parents:
33153
diff
changeset
|
160 (insert "Important settings:\n") |
84912
417443aefcdd
(report-emacs-bug): Use `mapc' rather than `mapcar'.
Juanma Barranquero <lekktu@gmail.com>
parents:
82434
diff
changeset
|
161 (mapc |
37065
9a4674999109
(report-emacs-bug): Report LC_COLLATE,
Eli Zaretskii <eliz@gnu.org>
parents:
35516
diff
changeset
|
162 '(lambda (var) |
9a4674999109
(report-emacs-bug): Report LC_COLLATE,
Eli Zaretskii <eliz@gnu.org>
parents:
35516
diff
changeset
|
163 (insert (format " value of $%s: %s\n" var (getenv var)))) |
9a4674999109
(report-emacs-bug): Report LC_COLLATE,
Eli Zaretskii <eliz@gnu.org>
parents:
35516
diff
changeset
|
164 '("LC_ALL" "LC_COLLATE" "LC_CTYPE" "LC_MESSAGES" |
90701
ca120caa5838
(report-emacs-bug): Insert also the value of
Kenichi Handa <handa@m17n.org>
parents:
90650
diff
changeset
|
165 "LC_MONETARY" "LC_NUMERIC" "LC_TIME" "LANG" "XMODIFIERS")) |
35427
21fa311a0352
(report-emacs-bug): Report values of
Eli Zaretskii <eliz@gnu.org>
parents:
33153
diff
changeset
|
166 (insert (format " locale-coding-system: %s\n" locale-coding-system)) |
21fa311a0352
(report-emacs-bug): Report values of
Eli Zaretskii <eliz@gnu.org>
parents:
33153
diff
changeset
|
167 (insert (format " default-enable-multibyte-characters: %s\n" |
21fa311a0352
(report-emacs-bug): Report values of
Eli Zaretskii <eliz@gnu.org>
parents:
33153
diff
changeset
|
168 default-enable-multibyte-characters)) |
20052
38942e2dfffa
(report-emacs-bug): Delete the condition-case.
Karl Heuer <kwzh@gnu.org>
parents:
18827
diff
changeset
|
169 (insert "\n") |
52757
c546768fdb22
(report-emacs-bug): Fix previous change.
Richard M. Stallman <rms@gnu.org>
parents:
52686
diff
changeset
|
170 (insert (format "Major mode: %s\n" |
87567
4c3c683cdff8
* erc-ibuffer.el (erc-channel-modes):
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
87120
diff
changeset
|
171 (format-mode-line |
4c3c683cdff8
* erc-ibuffer.el (erc-channel-modes):
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
87120
diff
changeset
|
172 (buffer-local-value 'mode-name from-buffer) |
4c3c683cdff8
* erc-ibuffer.el (erc-channel-modes):
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
87120
diff
changeset
|
173 nil nil from-buffer))) |
52686
ef1f49172c0b
(report-emacs-bug): Mention major and minor modes.
Richard M. Stallman <rms@gnu.org>
parents:
52401
diff
changeset
|
174 (insert "\n") |
ef1f49172c0b
(report-emacs-bug): Mention major and minor modes.
Richard M. Stallman <rms@gnu.org>
parents:
52401
diff
changeset
|
175 (insert "Minor modes in effect:\n") |
ef1f49172c0b
(report-emacs-bug): Mention major and minor modes.
Richard M. Stallman <rms@gnu.org>
parents:
52401
diff
changeset
|
176 (dolist (mode minor-mode-list) |
52757
c546768fdb22
(report-emacs-bug): Fix previous change.
Richard M. Stallman <rms@gnu.org>
parents:
52686
diff
changeset
|
177 (and (boundp mode) (buffer-local-value mode from-buffer) |
c546768fdb22
(report-emacs-bug): Fix previous change.
Richard M. Stallman <rms@gnu.org>
parents:
52686
diff
changeset
|
178 (insert (format " %s: %s\n" mode |
c546768fdb22
(report-emacs-bug): Fix previous change.
Richard M. Stallman <rms@gnu.org>
parents:
52686
diff
changeset
|
179 (buffer-local-value mode from-buffer))))) |
52686
ef1f49172c0b
(report-emacs-bug): Mention major and minor modes.
Richard M. Stallman <rms@gnu.org>
parents:
52401
diff
changeset
|
180 (insert "\n") |
45346
abf76eedb517
(report-emacs-bug-text-prompt): New variable.
Markus Rost <rost@math.uni-bielefeld.de>
parents:
45273
diff
changeset
|
181 (insert "Recent input:\n") |
20052
38942e2dfffa
(report-emacs-bug): Delete the condition-case.
Karl Heuer <kwzh@gnu.org>
parents:
18827
diff
changeset
|
182 (let ((before-keys (point))) |
38942e2dfffa
(report-emacs-bug): Delete the condition-case.
Karl Heuer <kwzh@gnu.org>
parents:
18827
diff
changeset
|
183 (insert (mapconcat (lambda (key) |
38942e2dfffa
(report-emacs-bug): Delete the condition-case.
Karl Heuer <kwzh@gnu.org>
parents:
18827
diff
changeset
|
184 (if (or (integerp key) |
38942e2dfffa
(report-emacs-bug): Delete the condition-case.
Karl Heuer <kwzh@gnu.org>
parents:
18827
diff
changeset
|
185 (symbolp key) |
38942e2dfffa
(report-emacs-bug): Delete the condition-case.
Karl Heuer <kwzh@gnu.org>
parents:
18827
diff
changeset
|
186 (listp key)) |
38942e2dfffa
(report-emacs-bug): Delete the condition-case.
Karl Heuer <kwzh@gnu.org>
parents:
18827
diff
changeset
|
187 (single-key-description key) |
38942e2dfffa
(report-emacs-bug): Delete the condition-case.
Karl Heuer <kwzh@gnu.org>
parents:
18827
diff
changeset
|
188 (prin1-to-string key nil))) |
38942e2dfffa
(report-emacs-bug): Delete the condition-case.
Karl Heuer <kwzh@gnu.org>
parents:
18827
diff
changeset
|
189 (or recent-keys (recent-keys)) |
38942e2dfffa
(report-emacs-bug): Delete the condition-case.
Karl Heuer <kwzh@gnu.org>
parents:
18827
diff
changeset
|
190 " ")) |
38942e2dfffa
(report-emacs-bug): Delete the condition-case.
Karl Heuer <kwzh@gnu.org>
parents:
18827
diff
changeset
|
191 (save-restriction |
38942e2dfffa
(report-emacs-bug): Delete the condition-case.
Karl Heuer <kwzh@gnu.org>
parents:
18827
diff
changeset
|
192 (narrow-to-region before-keys (point)) |
38942e2dfffa
(report-emacs-bug): Delete the condition-case.
Karl Heuer <kwzh@gnu.org>
parents:
18827
diff
changeset
|
193 (goto-char before-keys) |
38942e2dfffa
(report-emacs-bug): Delete the condition-case.
Karl Heuer <kwzh@gnu.org>
parents:
18827
diff
changeset
|
194 (while (progn (move-to-column 50) (not (eobp))) |
38942e2dfffa
(report-emacs-bug): Delete the condition-case.
Karl Heuer <kwzh@gnu.org>
parents:
18827
diff
changeset
|
195 (search-forward " " nil t) |
38942e2dfffa
(report-emacs-bug): Delete the condition-case.
Karl Heuer <kwzh@gnu.org>
parents:
18827
diff
changeset
|
196 (insert "\n")))) |
38942e2dfffa
(report-emacs-bug): Delete the condition-case.
Karl Heuer <kwzh@gnu.org>
parents:
18827
diff
changeset
|
197 (let ((message-buf (get-buffer "*Messages*"))) |
38942e2dfffa
(report-emacs-bug): Delete the condition-case.
Karl Heuer <kwzh@gnu.org>
parents:
18827
diff
changeset
|
198 (if message-buf |
38942e2dfffa
(report-emacs-bug): Delete the condition-case.
Karl Heuer <kwzh@gnu.org>
parents:
18827
diff
changeset
|
199 (let (beg-pos |
38942e2dfffa
(report-emacs-bug): Delete the condition-case.
Karl Heuer <kwzh@gnu.org>
parents:
18827
diff
changeset
|
200 (end-pos message-end-point)) |
38942e2dfffa
(report-emacs-bug): Delete the condition-case.
Karl Heuer <kwzh@gnu.org>
parents:
18827
diff
changeset
|
201 (with-current-buffer message-buf |
38942e2dfffa
(report-emacs-bug): Delete the condition-case.
Karl Heuer <kwzh@gnu.org>
parents:
18827
diff
changeset
|
202 (goto-char end-pos) |
38942e2dfffa
(report-emacs-bug): Delete the condition-case.
Karl Heuer <kwzh@gnu.org>
parents:
18827
diff
changeset
|
203 (forward-line -10) |
38942e2dfffa
(report-emacs-bug): Delete the condition-case.
Karl Heuer <kwzh@gnu.org>
parents:
18827
diff
changeset
|
204 (setq beg-pos (point))) |
38942e2dfffa
(report-emacs-bug): Delete the condition-case.
Karl Heuer <kwzh@gnu.org>
parents:
18827
diff
changeset
|
205 (insert "\n\nRecent messages:\n") |
38942e2dfffa
(report-emacs-bug): Delete the condition-case.
Karl Heuer <kwzh@gnu.org>
parents:
18827
diff
changeset
|
206 (insert-buffer-substring message-buf beg-pos end-pos)))) |
38942e2dfffa
(report-emacs-bug): Delete the condition-case.
Karl Heuer <kwzh@gnu.org>
parents:
18827
diff
changeset
|
207 ;; This is so the user has to type something |
38942e2dfffa
(report-emacs-bug): Delete the condition-case.
Karl Heuer <kwzh@gnu.org>
parents:
18827
diff
changeset
|
208 ;; in order to send easily. |
38942e2dfffa
(report-emacs-bug): Delete the condition-case.
Karl Heuer <kwzh@gnu.org>
parents:
18827
diff
changeset
|
209 (use-local-map (nconc (make-sparse-keymap) (current-local-map))) |
38942e2dfffa
(report-emacs-bug): Delete the condition-case.
Karl Heuer <kwzh@gnu.org>
parents:
18827
diff
changeset
|
210 (define-key (current-local-map) "\C-c\C-i" 'report-emacs-bug-info) |
21975
386e14726b59
(report-emacs-bug): Don't display *Bug Help* if
Richard M. Stallman <rms@gnu.org>
parents:
21974
diff
changeset
|
211 (unless report-emacs-bug-no-explanations |
386e14726b59
(report-emacs-bug): Don't display *Bug Help* if
Richard M. Stallman <rms@gnu.org>
parents:
21974
diff
changeset
|
212 (with-output-to-temp-buffer "*Bug Help*" |
386e14726b59
(report-emacs-bug): Don't display *Bug Help* if
Richard M. Stallman <rms@gnu.org>
parents:
21974
diff
changeset
|
213 (if (eq mail-user-agent 'sendmail-user-agent) |
386e14726b59
(report-emacs-bug): Don't display *Bug Help* if
Richard M. Stallman <rms@gnu.org>
parents:
21974
diff
changeset
|
214 (princ (substitute-command-keys |
386e14726b59
(report-emacs-bug): Don't display *Bug Help* if
Richard M. Stallman <rms@gnu.org>
parents:
21974
diff
changeset
|
215 "Type \\[mail-send-and-exit] to send the bug report.\n"))) |
386e14726b59
(report-emacs-bug): Don't display *Bug Help* if
Richard M. Stallman <rms@gnu.org>
parents:
21974
diff
changeset
|
216 (princ (substitute-command-keys |
386e14726b59
(report-emacs-bug): Don't display *Bug Help* if
Richard M. Stallman <rms@gnu.org>
parents:
21974
diff
changeset
|
217 "Type \\[kill-buffer] RET to cancel (don't send it).\n")) |
386e14726b59
(report-emacs-bug): Don't display *Bug Help* if
Richard M. Stallman <rms@gnu.org>
parents:
21974
diff
changeset
|
218 (terpri) |
386e14726b59
(report-emacs-bug): Don't display *Bug Help* if
Richard M. Stallman <rms@gnu.org>
parents:
21974
diff
changeset
|
219 (princ (substitute-command-keys |
386e14726b59
(report-emacs-bug): Don't display *Bug Help* if
Richard M. Stallman <rms@gnu.org>
parents:
21974
diff
changeset
|
220 "Type \\[report-emacs-bug-info] to visit in Info the Emacs Manual section |
12155
63887def546f
(report-emacs-bug-info): New command.
Karl Heuer <kwzh@gnu.org>
parents:
8921
diff
changeset
|
221 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
|
222 and what information to supply so that the bug can be fixed. |
21975
386e14726b59
(report-emacs-bug): Don't display *Bug Help* if
Richard M. Stallman <rms@gnu.org>
parents:
21974
diff
changeset
|
223 Type SPC to scroll through this section and its subsections.")))) |
20052
38942e2dfffa
(report-emacs-bug): Delete the condition-case.
Karl Heuer <kwzh@gnu.org>
parents:
18827
diff
changeset
|
224 ;; Make it less likely people will send empty messages. |
38942e2dfffa
(report-emacs-bug): Delete the condition-case.
Karl Heuer <kwzh@gnu.org>
parents:
18827
diff
changeset
|
225 (make-local-variable 'mail-send-hook) |
38942e2dfffa
(report-emacs-bug): Delete the condition-case.
Karl Heuer <kwzh@gnu.org>
parents:
18827
diff
changeset
|
226 (add-hook 'mail-send-hook 'report-emacs-bug-hook) |
38942e2dfffa
(report-emacs-bug): Delete the condition-case.
Karl Heuer <kwzh@gnu.org>
parents:
18827
diff
changeset
|
227 (save-excursion |
38942e2dfffa
(report-emacs-bug): Delete the condition-case.
Karl Heuer <kwzh@gnu.org>
parents:
18827
diff
changeset
|
228 (goto-char (point-max)) |
38942e2dfffa
(report-emacs-bug): Delete the condition-case.
Karl Heuer <kwzh@gnu.org>
parents:
18827
diff
changeset
|
229 (skip-chars-backward " \t\n") |
38942e2dfffa
(report-emacs-bug): Delete the condition-case.
Karl Heuer <kwzh@gnu.org>
parents:
18827
diff
changeset
|
230 (make-local-variable 'report-emacs-bug-orig-text) |
38942e2dfffa
(report-emacs-bug): Delete the condition-case.
Karl Heuer <kwzh@gnu.org>
parents:
18827
diff
changeset
|
231 (setq report-emacs-bug-orig-text (buffer-substring (point-min) (point)))) |
38942e2dfffa
(report-emacs-bug): Delete the condition-case.
Karl Heuer <kwzh@gnu.org>
parents:
18827
diff
changeset
|
232 (goto-char user-point))) |
8130
c84ecb24316c
(report-emacs-bug-hook): Error if user has added no text.
Richard M. Stallman <rms@gnu.org>
parents:
7300
diff
changeset
|
233 |
87120
3c5c060feba3
Remove directory part from filenames in function declarations.
Glenn Morris <rgm@gnu.org>
parents:
86265
diff
changeset
|
234 (declare-function Info-menu "info" (menu-item &optional fork)) |
3c5c060feba3
Remove directory part from filenames in function declarations.
Glenn Morris <rgm@gnu.org>
parents:
86265
diff
changeset
|
235 (declare-function Info-goto-node "info" (nodename &optional fork)) |
86247
fc93e9674475
* progmodes/python.el (info-lookup-maybe-add-help):
Dan Nicolaescu <dann@ics.uci.edu>
parents:
84912
diff
changeset
|
236 |
12155
63887def546f
(report-emacs-bug-info): New command.
Karl Heuer <kwzh@gnu.org>
parents:
8921
diff
changeset
|
237 (defun report-emacs-bug-info () |
63887def546f
(report-emacs-bug-info): New command.
Karl Heuer <kwzh@gnu.org>
parents:
8921
diff
changeset
|
238 "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
|
239 (interactive) |
63887def546f
(report-emacs-bug-info): New command.
Karl Heuer <kwzh@gnu.org>
parents:
8921
diff
changeset
|
240 (info) |
63887def546f
(report-emacs-bug-info): New command.
Karl Heuer <kwzh@gnu.org>
parents:
8921
diff
changeset
|
241 (Info-directory) |
63887def546f
(report-emacs-bug-info): New command.
Karl Heuer <kwzh@gnu.org>
parents:
8921
diff
changeset
|
242 (Info-menu "emacs") |
63887def546f
(report-emacs-bug-info): New command.
Karl Heuer <kwzh@gnu.org>
parents:
8921
diff
changeset
|
243 (Info-goto-node "Bugs")) |
63887def546f
(report-emacs-bug-info): New command.
Karl Heuer <kwzh@gnu.org>
parents:
8921
diff
changeset
|
244 |
8130
c84ecb24316c
(report-emacs-bug-hook): Error if user has added no text.
Richard M. Stallman <rms@gnu.org>
parents:
7300
diff
changeset
|
245 (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
|
246 (save-excursion |
45381
845f37c81b22
(report-emacs-bug-hook): Do another save-excursion.
Markus Rost <rost@math.uni-bielefeld.de>
parents:
45346
diff
changeset
|
247 (save-excursion |
845f37c81b22
(report-emacs-bug-hook): Do another save-excursion.
Markus Rost <rost@math.uni-bielefeld.de>
parents:
45346
diff
changeset
|
248 (goto-char (point-max)) |
845f37c81b22
(report-emacs-bug-hook): Do another save-excursion.
Markus Rost <rost@math.uni-bielefeld.de>
parents:
45346
diff
changeset
|
249 (skip-chars-backward " \t\n") |
845f37c81b22
(report-emacs-bug-hook): Do another save-excursion.
Markus Rost <rost@math.uni-bielefeld.de>
parents:
45346
diff
changeset
|
250 (if (and (= (- (point) (point-min)) |
845f37c81b22
(report-emacs-bug-hook): Do another save-excursion.
Markus Rost <rost@math.uni-bielefeld.de>
parents:
45346
diff
changeset
|
251 (length report-emacs-bug-orig-text)) |
845f37c81b22
(report-emacs-bug-hook): Do another save-excursion.
Markus Rost <rost@math.uni-bielefeld.de>
parents:
45346
diff
changeset
|
252 (equal (buffer-substring (point-min) (point)) |
845f37c81b22
(report-emacs-bug-hook): Do another save-excursion.
Markus Rost <rost@math.uni-bielefeld.de>
parents:
45346
diff
changeset
|
253 report-emacs-bug-orig-text)) |
845f37c81b22
(report-emacs-bug-hook): Do another save-excursion.
Markus Rost <rost@math.uni-bielefeld.de>
parents:
45346
diff
changeset
|
254 (error "No text entered in bug report"))) |
18795
3446ea06d63f
(report-emacs-bug-run-tersely): New variable
Kenichi Handa <handa@m17n.org>
parents:
18608
diff
changeset
|
255 |
3446ea06d63f
(report-emacs-bug-run-tersely): New variable
Kenichi Handa <handa@m17n.org>
parents:
18608
diff
changeset
|
256 ;; Check the buffer contents and reject non-English letters. |
21360
238c1cd70a27
(report-emacs-bug-hook): Use skip-chars-forward
Richard M. Stallman <rms@gnu.org>
parents:
21353
diff
changeset
|
257 (save-excursion |
238c1cd70a27
(report-emacs-bug-hook): Use skip-chars-forward
Richard M. Stallman <rms@gnu.org>
parents:
21353
diff
changeset
|
258 (goto-char (point-min)) |
238c1cd70a27
(report-emacs-bug-hook): Use skip-chars-forward
Richard M. Stallman <rms@gnu.org>
parents:
21353
diff
changeset
|
259 (skip-chars-forward "\0-\177") |
238c1cd70a27
(report-emacs-bug-hook): Use skip-chars-forward
Richard M. Stallman <rms@gnu.org>
parents:
21353
diff
changeset
|
260 (if (not (eobp)) |
20774
d56dca77717a
(emacsbug): Customized.
Richard M. Stallman <rms@gnu.org>
parents:
20052
diff
changeset
|
261 (if (or report-emacs-bug-no-confirmation |
18826
cb22b83e1bf8
Improve text of messages.
Richard M. Stallman <rms@gnu.org>
parents:
18795
diff
changeset
|
262 (y-or-n-p "Convert non-ASCII letters to hexadecimal? ")) |
21360
238c1cd70a27
(report-emacs-bug-hook): Use skip-chars-forward
Richard M. Stallman <rms@gnu.org>
parents:
21353
diff
changeset
|
263 (while (progn (skip-chars-forward "\0-\177") |
238c1cd70a27
(report-emacs-bug-hook): Use skip-chars-forward
Richard M. Stallman <rms@gnu.org>
parents:
21353
diff
changeset
|
264 (not (eobp))) |
238c1cd70a27
(report-emacs-bug-hook): Use skip-chars-forward
Richard M. Stallman <rms@gnu.org>
parents:
21353
diff
changeset
|
265 (let ((ch (following-char))) |
238c1cd70a27
(report-emacs-bug-hook): Use skip-chars-forward
Richard M. Stallman <rms@gnu.org>
parents:
21353
diff
changeset
|
266 (delete-char 1) |
21498
e69604162c2b
(report-emacs-bug-hook): Don't absolutely
Karl Heuer <kwzh@gnu.org>
parents:
21360
diff
changeset
|
267 (insert (format "=%02x" ch))))))) |
18795
3446ea06d63f
(report-emacs-bug-run-tersely): New variable
Kenichi Handa <handa@m17n.org>
parents:
18608
diff
changeset
|
268 |
3446ea06d63f
(report-emacs-bug-run-tersely): New variable
Kenichi Handa <handa@m17n.org>
parents:
18608
diff
changeset
|
269 ;; The last warning for novice users. |
20774
d56dca77717a
(emacsbug): Customized.
Richard M. Stallman <rms@gnu.org>
parents:
20052
diff
changeset
|
270 (if (or report-emacs-bug-no-confirmation |
18795
3446ea06d63f
(report-emacs-bug-run-tersely): New variable
Kenichi Handa <handa@m17n.org>
parents:
18608
diff
changeset
|
271 (yes-or-no-p |
18826
cb22b83e1bf8
Improve text of messages.
Richard M. Stallman <rms@gnu.org>
parents:
18795
diff
changeset
|
272 "Send this bug report to the Emacs maintainers? ")) |
18795
3446ea06d63f
(report-emacs-bug-run-tersely): New variable
Kenichi Handa <handa@m17n.org>
parents:
18608
diff
changeset
|
273 ;; Just send the current mail. |
3446ea06d63f
(report-emacs-bug-run-tersely): New variable
Kenichi Handa <handa@m17n.org>
parents:
18608
diff
changeset
|
274 nil |
3446ea06d63f
(report-emacs-bug-run-tersely): New variable
Kenichi Handa <handa@m17n.org>
parents:
18608
diff
changeset
|
275 (goto-char (point-min)) |
3446ea06d63f
(report-emacs-bug-run-tersely): New variable
Kenichi Handa <handa@m17n.org>
parents:
18608
diff
changeset
|
276 (if (search-forward "To: ") |
3446ea06d63f
(report-emacs-bug-run-tersely): New variable
Kenichi Handa <handa@m17n.org>
parents:
18608
diff
changeset
|
277 (let ((pos (point))) |
3446ea06d63f
(report-emacs-bug-run-tersely): New variable
Kenichi Handa <handa@m17n.org>
parents:
18608
diff
changeset
|
278 (end-of-line) |
3446ea06d63f
(report-emacs-bug-run-tersely): New variable
Kenichi Handa <handa@m17n.org>
parents:
18608
diff
changeset
|
279 (delete-region pos (point)))) |
3446ea06d63f
(report-emacs-bug-run-tersely): New variable
Kenichi Handa <handa@m17n.org>
parents:
18608
diff
changeset
|
280 (kill-local-variable 'mail-send-hook) |
3446ea06d63f
(report-emacs-bug-run-tersely): New variable
Kenichi Handa <handa@m17n.org>
parents:
18608
diff
changeset
|
281 (with-output-to-temp-buffer "*Bug Help*" |
3446ea06d63f
(report-emacs-bug-run-tersely): New variable
Kenichi Handa <handa@m17n.org>
parents:
18608
diff
changeset
|
282 (princ (substitute-command-keys "\ |
18826
cb22b83e1bf8
Improve text of messages.
Richard M. Stallman <rms@gnu.org>
parents:
18795
diff
changeset
|
283 You invoked the command M-x report-emacs-bug, |
cb22b83e1bf8
Improve text of messages.
Richard M. Stallman <rms@gnu.org>
parents:
18795
diff
changeset
|
284 but you decided not to mail the bug report to the Emacs maintainers. |
18795
3446ea06d63f
(report-emacs-bug-run-tersely): New variable
Kenichi Handa <handa@m17n.org>
parents:
18608
diff
changeset
|
285 |
18826
cb22b83e1bf8
Improve text of messages.
Richard M. Stallman <rms@gnu.org>
parents:
18795
diff
changeset
|
286 If you want to mail it to someone else instead, |
cb22b83e1bf8
Improve text of messages.
Richard M. Stallman <rms@gnu.org>
parents:
18795
diff
changeset
|
287 please insert the proper e-mail address after \"To: \", |
cb22b83e1bf8
Improve text of messages.
Richard M. Stallman <rms@gnu.org>
parents:
18795
diff
changeset
|
288 and send the mail again using \\[mail-send-and-exit]."))) |
cb22b83e1bf8
Improve text of messages.
Richard M. Stallman <rms@gnu.org>
parents:
18795
diff
changeset
|
289 (error "M-x report-emacs-bug was cancelled, please read *Bug Help* buffer")) |
44056
448873845bcc
(report-emacs-bug-hook): Remove submitter
Thien-Thi Nguyen <ttn@gnuvola.org>
parents:
39067
diff
changeset
|
290 |
448873845bcc
(report-emacs-bug-hook): Remove submitter
Thien-Thi Nguyen <ttn@gnuvola.org>
parents:
39067
diff
changeset
|
291 ;; Unclutter |
448873845bcc
(report-emacs-bug-hook): Remove submitter
Thien-Thi Nguyen <ttn@gnuvola.org>
parents:
39067
diff
changeset
|
292 (mail-text) |
68115
09374864b194
(report-emacs-bug-text-prompt): Delete var.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents:
68075
diff
changeset
|
293 (let ((pos (1- (point)))) |
09374864b194
(report-emacs-bug-text-prompt): Delete var.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents:
68075
diff
changeset
|
294 (while (setq pos (text-property-any pos (point-max) |
09374864b194
(report-emacs-bug-text-prompt): Delete var.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents:
68075
diff
changeset
|
295 'field 'emacsbug-prompt)) |
09374864b194
(report-emacs-bug-text-prompt): Delete var.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents:
68075
diff
changeset
|
296 (delete-region pos (field-end (1+ pos))))))) |
36 | 297 |
2348
581cda633215
Added a (provide 'emacsbug); lisp-mnt.el needs this.
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2307
diff
changeset
|
298 (provide 'emacsbug) |
581cda633215
Added a (provide 'emacsbug); lisp-mnt.el needs this.
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2307
diff
changeset
|
299 |
76450
a3474cbaf397
(report-emacs-bug): Don't hard code the "X" name.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
75347
diff
changeset
|
300 ;; arch-tag: 248b6523-c3b5-4fec-9a3f-0411fafa7d49 |
662
8a533acedb77
*** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
474
diff
changeset
|
301 ;;; emacsbug.el ends here |