aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorClément Lassieur <clement@lassieur.org>2020-05-19 11:46:50 +0200
committerClément Lassieur <clement@lassieur.org>2020-05-19 11:52:37 +0200
commit67c0d7fb9a32065fb77f0f595299182c60db85f4 (patch)
tree76209fcea2b5aba3ec304ba7e3251c6ba0d78f1d
parent9f59a9b4bc93b3ef6cd3bd1c9eed04c30ba2d2d4 (diff)
downloadguix-67c0d7fb9a32065fb77f0f595299182c60db85f4.tar.gz
guix-67c0d7fb9a32065fb77f0f595299182c60db85f4.zip
gnu: Add emacs-plantuml-mode.
* gnu/packages/emacs-xyz.scm (emacs-plantuml-mode): New variable.
-rw-r--r--gnu/packages/emacs-xyz.scm51
1 files changed, 50 insertions, 1 deletions
diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index 39083c90cf..69786f335b 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -19,7 +19,7 @@
;;; Copyright © 2016, 2017, 2018, 2019, 2020 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2017 Christopher Baines <mail@cbaines.net>
;;; Copyright © 2017, 2018, 2019, 2020 Mathieu Othacehe <m.othacehe@gmail.com>
-;;; Copyright © 2017, 2018, 2019 Clément Lassieur <clement@lassieur.org>
+;;; Copyright © 2017, 2018, 2019, 2020 Clément Lassieur <clement@lassieur.org>
;;; Copyright © 2017 Vasile Dumitrascu <va511e@yahoo.com>
;;; Copyright © 2017, 2018 Kyle Meyer <kyle@kyleam.com>
;;; Copyright © 2017 Kei Kebreau <kkebreau@posteo.net>
@@ -168,6 +168,7 @@
#:use-module (gnu packages haskell-xyz)
#:use-module (gnu packages wordnet)
#:use-module (gnu packages photo)
+ #:use-module (gnu packages uml)
#:use-module (guix utils)
#:use-module (srfi srfi-1)
#:use-module (ice-9 match))
@@ -22942,3 +22943,51 @@ deleting them with @code{(setq delete-by-moving-to-trash t)}. This package
provides a simple but convenient user interface to manage those trashed
files.")
(license license:gpl3+)))
+
+(define-public emacs-plantuml-mode
+ (package
+ (name "emacs-plantuml-mode")
+ (version "1.4.1")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/skuro/plantuml-mode")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0yp41d2dmf3sx7qnl5x0zdjcr9y71b2wwc9m0q31v22xqn938ipc"))))
+ (arguments
+ '(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'use-local-plantuml
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((plantuml (assoc-ref inputs "plantuml"))
+ (file "plantuml-mode.el"))
+ (chmod file #o644)
+ (emacs-substitute-variables file
+ ("plantuml-jar-path"
+ (string-append plantuml "/share/java/plantuml.jar"))
+ ("plantuml-executable-path"
+ (string-append plantuml "/bin/plantuml"))
+ ("plantuml-server-url" 'nil)
+ ("plantuml-default-exec-mode" ''executable))
+ (emacs-batch-edit-file file
+ `(progn (progn
+ (goto-char (point-min))
+ (re-search-forward "(defun plantuml-download-jar")
+ (beginning-of-line)
+ (kill-sexp))
+ (basic-save-buffer)))
+ #t))))))
+ (inputs
+ `(("plantuml" ,plantuml)))
+ (propagated-inputs
+ `(("emacs-dash" ,emacs-dash)))
+ (build-system emacs-build-system)
+ (home-page "https://github.com/skuro/plantuml-mode")
+ (synopsis "Major mode for editing PlantUML sources")
+ (description "This package provides a major mode for editing PlantUML
+sources. It features syntax highlighting, autocompletion, preview of buffer
+or region and use of locally installed binaries.")
+ (license license:gpl3+)))