Nach oben: Perfekt eingerichtet   [Inhalt][Index]


22.5.1 Bugs mit Emacs anschauen

Emacs hat einen nützlichen Minor-Mode namens bug-reference, mit dem man, zusammen mit ‘emacs-debbugs’ (dem Paket für Emacs), URLs wie ‘<https://bugs.gnu.org/58697>’ oder ‘<https://issues.guix.gnu.org/58697>’ als Buffer mit dem Fehlerbericht öffnen kann. Von diesem aus kann man leicht den E-Mail-Thread in Gnus lesen, antworten oder den Status des Bugs ändern ohne Emacs zu verlassen! Sie sehen im Folgenden eine Beispielkonfiguration, die Sie in Ihre ~/.emacs-Konfigurationsdatei übernehmen können:

;;; Verweise auf Bugs.
(require 'bug-reference)
(add-hook 'prog-mode-hook #'bug-reference-prog-mode)
(add-hook 'gnus-mode-hook #'bug-reference-mode)
(add-hook 'erc-mode-hook #'bug-reference-mode)
(add-hook 'gnus-summary-mode-hook #'bug-reference-mode)
(add-hook 'gnus-article-mode-hook #'bug-reference-mode)

;;; Dies erweitert die „default expression“ (den obersten, ersten
;;; Ausdruck für 'or') so, dass er auch auf URLs wie
;;; <https://issues.guix.gnu.org/58697> oder
;;; <https://bugs.gnu.org/58697> passt.
;;; Auch werden so "Fixes: #NNNNN" in Git-Anhangszeilen erkannt.
(setq bug-reference-bug-regexp
      (rx (group (or (seq word-boundary
                          (or (seq (char "Bb") "ug"
                                   (zero-or-one " ")
                                   (zero-or-one "#"))
                              (seq (char "Pp") "atch"
                                   (zero-or-one " ")
                                   "#")
                              (seq (char "Ff") "ixes"
                                   (zero-or-one ":")
                                   (zero-or-one " ") "#")
                              (seq "RFE"
                                   (zero-or-one " ") "#")
                              (seq "PR "
                                   (one-or-more (char "a-z+-")) "/"))
                          (group (one-or-more (char "0-9"))
                                 (zero-or-one
                                  (seq "#" (one-or-more
                                            (char "0-9"))))))
                     (seq (? "<") "https://bugs.gnu.org/"
                          (group-n 2 (one-or-more (char "0-9")))
                          (? ">"))
                     (seq (? "<") "https://issues.guix.gnu.org/"
                          (? "issue/")
                          (group-n 2 (one-or-more (char "0-9")))
                          (? ">"))))))
(setq bug-reference-url-format "https://issues.guix.gnu.org/%s")

(require 'debbugs)
(require 'debbugs-browse)
(add-hook 'bug-reference-mode-hook #'debbugs-browse-mode)
(add-hook 'bug-reference-prog-mode-hook #'debbugs-browse-mode)

;; Mit folgendem Code kann man mit Emacs Debbugs Fehlerberichte direkt
;; in Emacs öffnen.
(setq debbugs-browse-url-regexp
      (rx line-start
          "http" (zero-or-one "s") "://"
          (or "debbugs" "issues.guix" "bugs")
          ".gnu.org" (one-or-more "/")
          (group (zero-or-one "cgi/bugreport.cgi?bug="))
          (group-n 3 (one-or-more digit))
          line-end))

;; Ändern, welche Fehlerberichte uns 'M-x debbugs-gnu' anzeigt.
(setq debbugs-gnu-default-packages '("guix" "guix-patches"))

;; Auch Bitten um neue Funktionalität zeigen.
(setq debbugs-gnu-default-severities
 '("serious" "important" "normal" "minor" "wishlist"))

Mehr Informationen finden Sie im Bug Reference in Handbuch zu GNU Emacs und in der Minor Mode in Bedienungsanleitung zu Debbugs.


Nach oben: Perfekt eingerichtet   [Inhalt][Index]