diff mbox series

[bug#57482] gnu: Add emacs-org-fc.

Message ID 20220830063213.6058-1-iyzsong@envs.net
State Accepted
Headers show
Series [bug#57482] gnu: Add emacs-org-fc. | expand

Checks

Context Check Description
cbaines/comparison success View comparision
cbaines/git-branch success View Git branch
cbaines/applying patch success View Laminar job
cbaines/issue success View issue

Commit Message

ashish.is--- via Guix-patches" via Aug. 30, 2022, 6:32 a.m. UTC
From: 宋文武 <iyzsong@member.fsf.org>

* gnu/packages/emacs-xyz.scm (emacs-org-fc): New variable.
---
 gnu/packages/emacs-xyz.scm | 44 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 44 insertions(+)

Comments

Nicolas Goaziou Sept. 3, 2022, 8:12 a.m. UTC | #1
Hello,

iyzsong--- via Guix-patches via <guix-patches@gnu.org> writes:

> * gnu/packages/emacs-xyz.scm (emacs-org-fc): New variable.

I applied your patch with the changes below. Thank you.

> +      (arguments
> +       (list
> +        #:include #~(list "\\.el$" "\\.awk$" "\\.org$")

I used  #~(cons* ... %default-include) instead.

> +        #:exclude #~(list "^tests/")

Likewise, I used #~(cons ... %default-exclude)

> +        #:phases
> +        #~(modify-phases %standard-phases
> +            (add-after 'unpack 'qualify-paths
> +              (lambda* (#:key inputs #:allow-other-keys)
> +                (let ((find (search-input-file inputs "/bin/find"))
> +                      (gawk (search-input-file inputs "/bin/gawk"))
> +                      (xargs (search-input-file inputs "/bin/xargs")))
> +                  (substitute* "org-fc-awk.el"
> +                    (("\"find ") (string-append "\"" find " "))
> +                    (("\"gawk ") (string-append "\"" gawk " "))
> +                    (("\"xargs ") (string-append "\"" xargs " ")))))))))


I also activated check phase.

> +      (home-page "https://www.leonrische.me/fc/index.html")
> +      (synopsis "Spaced Repetition System for Emacs org-mode")

I removed over-capitalization. Also (nitpick), I replaced org-mode with
Org mode.

> +      (description
> +       "Org-fc is a spaced-repetition system for Emacs' org-mode.

Ditto.

Regards,
diff mbox series

Patch

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index 90ee485f1e..90d817527b 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -166,6 +166,7 @@  (define-module (gnu packages emacs-xyz)
   #:use-module (gnu packages fonts)
   #:use-module (gnu packages freedesktop)
   #:use-module (gnu packages games)
+  #:use-module (gnu packages gawk)
   #:use-module (gnu packages golang)
   #:use-module (gnu packages guile)
   #:use-module (gnu packages gtk)
@@ -32410,3 +32411,46 @@  (define-public emacs-vertico-posframe
 a Vertico extension which provides a way to pop up a frame at point to show
 a vertical completion UI.")
     (license license:gpl3+)))
+
+(define-public emacs-org-fc
+  (let ((commit "f64b5336485a42be91cfe77850c02a41575f5984")
+        (revision "0"))
+    (package
+      (name "emacs-org-fc")
+      (version (git-version "0.1.0" revision commit))
+      (source
+       (origin
+         (method git-fetch)
+         (uri (git-reference
+               (url "https://git.sr.ht/~l3kn/org-fc")
+               (commit commit)))
+         (file-name (git-file-name name version))
+         (sha256
+          (base32 "1d0a3vr09zkplclypcgpfbfd6r0h0i3g3zsqb4pcz6x239d59gd5"))))
+      (build-system emacs-build-system)
+      (propagated-inputs (list emacs-hydra))
+      (inputs (list findutils gawk))
+      (arguments
+       (list
+        #:include #~(list "\\.el$" "\\.awk$" "\\.org$")
+        #:exclude #~(list "^tests/")
+        #:phases
+        #~(modify-phases %standard-phases
+            (add-after 'unpack 'qualify-paths
+              (lambda* (#:key inputs #:allow-other-keys)
+                (let ((find (search-input-file inputs "/bin/find"))
+                      (gawk (search-input-file inputs "/bin/gawk"))
+                      (xargs (search-input-file inputs "/bin/xargs")))
+                  (substitute* "org-fc-awk.el"
+                    (("\"find ") (string-append "\"" find " "))
+                    (("\"gawk ") (string-append "\"" gawk " "))
+                    (("\"xargs ") (string-append "\"" xargs " ")))))))))
+      (home-page "https://www.leonrische.me/fc/index.html")
+      (synopsis "Spaced Repetition System for Emacs org-mode")
+      (description
+       "Org-fc is a spaced-repetition system for Emacs' org-mode.
+It allows you to mark headlines in a file as flashcards, turning pieces of
+knowledge you want to learn into a question-answer test.  These cards are
+reviewed at regular interval.  After each review, the next review interval is
+calculated based on how well you remembered the contents of the card.")
+      (license license:gpl3+))))