Subject: [bug#40928] [PATCH 1/2 v2] gnu: Add emacs-ryo-modal.

From: pinoaffe <[email-masked]>
Date: Tue, 28 Apr 2020 20:05:24 +0200

* gnu/packages/emacs-xyz.scm (emacs-ryo-modal): New variable.
---
 gnu/packages/emacs-xyz.scm | 449 +++++++++++++++++++------------------
 1 file changed, 236 insertions(+), 213 deletions(-)

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index a0275cbe18..2fd16b7388 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -179,14 +179,14 @@
     (name "emacs-geiser")
     (version "0.11.2")
     (source (origin
-             (method git-fetch)
-             (uri (git-reference
-                   (url "https://gitlab.com/jaor/geiser/")
-                   (commit version)))
-             (file-name (git-file-name name version))
-             (sha256
-              (base32
-               "1khi1bghsjx6cs5acizmlbw9z19s4qycnji9krdbn42cbpv0rysv"))))
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://gitlab.com/jaor/geiser/")
+                    (commit version)))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "1khi1bghsjx6cs5acizmlbw9z19s4qycnji9krdbn42cbpv0rysv"))))
     (build-system gnu-build-system)
     (arguments
      '(#:phases
@@ -273,8 +273,8 @@ when typing parentheses directly or commenting out code line by line.")
     (source (origin
               (method git-fetch)
               (uri (git-reference
-                     (url "https://github.com/magit/git-modes")
-                     (commit version)))
+                    (url "https://github.com/magit/git-modes")
+                    (commit version)))
               (file-name (git-file-name name version))
               (sha256
                (base32
@@ -674,11 +674,11 @@ for editing Racket's Scribble documentation syntax in Emacs.")
         (base32 "0q2pb3w8s833fjhkzicciw2php4lsnismad1dnwgp2lcway757ra"))))
     (build-system gnu-build-system)
     (native-inputs
-    `(("autoconf" ,autoconf)
-      ("automake" ,automake)
-      ("texinfo" ,texinfo)
-      ("perl" ,perl)
-      ("emacs-minimal" ,emacs-minimal)))
+     `(("autoconf" ,autoconf)
+       ("automake" ,automake)
+       ("texinfo" ,texinfo)
+       ("perl" ,perl)
+       ("emacs-minimal" ,emacs-minimal)))
     (propagated-inputs
      `(("emacs-bui" ,emacs-bui)
        ("emacs-dash" ,emacs-dash)
@@ -4013,12 +4013,12 @@ languages.")
     (arguments `(#:phases
                  (modify-phases %standard-phases
                    (add-after 'unpack 'configure
-                        (lambda* (#:key inputs #:allow-other-keys)
-                          (chmod "irony.el" #o644)
-                          (emacs-substitute-variables "irony.el"
-                            ("irony-server-install-prefix"
-                             (assoc-ref inputs "server")))
-                          #t)))))
+                     (lambda* (#:key inputs #:allow-other-keys)
+                       (chmod "irony.el" #o644)
+                       (emacs-substitute-variables "irony.el"
+                         ("irony-server-install-prefix"
+                          (assoc-ref inputs "server")))
+                       #t)))))
     (synopsis "C/C++/ObjC Code completion and syntax checks for Emacs")
     (description "Irony-mode provides Clang-assisted syntax checking and
 completion for C, C++, and ObjC in GNU Emacs.  Using @code{libclang} it can
@@ -4030,20 +4030,20 @@ described on the homepage.")
 
 (define-public emacs-irony-mode-server
   (package (inherit emacs-irony-mode)
-    (name "emacs-irony-mode-server")
-    (inputs
-     `(("clang" ,clang)))
-    (arguments
-     `(#:phases
-       (modify-phases %standard-phases
-         (replace 'configure
-           (lambda* (#:key outputs #:allow-other-keys)
-             (let ((out (assoc-ref outputs "out")))
-               (invoke "cmake"
-                       "server"
-                       (string-append "-DCMAKE_INSTALL_PREFIX=" out)) #t))))))
-    (build-system cmake-build-system)
-    (synopsis "Server for the Emacs @dfn{irony mode}")))
+           (name "emacs-irony-mode-server")
+           (inputs
+            `(("clang" ,clang)))
+           (arguments
+            `(#:phases
+              (modify-phases %standard-phases
+                (replace 'configure
+                  (lambda* (#:key outputs #:allow-other-keys)
+                    (let ((out (assoc-ref outputs "out")))
+                      (invoke "cmake"
+                              "server"
+                              (string-append "-DCMAKE_INSTALL_PREFIX=" out)) #t))))))
+           (build-system cmake-build-system)
+           (synopsis "Server for the Emacs @dfn{irony mode}")))
 
 (define-public emacs-company-irony
   (package
@@ -5179,22 +5179,22 @@ to their corresponding tangled blocks.")
   (let ((commit "1f1185bf667a38d3d0d180ce85fd4c131818aae2")
         (revision "0"))
     (package
-     (name "emacs-atom-one-dark-theme")
-     (version (git-version "0.4.0" revision commit))
-     (source (origin
-              (method git-fetch)
-              (uri (git-reference
-                    (url "https://github.com/jonathanchu/atom-one-dark-theme.git")
-                    (commit commit)))
-              (sha256
-               (base32
-                "1alma16hg3mfjly8a9s3mrswkjjx4lrpdnf43869hn2ibkn7zx9z"))
-              (file-name (git-file-name name version))))
-     (build-system emacs-build-system)
-     (home-page "https://github.com/jonathanchu/atom-one-dark-theme")
-     (synopsis "Atom One Dark color theme for Emacs")
-     (description "An Emacs port of the Atom One Dark theme from Atom.io.")
-     (license license:gpl3+))))
+      (name "emacs-atom-one-dark-theme")
+      (version (git-version "0.4.0" revision commit))
+      (source (origin
+                (method git-fetch)
+                (uri (git-reference
+                      (url "https://github.com/jonathanchu/atom-one-dark-theme.git")
+                      (commit commit)))
+                (sha256
+                 (base32
+                  "1alma16hg3mfjly8a9s3mrswkjjx4lrpdnf43869hn2ibkn7zx9z"))
+                (file-name (git-file-name name version))))
+      (build-system emacs-build-system)
+      (home-page "https://github.com/jonathanchu/atom-one-dark-theme")
+      (synopsis "Atom One Dark color theme for Emacs")
+      (description "An Emacs port of the Atom One Dark theme from Atom.io.")
+      (license license:gpl3+))))
 
 (define-public emacs-zenburn-theme
   (package
@@ -5847,8 +5847,8 @@ fully-functional one.")
      (origin
        (method git-fetch)
        (uri (git-reference
-              (url "https://github.com/abo-abo/hydra")
-              (commit version)))
+             (url "https://github.com/abo-abo/hydra")
+             (commit version)))
        (file-name (git-file-name name version))
        (sha256
         (base32
@@ -6442,8 +6442,8 @@ possible to query other endpoints like DBPedia.")
      (origin
        (method git-fetch)
        (uri (git-reference
-              (url "https://github.com/technomancy/better-defaults")
-              (commit version)))
+             (url "https://github.com/technomancy/better-defaults")
+             (commit version)))
        (file-name (git-file-name name version))
        (sha256
         (base32
@@ -7131,7 +7131,7 @@ indentation guides in Emacs:
              ;; Move .info file at the root so that it can installed by the
              ;; 'move-doc phase.
              (rename-file "docs/_build/texinfo/Elpy.info" "Elpy.info")
-              #t))
+             #t))
          (add-after 'build-doc 'install-manpage
            (lambda* (#:key outputs #:allow-other-keys)
              (let* ((out  (assoc-ref outputs "out"))
@@ -7337,7 +7337,7 @@ Emacs completion function instead.")
     (description
      "Ido-ubiquitous enables ido-style completion for almost every function
 that uses the standard completion function completing-read.")
-  (license license:gpl3+)))
+    (license license:gpl3+)))
 
 (define-public emacs-yaml-mode
   (package
@@ -8550,8 +8550,8 @@ passive voice.")
     (source (origin
               (method git-fetch)
               (uri (git-reference
-                     (url home-page)
-                     (commit version)))
+                    (url home-page)
+                    (commit version)))
               (sha256
                (base32
                 "0hx72fq10772bbyqrj7mhhp02k26cccjxdadiqm1ykainhfmn1x0"))
@@ -8648,8 +8648,8 @@ files that you would find in @file{contrib/} from the git repository.")))
      (origin
        (method git-fetch)
        (uri (git-reference
-              (url "https://github.com/lewang/flx.git")
-              (commit (string-append "v" version))))
+             (url "https://github.com/lewang/flx.git")
+             (commit (string-append "v" version))))
        (sha256
         (base32
          "0sjybrcnb2sl33swy3q664vqrparajcl0m455gciiih2j87hwadc"))
@@ -8673,8 +8673,8 @@ Flx has support for ido (interactively do things) through flx-ido.")
      (origin
        (method git-fetch)
        (uri (git-reference
-              (url "https://github.com/n3mo/cyberpunk-theme.el/")
-              (commit version)))
+             (url "https://github.com/n3mo/cyberpunk-theme.el/")
+             (commit version)))
        (sha256
         (base32
          "05mfgr9aj7knn7niadv9p6z3qrfpq2lbbi2wxxx62xywim9maw2y"))
@@ -8748,8 +8748,8 @@ by zenburn, sinburn and similar themes, but slowly diverging from them.")
      (origin
        (method git-fetch)
        (uri (git-reference
-              (url "https://github.com/auto-complete/auto-complete.git")
-              (commit (string-append "v" version))))
+             (url "https://github.com/auto-complete/auto-complete.git")
+             (commit (string-append "v" version))))
        (sha256
         (base32
          "04i9b11iksg6acn885wl3qgi5xpsm3yszlqmd2x21yhprndlz7gb"))
@@ -9045,7 +9045,7 @@ mode-line.")
       (home-page "https://gitlab.com/wavexx/mu4e-jump-to-list.el")
       (synopsis "Select and view mailing lists in mu4e")
       (description
-        "@code{mu4e-jump-to-list} allows you to select and view mailing lists
+       "@code{mu4e-jump-to-list} allows you to select and view mailing lists
 automatically using existing List-ID headers in your mu database.  Just press
 \"l\" in the headers view and any mailing list you've subscribed to will be
 automatically discovered and presented in recency order.")
@@ -9072,7 +9072,7 @@ automatically discovered and presented in recency order.")
       (home-page "https://github.com/seanfarley/mu4e-patch")
       (synopsis "Colorize patch-like emails in mu4e")
       (description
-        "Extension for mu4e to colorize patch-like emails with diff-mode.
+       "Extension for mu4e to colorize patch-like emails with diff-mode.
 This is based on Frank Terbeck's @code{gnus-article-treat-patch.el} but has
 been adapted to work with mu4e.")
       (license license:gpl3+))))
@@ -9085,8 +9085,8 @@ been adapted to work with mu4e.")
      (origin
        (method git-fetch)
        (uri (git-reference
-              (url "https://github.com/akatov/pretty-mode/")
-              (commit version)))
+             (url "https://github.com/akatov/pretty-mode/")
+             (commit version)))
        (file-name (git-file-name name version))
        (sha256
         (base32
@@ -11531,38 +11531,38 @@ messaging service.")
 
 (define-public emacs-bash-completion
   (package
-   (name "emacs-bash-completion")
-   (version "2.1.0")
-   (source
-    (origin
-      (method git-fetch)
-      (uri (git-reference
-            (url "https://github.com/szermatt/emacs-bash-completion.git")
-            (commit version)))
-      (file-name (git-file-name name version))
-      (sha256
-       (base32 "1a1wxcqzh0javjmxwi3lng5i99xiylm8lm04kv4q1lh9bli6vmv0"))))
-   (inputs `(("bash" ,bash)))
-   (build-system emacs-build-system)
-   (arguments
-    `(#:phases
-      (modify-phases %standard-phases
-        (add-after 'unpack 'make-git-checkout-writable
-          (λ _
-            (for-each make-file-writable (find-files "."))
-            #t))
-        (add-before 'install 'configure
-          (lambda* (#:key inputs #:allow-other-keys)
-            (let ((bash (assoc-ref inputs "bash")))
-              (emacs-substitute-variables "bash-completion.el"
-                ("bash-completion-prog" (string-append bash "/bin/bash"))))
-            #t)))))
-   (home-page "https://github.com/szermatt/emacs-bash-completion")
-   (synopsis "Bash completion for the shell buffer")
-   (description
-    "@code{bash-completion} defines dynamic completion hooks for shell-mode
+    (name "emacs-bash-completion")
+    (version "2.1.0")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/szermatt/emacs-bash-completion.git")
+             (commit version)))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "1a1wxcqzh0javjmxwi3lng5i99xiylm8lm04kv4q1lh9bli6vmv0"))))
+    (inputs `(("bash" ,bash)))
+    (build-system emacs-build-system)
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'make-git-checkout-writable
+           (λ _
+             (for-each make-file-writable (find-files "."))
+             #t))
+         (add-before 'install 'configure
+           (lambda* (#:key inputs #:allow-other-keys)
+             (let ((bash (assoc-ref inputs "bash")))
+               (emacs-substitute-variables "bash-completion.el"
+                 ("bash-completion-prog" (string-append bash "/bin/bash"))))
+             #t)))))
+    (home-page "https://github.com/szermatt/emacs-bash-completion")
+    (synopsis "Bash completion for the shell buffer")
+    (description
+     "@code{bash-completion} defines dynamic completion hooks for shell-mode
 and shell-command prompts that are based on Bash completion.")
-   (license license:gpl2+)))
+    (license license:gpl2+)))
 
 (define-public emacs-easy-kill
   (package
@@ -11870,8 +11870,8 @@ supports multiple backends such as @code{vlc}, @code{mpg123},
     (source (origin
               (method git-fetch)
               (uri (git-reference
-                     (url "https://github.com/Groovy-Emacs-Modes/groovy-emacs-modes")
-                     (commit version)))
+                    (url "https://github.com/Groovy-Emacs-Modes/groovy-emacs-modes")
+                    (commit version)))
               (file-name (git-file-name name version))
               (sha256
                (base32
@@ -12555,28 +12555,28 @@ match and total match information in the mode-line in various search modes.")
 
 (define-public emacs-finalize
   (package
-  (name "emacs-finalize")
-  (version "2.0.0")
-  (source
-    (origin
-      (method git-fetch)
-      (uri (git-reference
-            (url "https://github.com/skeeto/elisp-finalize.git")
-            (commit version)))
-      (file-name (git-file-name name version))
-      (sha256
+    (name "emacs-finalize")
+    (version "2.0.0")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/skeeto/elisp-finalize.git")
+             (commit version)))
+       (file-name (git-file-name name version))
+       (sha256
         (base32 "1gvlm4i62af5jscwz0jccc8ra0grprxpg2rlq91d5nn8dn5lpy79"))))
-  (build-system emacs-build-system)
-  (propagated-inputs
-    `(("emacs-cl-generic" ,emacs-cl-generic)))
-  (home-page "https://github.com/skeeto/elisp-finalize")
-  (synopsis "Finalizers for Emacs Lisp")
-  (description
-    "This package runs a callback (a finalizer)
+    (build-system emacs-build-system)
+    (propagated-inputs
+     `(("emacs-cl-generic" ,emacs-cl-generic)))
+    (home-page "https://github.com/skeeto/elisp-finalize")
+    (synopsis "Finalizers for Emacs Lisp")
+    (description
+     "This package runs a callback (a finalizer)
 after its registered lisp object has been garbage collected.  This allows
 extra resources, such as buffers and processes, to be cleaned up after the
 object has been freed.")
-  (license license:unlicense)))
+    (license license:unlicense)))
 
 (define-public emacs-emacsql
   (package
@@ -13380,8 +13380,8 @@ region instead.")
     (source (origin
               (method git-fetch)
               (uri (git-reference
-                     (url "https://github.com/Malabarba/validate.el")
-                     (commit version)))
+                    (url "https://github.com/Malabarba/validate.el")
+                    (commit version)))
               (file-name (git-file-name name version))
               (sha256
                (base32
@@ -13754,8 +13754,8 @@ confused by comments or @code{foo-bar} matching @code{foo}.")
      (origin
        (method git-fetch)
        (uri (git-reference
-              (url "https://github.com/phillord/m-buffer-el")
-              (commit (string-append "v" version))))
+             (url "https://github.com/phillord/m-buffer-el")
+             (commit (string-append "v" version))))
        (file-name (git-file-name name version))
        (sha256
         (base32
@@ -14121,8 +14121,8 @@ working with common core and third-party Elm tools.  Its features are:
      (origin
        (method git-fetch)
        (uri (git-reference
-              (url "https://github.com/istib/helm-mode-manager")
-              (commit version)))
+             (url "https://github.com/istib/helm-mode-manager")
+             (commit version)))
        (file-name (git-file-name name version))
        (sha256
         (base32
@@ -14230,8 +14230,8 @@ throw a shell history.")
      (origin
        (method git-fetch)
        (uri (git-reference
-              (url "https://framagit.org/steckerhalter/discover-my-major.git/")
-              (commit version)))
+             (url "https://framagit.org/steckerhalter/discover-my-major.git/")
+             (commit version)))
        (file-name (git-file-name name version))
        (sha256
         (base32
@@ -14819,8 +14819,8 @@ split to display more windows and more buffers, the buffer exits
     (source (origin
               (method git-fetch)
               (uri (git-reference
-                     (url "https://github.com/rswgnu/rsw-elisp")
-                     (commit version)))
+                    (url "https://github.com/rswgnu/rsw-elisp")
+                    (commit version)))
               (file-name (git-file-name name version))
               (sha256
                (base32
@@ -15039,8 +15039,8 @@ compilation/grep buffers.  Works with @code{wgrep}, @code{ack}, @code{ag},
      (origin
        (method git-fetch)
        (uri (git-reference
-              (url "https://github.com/alezost/shift-number.el")
-              (commit (string-append "v" version))))
+             (url "https://github.com/alezost/shift-number.el")
+             (commit (string-append "v" version))))
        (file-name (git-file-name name version))
        (sha256
         (base32
@@ -16139,7 +16139,7 @@ type @code{C-h b}, or any incomplete key sequence plus @code{C-h}, to run
 @code{helm-descbinds}.  The bindings are presented in a similar way as
 @code{describe-bindings} does, but you can use completion to find the command
 you searched for and execute it, or view its documentation.")
-    (license license:gpl3+))))
+      (license license:gpl3+))))
 
 (define-public emacs-helm-emms
   (let ((commit "b785cb845a98a643eba9d5d53c9c0b4e6810a3cd"))
@@ -17879,27 +17879,27 @@ or a window into some windows according to a layout recipe.")
 
 (define-public emacs-e2wm
   (package
-      (name "emacs-e2wm")
-      (version "1.4")
-      (home-page "https://github.com/kiwanami/emacs-window-manager")
-      (source (origin
-                (method git-fetch)
-                (uri (git-reference
-                      (url home-page)
-                      (commit (string-append "v" version))))
-                (sha256
-                 (base32
-                  "12midsrx07pdrsr1qbl2rpi7xyhxqx08bkz7n7gf8vsmqkpfp56s"))
-                (file-name (git-file-name name version))))
-      (build-system emacs-build-system)
-      (propagated-inputs
-       `(("emacs-window-layout" ,emacs-window-layout)))
-      (synopsis "Equilibrium Emacs Window Manager")
-      (description "E2WM is a window manager for Emacs.  It enables to
+    (name "emacs-e2wm")
+    (version "1.4")
+    (home-page "https://github.com/kiwanami/emacs-window-manager")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url home-page)
+                    (commit (string-append "v" version))))
+              (sha256
+               (base32
+                "12midsrx07pdrsr1qbl2rpi7xyhxqx08bkz7n7gf8vsmqkpfp56s"))
+              (file-name (git-file-name name version))))
+    (build-system emacs-build-system)
+    (propagated-inputs
+     `(("emacs-window-layout" ,emacs-window-layout)))
+    (synopsis "Equilibrium Emacs Window Manager")
+    (description "E2WM is a window manager for Emacs.  It enables to
 customize the place of pop-up window, how the windows are split, how the
 buffers are located in the windows, keybinds to manipulate windows and
 buffers, etc.  It also has plug-ins to help your Emacs life.")
-      (license license:gpl3+)))
+    (license license:gpl3+)))
 
 (define-public emacs-ctable
   (let ((commit "b8830d1ca95abb100a81bc32011bd17d5ecba000"))
@@ -18633,13 +18633,13 @@ processes for Emacs")
                 "13gs8g05xj7np3i2q3bbxg6zgdiazzn1spxii4x0cyd4pg83c0i1"))))
     (build-system emacs-build-system)
     (propagated-inputs
-      `(("emacs-dash" ,emacs-dash)
-        ("emacs-s" ,emacs-s)
-        ("emacs-f" ,emacs-f)
-        ("emacs-ace-window" ,emacs-ace-window)
-        ("emacs-pfuture" ,emacs-pfuture)
-        ("emacs-hydra" ,emacs-hydra)
-        ("emacs-ht" ,emacs-ht)))
+     `(("emacs-dash" ,emacs-dash)
+       ("emacs-s" ,emacs-s)
+       ("emacs-f" ,emacs-f)
+       ("emacs-ace-window" ,emacs-ace-window)
+       ("emacs-pfuture" ,emacs-pfuture)
+       ("emacs-hydra" ,emacs-hydra)
+       ("emacs-ht" ,emacs-ht)))
     (native-inputs
      `(("emacs-buttercup" ,emacs-buttercup)
        ("emacs-el-mock" ,emacs-el-mock)))
@@ -18689,7 +18689,7 @@ processes for Emacs")
              (let ((out (assoc-ref outputs "out")))
                (with-directory-excursion "../.." ;treemacs root
                  (copy-recursively "icons/default"
-                  (string-append out "/share/" ,name "/images"))
+                                   (string-append out "/share/" ,name "/images"))
                  (copy-recursively
                   "src/scripts"
                   (string-append out "/share/" ,name "/scripts"))
@@ -18732,13 +18732,13 @@ processes for Emacs")
                 "0hcnvbyaqyypgby1bfj4zbrbq97amk8hfx0sj4w73rl46yf4jk3j"))))
     (build-system emacs-build-system)
     (propagated-inputs
-      `(("emacs-lsp-mode" ,emacs-lsp-mode)
-        ("emacs-markdown-mode" ,emacs-markdown-mode)
-        ("emacs-dash" ,emacs-dash)
-        ("emacs-f" ,emacs-f)
-        ("emacs-ht" ,emacs-ht)
-        ("emacs-request" ,emacs-request)
-        ("emacs-treemacs" ,emacs-treemacs)))
+     `(("emacs-lsp-mode" ,emacs-lsp-mode)
+       ("emacs-markdown-mode" ,emacs-markdown-mode)
+       ("emacs-dash" ,emacs-dash)
+       ("emacs-f" ,emacs-f)
+       ("emacs-ht" ,emacs-ht)
+       ("emacs-request" ,emacs-request)
+       ("emacs-treemacs" ,emacs-treemacs)))
     (home-page "https://github.com/emacs-lsp/lsp-java/")
     (synopsis "Java support for lsp-mode")
     (description "Emacs Java IDE using Eclipse JDT Language Server.")
@@ -20109,26 +20109,26 @@ and article extracts for Wikipedia.")
 
 (define-public emacs-webfeeder
   (package
-  (name "emacs-webfeeder")
-  (version "1.0.0")
-  (source
-    (origin
-      (method url-fetch)
-      (uri (string-append
+    (name "emacs-webfeeder")
+    (version "1.0.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append
              "https://elpa.gnu.org/packages/webfeeder-"
              version
              ".tar"))
-      (sha256
+       (sha256
         (base32
-          "06y5vxw9m6pmbrzb8v2i3w9dnhgqxz06vyx1knmgi9cczlrj4a64"))))
-  (build-system emacs-build-system)
-  (home-page "https://gitlab.com/Ambrevar/emacs-webfeeder")
-  (synopsis "Build RSS and Atom webfeeds from HTML files")
-  (description
-    "Webfeeder is an Emacs library to generate RSS and Atom feeds from HTML
+         "06y5vxw9m6pmbrzb8v2i3w9dnhgqxz06vyx1knmgi9cczlrj4a64"))))
+    (build-system emacs-build-system)
+    (home-page "https://gitlab.com/Ambrevar/emacs-webfeeder")
+    (synopsis "Build RSS and Atom webfeeds from HTML files")
+    (description
+     "Webfeeder is an Emacs library to generate RSS and Atom feeds from HTML
 files.  The various elements of the HTML input are parsed with customizable
 functions (e.g. @code{webfeeder-title-function}).")
-  (license license:gpl3+)))
+    (license license:gpl3+)))
 
 (define-public emacs-evil-numbers
   (let ((commit "6ea1c8c3a9b37bed63d48f1128e9a4910e68187e"))
@@ -20342,8 +20342,8 @@ text-property translator.")
      (origin
        (method git-fetch)
        (uri (git-reference
-              (url "https://github.com/weirdNox/org-noter.git")
-              (commit version)))
+             (url "https://github.com/weirdNox/org-noter.git")
+             (commit version)))
        (file-name (git-file-name name version))
        (sha256
         (base32
@@ -20742,30 +20742,30 @@ contains a track position, playback will start at the specified position.")
 
 (define-public emacs-org-jira
   (package
-   (name "emacs-org-jira")
-   (version "4.3.1")
-   (source
-    (origin
-     (method git-fetch)
-     (uri (git-reference
-           (url "https://github.com/ahungry/org-jira.git")
-           (commit version)))
-     (file-name (git-file-name name version))
-     (sha256
-      (base32
-       "1l80r2a9zzbfk2c78i40h0ww79vm9v4j6xi2h5i4w9kqh10rs6h2"))))
-   (build-system emacs-build-system)
-   (propagated-inputs
-    `(("emacs-request" ,emacs-request)
-      ("emacs-s" ,emacs-s)
-      ("emacs-dash" ,emacs-dash)
-      ("emacs-org" ,emacs-org)))
-   (home-page "https://github.com/ahungry/org-jira")
-   (synopsis "Syncing between Jira and Org-mode")
-   (description
-    "This package provides an extension to org-mode for syncing issues with
+    (name "emacs-org-jira")
+    (version "4.3.1")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/ahungry/org-jira.git")
+             (commit version)))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32
+         "1l80r2a9zzbfk2c78i40h0ww79vm9v4j6xi2h5i4w9kqh10rs6h2"))))
+    (build-system emacs-build-system)
+    (propagated-inputs
+     `(("emacs-request" ,emacs-request)
+       ("emacs-s" ,emacs-s)
+       ("emacs-dash" ,emacs-dash)
+       ("emacs-org" ,emacs-org)))
+    (home-page "https://github.com/ahungry/org-jira")
+    (synopsis "Syncing between Jira and Org-mode")
+    (description
+     "This package provides an extension to org-mode for syncing issues with
 JIRA issue servers.")
-   (license license:gpl3+)))
+    (license license:gpl3+)))
 
 (define-public emacs-systemd-mode
   (package
@@ -22476,18 +22476,18 @@ conversion program}, a Japanese input method on Emacs.")
     (name "emacs-objed")
     (version "0.8.3")
     (source
-      (origin
-        (method url-fetch)
-        (uri (string-append
-               "https://elpa.gnu.org/packages/objed-" version ".tar"))
-        (sha256
-          (base32
-            "1s38d6bvggdk5p45ww1jb4gxifzgjwgw1m6ar920nlg0j4fgbcvr"))))
+     (origin
+       (method url-fetch)
+       (uri (string-append
+             "https://elpa.gnu.org/packages/objed-" version ".tar"))
+       (sha256
+        (base32
+         "1s38d6bvggdk5p45ww1jb4gxifzgjwgw1m6ar920nlg0j4fgbcvr"))))
     (build-system emacs-build-system)
     (home-page "https://github.com/clemera/objed")
     (synopsis "Navigate and edit text objects")
     (description
-      "@code{emacs-objed} allows navigating and editing text objects.  It
+     "@code{emacs-objed} allows navigating and editing text objects.  It
 enables modal editing and composition of commands, too.  It combines ideas of
 other Editors like Vim or Kakoune and tries to align them with regular Emacs
 conventions.")
@@ -22585,3 +22585,26 @@ ASCII UML sequence diagrams in Emacs, which can be embedded in source code,
 comments or emails.")
       (license license:gpl3+))))
 
+(define-public emacs-ryo-modal
+  ;; Package has no release.  Version is extracted from "Version:" keyword in
+  ;; main file.
+  (let ((commit "3a54312eea7023a86ca3f8eb3c03c872554bff2f")
+        (revision "0"))
+    (package
+      (name "emacs-ryo-modal")
+      (version (git-version "0.4" revision commit))
+      (source
+       (origin
+         (method git-fetch)
+         (uri (git-reference
+               (url "https://github.com/Kungsgeten/ryo-modal.git")
+               (commit commit)))
+         (file-name (git-file-name name version))
+         (sha256
+          (base32 "1cyvp3bi6yhckbdnq98xvghmhdzghya5y9wd7hxjawibs75rza95"))))
+      (build-system emacs-build-system)
+      (home-page "http://github.com/Kungsgeten/ryo-modal")
+      (synopsis "Emacs minor mode for defining modal editing environments")
+      (description "RYO modal provides a convenient way of defining modal keybindings in Emacs,
+and does not come with any predefined bindings.")
+      (license license:expat))))
-- 
2.26.2