# HG changeset patch # User Thien-Thi Nguyen # Date 1136897969 0 # Node ID 09374864b194bbf1479cc6ea9a0ba4840fd3fd41 # Parent 86ac787740e6eecf9c8f9fcd33e95d0a06d5123b (report-emacs-bug-text-prompt): Delete var. (report-emacs-bug): Don't record initial prompt text. Instead, add text properties to prompting text. (report-emacs-bug-hook): Delete prompting text. diff -r 86ac787740e6 -r 09374864b194 lisp/mail/emacsbug.el --- a/lisp/mail/emacsbug.el Tue Jan 10 06:44:16 2006 +0000 +++ b/lisp/mail/emacsbug.el Tue Jan 10 12:59:29 2006 +0000 @@ -56,9 +56,6 @@ (defvar report-emacs-bug-orig-text nil "The automatically-created initial text of bug report.") -(defvar report-emacs-bug-text-prompt nil - "The automatically-created initial prompt of bug report.") - (defcustom report-emacs-bug-no-confirmation nil "*If non-nil, suppress the confirmations asked for the sake of novice users." :group 'emacsbug @@ -83,7 +80,11 @@ (reporting-address (if pretest-p report-emacs-bug-pretest-address report-emacs-bug-address)) - user-point prompt-beg-point message-end-point) + ;; Put these properties on semantically-void text. + (prompt-properties '(field emacsbug-prompt + intangible but-helpful + rear-nonsticky t)) + user-point message-end-point) (setq message-end-point (with-current-buffer (get-buffer-create "*Messages*") (point-max-marker))) @@ -98,7 +99,6 @@ (delete-region (point) (point-max)) (insert signature) (backward-char (length signature))) - (setq prompt-beg-point (point)) (unless report-emacs-bug-no-explanations ;; Insert warnings for novice users. (when (string-match "@gnu\\.org^" reporting-address) @@ -119,11 +119,10 @@ (insert ",\nand to the gnu.emacs.bug news group.\n\n"))) (insert "Please describe exactly what actions triggered the bug\n" - "and the precise symptoms of the bug:") - (setq report-emacs-bug-text-prompt - (buffer-substring prompt-beg-point (point))) + "and the precise symptoms of the bug:\n\n") + (add-text-properties (point) (save-excursion (mail-text) (point)) + prompt-properties) - (insert "\n\n") (setq user-point (point)) (insert "\n\n") @@ -135,6 +134,7 @@ (if (file-readable-p debug-file) (insert "If you would like to further debug the crash, please read the file\n" debug-file " for instructions.\n"))) + (add-text-properties (1+ user-point) (point) prompt-properties) (insert "\n\nIn " (emacs-version) "\n") (if (fboundp 'x-server-vendor) @@ -274,8 +274,10 @@ ;; Unclutter (mail-text) - (if (looking-at report-emacs-bug-text-prompt) - (replace-match "Symptoms:")))) + (let ((pos (1- (point)))) + (while (setq pos (text-property-any pos (point-max) + 'field 'emacsbug-prompt)) + (delete-region pos (field-end (1+ pos))))))) (provide 'emacsbug)