emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Bug tracking


From: Oliver Scholz
Subject: Re: Bug tracking
Date: Sun, 13 Jun 2004 16:29:16 +0200
User-agent: Gnus/5.1006 (Gnus v5.10.6) Emacs/21.3 (windows-nt)

Miles Bader <address@hidden> writes:

> On Sat, Jun 12, 2004 at 03:03:25PM -0500, Karl Fogel wrote:
[...]
>> (Of course, taking input via email would be even nicer.)
>
> It's critical, IMO -- my experience of using mozilla and savannah's bug
> tracker is that the annoyance of having to go to the web site and muddle
> through the forms significantly decreased the likelihood that I would bother
> (it was fine the first N times, but after a while I started to dread it).

Please bear with my ignorance, if I happen to say something stupid;
but couldn't just Emacs talk to the bug tracking system directly so
that a user has no need to start a browser? I imagine that this would
be less annoying. Of course this would require Emacs being able to do
http. (ISTR that there was talk about adding url to Emacs. Anyways
there is a simple package for http posts out there, written by Alex
Schröder IIRC.)

I envision something like this:

(defun example-report-emacs-bug ()
  (interactive)
  (switch-to-buffer (generate-new-buffer "*Emacs Bug Report*"))
  (let ((widgets nil))
    (widget-insert
     "Bug Report\n\nBla ... blub ...\n\n"
     (make-string fill-column ?-)
     "\n")
    (push
     (widget-create 'editable-field
                    :tag "Your mail address"
                    :format "%t: %v"
                    :size 40
                    :value user-mail-address
                    :value-to-external
                    (lambda (wid val)
                      (format "<email>%s</email>" val)))
     widgets)
    (widget-insert "\n\n")
    (push
     (widget-create 'text
                    :format "%t\n%v"
                    :tag "Please describe the symptoms of the bug"
                    :value "\n\n\n\n"
                    :value-to-external
                    (lambda (wid val)
                      (format "<descr>\n%s\n</descr>" val)))
     widgets)
    (widget-insert "\n\n")
    (widget-create 'push-button
                   :tag "Submit Bug Report"
                   :notify `(lambda (&rest ignore)
                              (example-submit-emacs-bug
                               ',(nreverse widgets))))
    (widget-insert
     "\n\n"
     (make-string fill-column ?-)
     "\n\n
By default Emacs will try to post this bug report via http to 
http://savannah.gnu.org/lirum/larum. If you want to send it via
e-mail instead, please activate the check box below.\n\n")
    (widget-create 'checkbox
                   :tag "Send as e-mail"
                   :format "%v %t")
    (widget-insert
     "\n\nEmacs will also send the information about your environment
\(below you can see which information exactly). If you do not want
this, please activate the check box below.\n\n")
    (widget-create 'checkbox
                   :format "%v %t"
                   :tag "Do not send information about my environment")
    (widget-insert "\n\n"
                   (make-string fill-column ?-)
                   "\n\n... display the information to be sent here ...")
    (use-local-map widget-keymap)
    (widget-setup)))
  
(defun example-submit-emacs-bug (widgets)
  (pop-to-buffer (generate-new-buffer "*example*"))
  (insert (format "<bug-report>\n%s\n</bug-report>"
                  (mapconcat 'widget-value widgets "\n"))))


    Oliver
-- 
Oliver Scholz               26 Prairial an 212 de la Révolution
Taunusstr. 25               Liberté, Egalité, Fraternité!
60329 Frankfurt a. M.       http://www.jungdemokratenhessen.de
Tel. (069) 97 40 99 42      http://www.jdjl.org






reply via email to

[Prev in Thread] Current Thread [Next in Thread]