Subject: [PATCH] gnu: Add emacs-explain-pause-mode.

From: [email-masked]
Date: Sun, 2 Aug 2020 09:33:26 -0400

From: Morgan Smith <[email-masked]>

* gnu/packages/emacs-xyz.scm (emacs-explain-pause-mode): New variable.
---
 gnu/packages/emacs-xyz.scm | 23 +++++++++++++++++++++++
 1 file changed, 23 insertions(+)

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index a90d789d7a..5078bbd56e 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -3237,6 +3237,29 @@ keep pressing the key until it selects what you want.  There's also
 @code{er/contract-region} if you expand too far.")
     (license license:gpl3+)))
 
+(define-public emacs-explain-pause-mode
+  (let ((commit "2356c8c3639cbeeb9751744dbe737267849b4b51")
+        (revision "0"))
+  (package
+    (name "emacs-explain-pause-mode")
+    (version (git-version "0.1" revision commit))
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/lastquestion/explain-pause-mode")
+                    (commit commit)))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "0frnfwqal9mrnrz6q4v7vcai26ahaw81894arff1yjw372pfgv7v"))))
+    (build-system emacs-build-system)
+    (home-page "https://github.com/lastquestion/explain-pause-mode")
+    (synopsis "Provides a top like interface to determine why Emacs paused")
+    (description "Monitors Emacs function calls and records their execution
+time.  This information can be reviewed to determine what is causing the user
+interface to pause.")
+    (license license:gpl3+))))
+
 (define-public emacs-fill-column-indicator
   (package
     (name "emacs-fill-column-indicator")
-- 
2.28.0