GNU bug report logs - #61434
[PATCH] gnu: Add emacs-pasp-mode.

Previous Next

Package: guix-patches;

Reported by: Liliana Marie Prikler <liliana.prikler <at> gmail.com>

Date: Sat, 11 Feb 2023 15:17:02 UTC

Severity: normal

Tags: patch

Done: Liliana Marie Prikler <liliana.prikler <at> gmail.com>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: help-debbugs <at> gnu.org (GNU bug Tracking System)
To: Liliana Marie Prikler <liliana.prikler <at> gmail.com>
Subject: bug#61434: closed (Re: [PATCH] gnu: Add emacs-pasp-mode.)
Date: Sun, 19 Feb 2023 07:44:02 +0000
[Message part 1 (text/plain, inline)]
Your bug report

#61434: [PATCH] gnu: Add emacs-pasp-mode.

which was filed against the guix-patches package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to 61434 <at> debbugs.gnu.org.

-- 
61434: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=61434
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
From: Liliana Marie Prikler <liliana.prikler <at> gmail.com>
To: 61434-done <at> debbugs.gnu.org
Cc: Nicolas Goaziou <mail <at> nicolasgoaziou.fr>
Subject: Re: [PATCH] gnu: Add emacs-pasp-mode.
Date: Sun, 19 Feb 2023 08:42:55 +0100
Am Samstag, dem 11.02.2023 um 16:15 +0100 schrieb Liliana Marie
Prikler:
> * gnu/packages/patches/emacs-pasp-mode-quote-file-names.patch: New
> file.
> * gnu/local.mk: Register it here.
> * gnu/packages/emacs-xyz.scm (emacs-pasp-mode): New variable.
Pushed.

[Message part 3 (message/rfc822, inline)]
From: Liliana Marie Prikler <liliana.prikler <at> gmail.com>
To: guix-patches <at> gnu.org
Subject: [PATCH] gnu: Add emacs-pasp-mode.
Date: Sat, 11 Feb 2023 16:15:00 +0100
* gnu/packages/patches/emacs-pasp-mode-quote-file-names.patch: New file.
* gnu/local.mk: Register it here.
* gnu/packages/emacs-xyz.scm (emacs-pasp-mode): New variable.
---
 gnu/local.mk                                  |  1 +
 gnu/packages/emacs-xyz.scm                    | 47 +++++++++++++++++++
 .../emacs-pasp-mode-quote-file-names.patch    | 20 ++++++++
 3 files changed, 68 insertions(+)
 create mode 100644 gnu/packages/patches/emacs-pasp-mode-quote-file-names.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index bf4b20577d..0548fc4e3d 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1070,6 +1070,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/emacs-highlight-stages-add-gexp.patch	\
   %D%/packages/patches/emacs-lispy-fix-thread-last-test.patch   \
   %D%/packages/patches/emacs-native-comp-driver-options.patch   \
+  %D%/packages/patches/emacs-emacs-pasp-mode-quote-file-names.patch  \
   %D%/packages/patches/emacs-polymode-fix-lexical-variable-error.patch  \
   %D%/packages/patches/emacs-source-date-epoch.patch		\
   %D%/packages/patches/emacs-telega-path-placeholder.patch	\
diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index bbaafcc730..b6780ace02 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -4387,6 +4387,53 @@ (define-public emacs-pabbrev
 during idle time, while Emacs is doing nothing else.")
     (license license:gpl3+)))
 
+(define-public emacs-pasp-mode
+  (let ((commit "59385eb0e8ebcfc8c11dd811fb145d4b0fa3cc92")
+        (revision "1"))
+    (package
+     (name "emacs-pasp-mode")
+     (version (git-version "0.1.0" revision commit))
+     (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/santifa/pasp-mode.git")
+                    (commit commit)))
+              (patches
+               (search-patches "emacs-pasp-mode-quote-file-names.patch"))
+              (sha256
+               (base32
+                "1ar4vws3izzmir7m870mccci620ns3c5j26dcmwaxavhgw45wcmf"))))
+     (build-system emacs-build-system)
+     (arguments
+      (list
+       #:phases
+       #~(modify-phases %standard-phases
+           (add-after 'unpack 'defconst-version
+             (lambda _
+               (emacs-batch-edit-file "pasp-mode.el"
+                 '(progn
+                   (search-forward-regexp
+                           "(defcustom pasp-mode-version \"[^\"]*\"[
+ ]*\\(\"[^\"]*\"\\)[^()]*)")
+                   (let ((docstring (match-string 1)))
+                     (backward-sexp)
+                     (kill-sexp)
+                     (insert (format "(defconst emacs-pasp-version \"%s\" %s)"
+                                     #$version docstring))
+                     (basic-save-buffer))))))
+           (add-after 'unpack 'hardcode-clingo
+             (lambda* (#:key inputs #:allow-other-keys)
+               (emacs-substitute-variables "pasp-mode.el"
+                 ("pasp-clingo-path"
+                  (search-input-file inputs "/bin/clingo"))))))))
+     (inputs (list clingo))
+     (home-page "https://github.com/santifa/pasp-mode")
+     (synopsis "Major mode for editing Answer Set Programs.")
+     (description
+      "This package provides a major mode for editing answer set programs,
+in particular ones that can be solved by @command{clingo}.")
+     (license license:gpl3+))))
+
 (define-public emacs-pdf-tools
   (package
     (name "emacs-pdf-tools")
diff --git a/gnu/packages/patches/emacs-pasp-mode-quote-file-names.patch b/gnu/packages/patches/emacs-pasp-mode-quote-file-names.patch
new file mode 100644
index 0000000000..39dc5d0253
--- /dev/null
+++ b/gnu/packages/patches/emacs-pasp-mode-quote-file-names.patch
@@ -0,0 +1,20 @@
+diff --git a/pasp-mode.el b/pasp-mode.el
+index 7f83645..5daf08e 100644
+--- a/pasp-mode.el
++++ b/pasp-mode.el
+@@ -199,9 +199,12 @@
+ Argument ENCODING The current buffer which holds the problem encoding.
+ Optional argument INSTANCE The problem instance which is solved by the encoding.
+   If no instance it is assumed to be also in the encoding file."
+-  (if 'instance
+-      (concat pasp-clingo-path " " pasp-clingo-options " " encoding " " instance)
+-    (concat pasp-clingo-path " " pasp-clingo-options " " encoding)))
++  (if instance
++      (concat pasp-clingo-path " " pasp-clingo-options " "
++              (shell-quote-argument encoding) " "
++              (shell-quote-argument instance))
++    (concat pasp-clingo-path " " pasp-clingo-options " "
++            (shell-quote-argument encoding))))
+ 
+ (defun pasp-run-clingo (encoding &optional instance)
+   "Run Clingo with some ASP input files.
-- 
2.39.1




This bug report was last modified 2 years and 176 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.