gnu: Add emacs-jinx.

* gnu/packages/emacs-xyz.scm (emacs-jinx): New variable.

Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
This commit is contained in:
Mekeor Melire 2023-06-18 23:17:18 +00:00 committed by Liliana Marie Prikler
parent 5e72bb5c67
commit cab7ae94ec
No known key found for this signature in database
GPG key ID: 442A84B8C70E2F87

View file

@ -181,6 +181,7 @@ (define-module (gnu packages emacs-xyz)
#:use-module (gnu packages djvu)
#:use-module (gnu packages ebook)
#:use-module (gnu packages emacs)
#:use-module (gnu packages enchant)
#:use-module (gnu packages fonts)
#:use-module (gnu packages freedesktop)
#:use-module (gnu packages games)
@ -10349,6 +10350,66 @@ (define-public emacs-jinja2-mode
sgml/html integration, and indentation (working with sgml).")
(license license:gpl3+)))
(define-public emacs-jinx
(package
(name "emacs-jinx")
(version "0.8")
(source
(origin
(method git-fetch)
(uri
(git-reference
(url "https://github.com/minad/jinx")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"1y097rnf9zg26jf4vh74a0laddfp4x6pp1fjqs3xqgwc0cmdq59w"))))
(build-system emacs-build-system)
(arguments
(list
#:phases
#~(modify-phases %standard-phases
(add-after 'expand-load-path 'build-jinx-mod
(lambda* _
(invoke
"emacs" "--batch" "-L" "."
"-l" "jinx.el"
"-f" "jinx--load-module")))
(add-after 'expand-load-path 'build-info
(lambda _
(invoke "emacs" "--batch"
"--eval=(require 'ox-texinfo)"
"--eval=(find-file \"README.org\")"
"--eval=(org-texinfo-export-to-info)")))
(add-after 'build-jinx-mod 'patch-path-to-jinx-mod
(lambda _
(let ((file "jinx.el"))
(make-file-writable file)
(emacs-substitute-sexps file
("\"Compile and load dynamic module.\""
`(module-load
,(string-append #$output
"/lib/emacs/jinx-mod.so")))))))
(add-after 'install 'install-jinx-mod
(lambda _
(install-file "jinx-mod.so"
(string-append #$output "/lib/emacs"))))
(add-after 'install 'install-info
(lambda _
(install-file "jinx.info"
(string-append #$output "/share/info")))))))
(inputs (list enchant))
(propagated-inputs (list emacs-compat))
(native-inputs (list emacs-compat enchant pkg-config texinfo))
(home-page "https://github.com/minad/jinx")
(synopsis "Emacs Enchanted Spell Checker")
(description "Jinx is a just-in-time spell-checker for Emacs
based on the enchant library. It lazily highlights misspelled words in the
text of the visible portion of the buffer by honouring window boundaries as
well as text folding, if any.")
(license license:gpl3+)))
(define-public emacs-jit-spell
(package
(name "emacs-jit-spell")