summary refs log tree commit diff
path: root/gnu/packages/emacs.scm
diff options
context:
space:
mode:
authorRicardo Wurmus <rekado@elephly.net>2018-02-18 00:37:46 +0100
committerRicardo Wurmus <rekado@elephly.net>2018-02-18 00:39:25 +0100
commitff9d1a2f0c9cc82ae4c73d8660a87829bae9bf30 (patch)
treec6a0693694b3b7d93de3fa2c8eef099bc08e66ad /gnu/packages/emacs.scm
parent6f6db0269f76525e91201038b77798d666c8130b (diff)
parenta01d926f9d10bb504ae4304567924e43368d4954 (diff)
downloadguix-ff9d1a2f0c9cc82ae4c73d8660a87829bae9bf30.tar.gz
Merge branch 'master' into core-updates
Diffstat (limited to 'gnu/packages/emacs.scm')
-rw-r--r--gnu/packages/emacs.scm72
1 files changed, 72 insertions, 0 deletions
diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
index f2117fb8b9..af1158b214 100644
--- a/gnu/packages/emacs.scm
+++ b/gnu/packages/emacs.scm
@@ -7098,6 +7098,78 @@ scratch buffer, and, by virtue of this extension, do so using the Emacs
 formatting rules for that language.")
       (license license:bsd-2))))
 
+(define-public emacs-esxml
+  (package
+    (name "emacs-esxml")
+    (version "0.3.4")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/tali713/esxml.git")
+                    (commit version)))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "00vv8a75wdklygdyr4km9mc2ismxak69c45jmcny41xl44rp9x8m"))))
+    (build-system emacs-build-system)
+    (home-page "https://github.com/tali713/esxml/")
+    (synopsis "SXML for EmacsLisp")
+    (description "This is XML/XHTML done with S-Expressions in EmacsLisp.
+Simply, this is the easiest way to write HTML or XML in Lisp.  This library
+uses the native form of XML representation as used by many libraries already
+included within Emacs.  See @code{esxml-to-xml} for a concise description of
+the format.")
+    (license license:gpl3+)))
+
+(define-public emacs-nov-el
+  (package
+    (name "emacs-nov-el")
+    (version "0.2.2")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/wasamasa/nov.el.git")
+                    (commit version)))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "03s0qjvwk1f7y3i4wh2p5y3z4hdv00adgz8za3vphzc0q8i1kjzb"))))
+    (build-system emacs-build-system)
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'embed-path-to-unzip
+           (lambda _
+             (substitute* "nov.el"
+               (("\\(executable-find \"unzip\"\\)")
+                (string-append "\"" (which "unzip") "\"")))
+             #t)))))
+    (propagated-inputs
+     `(("emacs-dash" ,emacs-dash)
+       ("emacs-esxml" ,emacs-esxml)))
+    (inputs
+     `(("unzip" ,unzip)))
+    (home-page "https://github.com/wasamasa/nov.el/")
+    (synopsis "Major mode for reading EPUBs in Emacs")
+    (description "@code{nov.el} provides a major mode for reading EPUB
+documents.
+
+Features:
+
+@itemize
+@item Basic navigation (jump to TOC, previous/next chapter)
+@item Remembering and restoring the last read position
+@item Jump to next chapter when scrolling beyond end
+@item Renders EPUB2 (@code{.ncx}) and EPUB3 (@code{<nav>}) TOCs
+@item Hyperlinks to internal and external targets
+@item Supports textual and image documents
+@item View source of document files
+@item Metadata display
+@item Image rescaling
+@end itemize
+")
+    (license license:gpl3+)))
+
 (define-public epipe
   (package
     (name "epipe")