mirror of
https://git.in.rschanz.org/ryan77627/guix.git
synced 2024-12-24 21:38:07 -05:00
gnu: Add emacs-json-reformat.
* gnu/packages/patches/emacs-json-reformat-fix-tests.patch: New file. * gnu/local.mk (dist_patch_DATA): Add this. * gnu/packages/emacs.scm (emacs-json-reformat): New variable.
This commit is contained in:
parent
15eef66e5d
commit
b0912e9fdb
3 changed files with 82 additions and 1 deletions
|
@ -17,6 +17,7 @@
|
|||
# Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
|
||||
# Copyright © 2017 Gábor Boskovits <boskovits@gmail.com>
|
||||
# Copyright © 2018 Amirouche Boubekki <amirouche@hypermove.net>
|
||||
# Copyright © 2018 Oleg Pykhalov <go.wigust@gmail.com>
|
||||
#
|
||||
# This file is part of GNU Guix.
|
||||
#
|
||||
|
@ -615,6 +616,7 @@ dist_patch_DATA = \
|
|||
%D%/packages/patches/einstein-build.patch \
|
||||
%D%/packages/patches/emacs-exec-path.patch \
|
||||
%D%/packages/patches/emacs-fix-scheme-indent-function.patch \
|
||||
%D%/packages/patches/emacs-json-reformat-fix-tests.patch \
|
||||
%D%/packages/patches/emacs-highlight-stages-add-gexp.patch \
|
||||
%D%/packages/patches/emacs-scheme-complete-scheme-r5rs-info.patch \
|
||||
%D%/packages/patches/emacs-source-date-epoch.patch \
|
||||
|
|
|
@ -26,7 +26,7 @@
|
|||
;;; Copyright © 2017 George Clemmer <myglc2@gmail.com>
|
||||
;;; Copyright © 2017 Feng Shu <tumashu@163.com>
|
||||
;;; Copyright © 2017 Jan Nieuwenhuizen <janneke@gnu.org>
|
||||
;;; Copyright © 2017 Oleg Pykhalov <go.wigust@gmail.com>
|
||||
;;; Copyright © 2017, 2018 Oleg Pykhalov <go.wigust@gmail.com>
|
||||
;;; Copyright © 2017 Mekeor Melire <mekeor.melire@gmail.com>
|
||||
;;; Copyright © 2017 Peter Mikkelsen <petermikkelsen10@gmail.com>
|
||||
;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
|
@ -5950,6 +5950,53 @@ (define-public emacs-disable-mouse
|
|||
running a customisable handler command (@code{ignore} by default). ")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public emacs-json-reformat
|
||||
(package
|
||||
(name "emacs-json-reformat")
|
||||
(version "0.0.6")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/gongo/json-reformat/archive/"
|
||||
version ".tar.gz"))
|
||||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"11fbq4scrgr7m0iwnzcrn2g7xvqwm2gf82sa7zy1l0nil7265p28"))
|
||||
(patches (search-patches "emacs-json-reformat-fix-tests.patch"))))
|
||||
(build-system emacs-build-system)
|
||||
(propagated-inputs `(("emacs-undercover" ,emacs-undercover)))
|
||||
(inputs
|
||||
`(("emacs-dash" ,emacs-dash) ; for tests
|
||||
("emacs-shut-up" ,emacs-shut-up))) ; for tests
|
||||
(arguments
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'install 'check
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(zero? (system* "emacs" "--batch" "-L" "."
|
||||
"-L" (string-append
|
||||
(assoc-ref inputs "emacs-undercover")
|
||||
"/share/emacs/site-lisp/guix.d/undercover-"
|
||||
,(package-version emacs-undercover))
|
||||
"-L" (string-append
|
||||
(assoc-ref inputs "emacs-dash")
|
||||
"/share/emacs/site-lisp/guix.d/dash-"
|
||||
,(package-version emacs-dash))
|
||||
"-L" (string-append
|
||||
(assoc-ref inputs "emacs-shut-up")
|
||||
"/share/emacs/site-lisp/guix.d/shut-up-"
|
||||
,(package-version emacs-shut-up))
|
||||
"-l" "test/test-helper.el"
|
||||
"-l" "test/json-reformat-test.el"
|
||||
"-f" "ert-run-tests-batch-and-exit"))
|
||||
#t)))))
|
||||
(home-page "https://github.com/gongo/json-reformat")
|
||||
(synopsis "Reformatting tool for JSON")
|
||||
(description "@code{json-reformat} provides a reformatting tool for
|
||||
@url{http://json.org/, JSON}.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public emacs-json-snatcher
|
||||
(package
|
||||
(name "emacs-json-snatcher")
|
||||
|
|
32
gnu/packages/patches/emacs-json-reformat-fix-tests.patch
Normal file
32
gnu/packages/patches/emacs-json-reformat-fix-tests.patch
Normal file
|
@ -0,0 +1,32 @@
|
|||
Copyright © 2018 Oleg Pykhalov <go.wigust@gmail.com>
|
||||
|
||||
This patch fixes tests for Emacs 25.
|
||||
|
||||
Upstream bug URL:
|
||||
|
||||
https://github.com/gongo/json-reformat/issues/33
|
||||
|
||||
diff --git a/test/json-reformat-test.el b/test/json-reformat-test.el
|
||||
index 7de3be1..b4a4dde 100644
|
||||
--- a/test/json-reformat-test.el
|
||||
+++ b/test/json-reformat-test.el
|
||||
@@ -58,7 +58,7 @@
|
||||
(ert-deftest json-reformat-test:string-to-string ()
|
||||
(should (string= "\"foobar\"" (json-reformat:string-to-string "foobar")))
|
||||
(should (string= "\"fo\\\"o\\nbar\"" (json-reformat:string-to-string "fo\"o\nbar")))
|
||||
- (should (string= "\"\\u2661\"" (json-reformat:string-to-string "\u2661")))
|
||||
+ (should (string= "\"♡\"" (json-reformat:string-to-string "\u2661")))
|
||||
|
||||
(should (string= "\"^(amq\\\\.gen.*|amq\\\\.default)$\"" (json-reformat:string-to-string "^(amq\\.gen.*|amq\\.default)$")))
|
||||
)
|
||||
@@ -148,6 +148,6 @@ bar\"" (json-reformat:string-to-string "fo\"o\nbar")))
|
||||
[{ foo : \"bar\" }, { \"foo\" : \"baz\" }]") ;; At 3 (line)
|
||||
(json-reformat-region (point-min) (point-max)))
|
||||
(should (string=
|
||||
- "JSON parse error [Reason] Bad string format: \"doesn't start with '\\\"'!\" [Position] In buffer, line 3 (char 6)"
|
||||
+ "JSON parse error [Reason] Bad string format: \"doesn't start with \`\\\"'!\" [Position] In buffer, line 3 (char 6)"
|
||||
message-string))
|
||||
)))
|
||||
--
|
||||
2.15.1
|
||||
|
Loading…
Reference in a new issue