From 67c0d7fb9a32065fb77f0f595299182c60db85f4 Mon Sep 17 00:00:00 2001 From: Clément Lassieur Date: Tue, 19 May 2020 11:46:50 +0200 Subject: gnu: Add emacs-plantuml-mode. * gnu/packages/emacs-xyz.scm (emacs-plantuml-mode): New variable. --- gnu/packages/emacs-xyz.scm | 51 +++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 50 insertions(+), 1 deletion(-) 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 ;;; Copyright © 2017 Christopher Baines ;;; Copyright © 2017, 2018, 2019, 2020 Mathieu Othacehe -;;; Copyright © 2017, 2018, 2019 Clément Lassieur +;;; Copyright © 2017, 2018, 2019, 2020 Clément Lassieur ;;; Copyright © 2017 Vasile Dumitrascu ;;; Copyright © 2017, 2018 Kyle Meyer ;;; Copyright © 2017 Kei Kebreau @@ -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+))) -- cgit 1.4.1