From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: "Drew Adams" Newsgroups: gmane.emacs.bugs Subject: bug#13141: [PATCH]: bug#13141: 24.3.50; Be able to customize the info included by default for`report-emacs-bug' Date: Tue, 11 Dec 2012 11:59:56 -0800 Message-ID: References: <9k62485q68.fsf@fencepost.gnu.org> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="----=_NextPart_000_00D2_01CDD797.09FAFE50" X-Trace: ger.gmane.org 1355256036 15405 80.91.229.3 (11 Dec 2012 20:00:36 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Tue, 11 Dec 2012 20:00:36 +0000 (UTC) To: "'Glenn Morris'" , <13141@debbugs.gnu.org> Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Tue Dec 11 21:00:50 2012 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1TiW0W-0001md-Mj for geb-bug-gnu-emacs@m.gmane.org; Tue, 11 Dec 2012 21:00:49 +0100 Original-Received: from localhost ([::1]:52262 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TiW0J-0003ZO-P3 for geb-bug-gnu-emacs@m.gmane.org; Tue, 11 Dec 2012 15:00:35 -0500 Original-Received: from eggs.gnu.org ([208.118.235.92]:46730) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TiW09-0003Z5-MB for bug-gnu-emacs@gnu.org; Tue, 11 Dec 2012 15:00:33 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1TiW03-0007WE-Nb for bug-gnu-emacs@gnu.org; Tue, 11 Dec 2012 15:00:25 -0500 Original-Received: from debbugs.gnu.org ([140.186.70.43]:55589) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TiW03-0007W9-K0 for bug-gnu-emacs@gnu.org; Tue, 11 Dec 2012 15:00:19 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.72) (envelope-from ) id 1TiW0j-0002sC-Ob for bug-gnu-emacs@gnu.org; Tue, 11 Dec 2012 15:01:01 -0500 X-Loop: help-debbugs@gnu.org Resent-From: "Drew Adams" Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 11 Dec 2012 20:01:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 13141 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: wontfix Original-Received: via spool by 13141-submit@debbugs.gnu.org id=B13141.135525605111025 (code B ref 13141); Tue, 11 Dec 2012 20:01:01 +0000 Original-Received: (at 13141) by debbugs.gnu.org; 11 Dec 2012 20:00:51 +0000 Original-Received: from localhost ([127.0.0.1]:37607 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1TiW0Y-0002rl-LM for submit@debbugs.gnu.org; Tue, 11 Dec 2012 15:00:51 -0500 Original-Received: from aserp1040.oracle.com ([141.146.126.69]:47095) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1TiW0V-0002rc-6G for 13141@debbugs.gnu.org; Tue, 11 Dec 2012 15:00:48 -0500 Original-Received: from ucsinet21.oracle.com (ucsinet21.oracle.com [156.151.31.93]) by aserp1040.oracle.com (Sentrion-MTA-4.2.2/Sentrion-MTA-4.2.2) with ESMTP id qBBK03o8028444 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Tue, 11 Dec 2012 20:00:04 GMT Original-Received: from acsmt356.oracle.com (acsmt356.oracle.com [141.146.40.156]) by ucsinet21.oracle.com (8.14.4+Sun/8.14.4) with ESMTP id qBBK02le006292 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Tue, 11 Dec 2012 20:00:02 GMT Original-Received: from abhmt108.oracle.com (abhmt108.oracle.com [141.146.116.60]) by acsmt356.oracle.com (8.12.11.20060308/8.12.11) with ESMTP id qBBK01vu028583; Tue, 11 Dec 2012 14:00:02 -0600 Original-Received: from dradamslap1 (/10.159.239.109) by default (Oracle Beehive Gateway v4.0) with ESMTP ; Tue, 11 Dec 2012 12:00:01 -0800 X-Mailer: Microsoft Office Outlook 11 In-Reply-To: <9k62485q68.fsf@fencepost.gnu.org> X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.6157 Thread-Index: Ac3X2BNHJXKfjoCbSyeFSD3YM0AsuQAAbAgQ X-Source-IP: ucsinet21.oracle.com [156.151.31.93] X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Received-From: 140.186.70.43 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.bugs:68345 Archived-At: This is a multi-part message in MIME format. ------=_NextPart_000_00D2_01CDD797.09FAFE50 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit > tags 13141 wontfix > stop > > "Drew Adams" wrote: > > > Enhancement request: Let users customize the info that is included > > by default in the bug-report editing buffer > > There is no need for such complexity. > You don't have to faithfully use emacs -Q; M-x > report-emacs-bug for each > of your 1000+ bug reports, you can just mail bug-gnu-emacs > and make your > own call as to what info is needed. For example, it is > obvious that none > of the boilerplate information has any relevance to this request. > And configuration options have no relevance to doc bugs, etc. > If you don't want to make that call, then accept the defaults and move > on. This is not about me. (Is it about you, perhaps?) Attached is a patch. ------=_NextPart_000_00D2_01CDD797.09FAFE50 Content-Type: application/octet-stream; name="emacsbug.patch" Content-Transfer-Encoding: quoted-printable Content-Disposition: attachment; filename="emacsbug.patch" diff -c emacsbug.el emacsbug-patched-2012-12-11.el=0A= *** emacsbug.el Tue Dec 11 11:41:54 2012=0A= --- emacsbug-patched-2012-12-11.el Tue Dec 11 11:53:46 2012=0A= ***************=0A= *** 58,63 ****=0A= --- 58,81 ----=0A= :group 'emacsbug=0A= :type 'boolean)=0A= =0A= + (defcustom report-emacs-bug-included-fields '(version settings = major-mode=0A= + minor-modes recent-input=0A= + recent-messages = load-shadows=0A= + features)=0A= + "Fields to include by default for command `report-emacs-bug'.=0A= + The fields are included automatically in the buffer where you edit=0A= + your bug report."=0A= + :type '(set=0A= + (const :tag "Emacs version info" version)=0A= + (const :tag "Important settings" settings)=0A= + (const :tag "Major mode" major-mode)=0A= + (const :tag "Minor modes" minor-modes)=0A= + (const :tag "Recent input" recent-input)=0A= + (const :tag "Recent messages" recent-messages)=0A= + (const :tag "Load-path shadows" load-shadows)=0A= + (const :tag "Features" features))=0A= + :group 'convenience)=0A= + =0A= ;; User options end here.=0A= =0A= (defvar report-emacs-bug-orig-text nil=0A= ***************=0A= *** 229,323 ****=0A= (let ((txt (delete-and-extract-region (1+ user-point) (point))))=0A= (insert (propertize "\n" 'display txt)))=0A= =0A= ! (insert "\n\nIn " (emacs-version) "\n")=0A= ! (if (stringp emacs-bzr-version)=0A= ! (insert "Bzr revision: " emacs-bzr-version "\n"))=0A= ! (if (fboundp 'x-server-vendor)=0A= ! (condition-case nil=0A= ! ;; This is used not only for X11 but also W32 and others.=0A= ! (insert "Windowing system distributor `" (x-server-vendor)=0A= ! "', version "=0A= ! (mapconcat 'number-to-string (x-server-version) ".") "\n")=0A= ! (error t)))=0A= ! (let ((lsb (with-temp-buffer=0A= ! (if (eq 0 (ignore-errors=0A= ! (call-process "lsb_release" nil '(t nil)=0A= ! nil "-d")))=0A= ! (buffer-string)))))=0A= ! (if (stringp lsb)=0A= ! (insert "System " lsb "\n")))=0A= ! (when (and system-configuration-options=0A= ! (not (equal system-configuration-options "")))=0A= ! (insert "Configured using:\n `configure "=0A= ! system-configuration-options "'\n\n")=0A= ! (fill-region (line-beginning-position -1) (point)))=0A= ! (insert "Important settings:\n")=0A= ! (mapc=0A= ! (lambda (var)=0A= ! (let ((val (getenv var)))=0A= ! (if val (insert (format " value of $%s: %s\n" var val)))))=0A= ! '("EMACSDATA" "EMACSDOC" "EMACSLOADPATH" "EMACSPATH"=0A= ! "LC_ALL" "LC_COLLATE" "LC_CTYPE" "LC_MESSAGES"=0A= ! "LC_MONETARY" "LC_NUMERIC" "LC_TIME" "LANG" "XMODIFIERS"))=0A= ! (insert (format " locale-coding-system: %s\n" = locale-coding-system))=0A= ! (insert (format " default enable-multibyte-characters: %s\n"=0A= ! (default-value 'enable-multibyte-characters)))=0A= ! (insert "\n")=0A= ! (insert (format "Major mode: %s\n"=0A= ! (format-mode-line=0A= ! (buffer-local-value 'mode-name from-buffer)=0A= ! nil nil from-buffer)))=0A= ! (insert "\n")=0A= ! (insert "Minor modes in effect:\n")=0A= ! (dolist (mode minor-mode-list)=0A= ! (and (boundp mode) (buffer-local-value mode from-buffer)=0A= ! (insert (format " %s: %s\n" mode=0A= ! (buffer-local-value mode from-buffer)))))=0A= ! (insert "\n")=0A= ! (insert "Recent input:\n")=0A= ! (let ((before-keys (point)))=0A= ! (insert (mapconcat (lambda (key)=0A= ! (if (or (integerp key)=0A= ! (symbolp key)=0A= ! (listp key))=0A= ! (single-key-description key)=0A= ! (prin1-to-string key nil)))=0A= ! (or recent-keys (recent-keys))=0A= ! " "))=0A= ! (save-restriction=0A= ! (narrow-to-region before-keys (point))=0A= ! (goto-char before-keys)=0A= ! (while (progn (move-to-column 50) (not (eobp)))=0A= ! (search-forward " " nil t)=0A= ! (insert "\n"))))=0A= ! (let ((message-buf (get-buffer "*Messages*")))=0A= ! (if message-buf=0A= ! (let (beg-pos=0A= ! (end-pos message-end-point))=0A= ! (with-current-buffer message-buf=0A= ! (goto-char end-pos)=0A= ! (forward-line -10)=0A= ! (setq beg-pos (point)))=0A= ! (insert "\n\nRecent messages:\n")=0A= ! (insert-buffer-substring message-buf beg-pos end-pos))))=0A= ! ;; After Recent messages, to avoid the messages produced by=0A= ! ;; list-load-path-shadows.=0A= ! (unless (looking-back "\n")=0A= (insert "\n"))=0A= ! (insert "\n")=0A= ! (insert "Load-path shadows:\n")=0A= ! (let* ((msg "Checking for load-path shadows...")=0A= ! (result "done")=0A= ! (shadows (progn (message "%s" msg)=0A= ! (condition-case nil (list-load-path-shadows t)=0A= ! (error=0A= ! (setq result "error")=0A= ! "Error during checking")))))=0A= ! (message "%s%s" msg result)=0A= ! (insert (if (zerop (length shadows))=0A= ! "None found.\n"=0A= ! shadows)))=0A= ! (insert (format "\nFeatures:\n%s\n" features))=0A= (fill-region (line-beginning-position 0) (point))=0A= ;; This is so the user has to type something in order to send = easily.=0A= (use-local-map (nconc (make-sparse-keymap) (current-local-map)))=0A= --- 247,349 ----=0A= (let ((txt (delete-and-extract-region (1+ user-point) (point))))=0A= (insert (propertize "\n" 'display txt)))=0A= =0A= ! (when (member 'version report-emacs-bug-included-fields)=0A= ! (insert "\n\nIn " (emacs-version) "\n")=0A= ! (if (stringp emacs-bzr-version)=0A= ! (insert "Bzr revision: " emacs-bzr-version "\n"))=0A= ! (if (fboundp 'x-server-vendor)=0A= ! (condition-case nil=0A= ! ;; This is used not only for X11 but also W32 and others.=0A= ! (insert "Windowing system distributor `" = (x-server-vendor)=0A= ! "', version "=0A= ! (mapconcat 'number-to-string (x-server-version) = ".") "\n")=0A= ! (error t)))=0A= ! (let ((lsb (with-temp-buffer=0A= ! (if (eq 0 (ignore-errors=0A= ! (call-process "lsb_release" nil '(t nil)=0A= ! nil "-d")))=0A= ! (buffer-string)))))=0A= ! (if (stringp lsb)=0A= ! (insert "System " lsb "\n")))=0A= ! (when (and system-configuration-options=0A= ! (not (equal system-configuration-options "")))=0A= ! (insert "Configured using:\n `configure "=0A= ! system-configuration-options "'\n\n")=0A= ! (fill-region (line-beginning-position -1) (point))))=0A= ! (when (member 'settings report-emacs-bug-included-fields)=0A= ! (insert "Important settings:\n")=0A= ! (mapc=0A= ! (lambda (var)=0A= ! (let ((val (getenv var)))=0A= ! (if val (insert (format " value of $%s: %s\n" var val)))))=0A= ! '("EMACSDATA" "EMACSDOC" "EMACSLOADPATH" "EMACSPATH"=0A= ! "LC_ALL" "LC_COLLATE" "LC_CTYPE" "LC_MESSAGES"=0A= ! "LC_MONETARY" "LC_NUMERIC" "LC_TIME" "LANG" "XMODIFIERS"))=0A= ! (insert (format " locale-coding-system: %s\n" = locale-coding-system))=0A= ! (insert (format " default enable-multibyte-characters: %s\n"=0A= ! (default-value 'enable-multibyte-characters)))=0A= ! (insert "\n"))=0A= ! (when (member 'major-mode report-emacs-bug-included-fields)=0A= ! (insert (format "Major mode: %s\n"=0A= ! (format-mode-line=0A= ! (buffer-local-value 'mode-name from-buffer)=0A= ! nil nil from-buffer)))=0A= ! (insert "\n"))=0A= ! (when (member 'minor-modes report-emacs-bug-included-fields)=0A= ! (insert "Minor modes in effect:\n")=0A= ! (dolist (mode minor-mode-list)=0A= ! (and (boundp mode) (buffer-local-value mode from-buffer)=0A= ! (insert (format " %s: %s\n" mode=0A= ! (buffer-local-value mode from-buffer)))))=0A= ! (insert "\n"))=0A= ! (when (member 'recent-input report-emacs-bug-included-fields)=0A= ! (insert "Recent input:\n")=0A= ! (let ((before-keys (point)))=0A= ! (insert (mapconcat (lambda (key)=0A= ! (if (or (integerp key)=0A= ! (symbolp key)=0A= ! (listp key))=0A= ! (single-key-description key)=0A= ! (prin1-to-string key nil)))=0A= ! (or recent-keys (recent-keys))=0A= ! " "))=0A= ! (save-restriction=0A= ! (narrow-to-region before-keys (point))=0A= ! (goto-char before-keys)=0A= ! (while (progn (move-to-column 50) (not (eobp)))=0A= ! (search-forward " " nil t)=0A= ! (insert "\n")))))=0A= ! (when (member 'recent-messages report-emacs-bug-included-fields)=0A= ! (let ((message-buf (get-buffer "*Messages*")))=0A= ! (if message-buf=0A= ! (let (beg-pos=0A= ! (end-pos message-end-point))=0A= ! (with-current-buffer message-buf=0A= ! (goto-char end-pos)=0A= ! (forward-line -10)=0A= ! (setq beg-pos (point)))=0A= ! (insert "\n\nRecent messages:\n")=0A= ! (insert-buffer-substring message-buf beg-pos end-pos))))=0A= ! ;; After Recent messages, to avoid the messages produced by=0A= ! ;; list-load-path-shadows.=0A= ! (unless (looking-back "\n")=0A= ! (insert "\n"))=0A= (insert "\n"))=0A= ! (when (member 'load-shadows report-emacs-bug-included-fields)=0A= ! (insert "Load-path shadows:\n")=0A= ! (let* ((msg "Checking for load-path shadows...")=0A= ! (result "done")=0A= ! (shadows (progn (message "%s" msg)=0A= ! (condition-case nil = (list-load-path-shadows t)=0A= ! (error=0A= ! (setq result "error")=0A= ! "Error during checking")))))=0A= ! (message "%s%s" msg result)=0A= ! (insert (if (zerop (length shadows))=0A= ! "None found.\n"=0A= ! shadows))))=0A= ! (when (member 'features report-emacs-bug-included-fields)=0A= ! (insert (format "\nFeatures:\n%s\n" features)))=0A= (fill-region (line-beginning-position 0) (point))=0A= ;; This is so the user has to type something in order to send = easily.=0A= (use-local-map (nconc (make-sparse-keymap) (current-local-map)))=0A= =0A= Diff finished. Tue Dec 11 11:54:47 2012=0A= ------=_NextPart_000_00D2_01CDD797.09FAFE50--