;;; thogai.el --- Stenotyping software ;;; Copyright © 2023 Arun Isaac ;;; ;;; This file is part of thogai. ;;; ;;; thogai is free software: you can redistribute it and/or modify it ;;; under the terms of the GNU General Public License as published by ;;; the Free Software Foundation, either version 3 of the License, or ;;; (at your option) any later version. ;;; ;;; thogai is distributed in the hope that it will be useful, but ;;; WITHOUT ANY WARRANTY; without even the implied warranty of ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ;;; General Public License for more details. ;;; ;;; You should have received a copy of the GNU General Public License ;;; along with thogai. If not, see . (define-module (emacs-thogai-package) #:use-module ((gnu packages emacs) #:select (emacs)) #:use-module ((gnu packages python) #:select (python)) #:use-module ((gnu packages stenography) #:select (plover)) #:use-module (guix build-system emacs) #:use-module (guix gexp) #:use-module (guix git-download) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages) #:use-module (guix utils)) (define-public emacs-thogai (package (name "emacs-thogai") (version "0.1.0") (source (local-file ".." "emacs-thogai-checkout" #:recursive? #t #:select? (or (git-predicate (dirname (current-source-directory))) (const #t)))) (build-system emacs-build-system) (arguments (list ;; We cannot use emacs-minimal since thogai needs ;; json-parse-buffer, and json-parse-buffer is absent in ;; emacs-minimal. #:emacs emacs #:phases #~(modify-phases %standard-phases ;; Generate source code from Plover. (add-after 'unpack 'generate-sources (lambda _ (invoke "make" (string-append "PLOVER_SOURCE=" #$(package-source plover)) "thogai-english-orthography.el")))))) (native-inputs (list python)) (home-page "https://thogai.systemreboot.net") (synopsis "Stenotyping software for Emacs") (description "@code{emacs-thogai} is stenotyping software for Emacs. It interfaces with steno machines using the Gemini protocol, and translates strokes using a steno dictionary in the Plover dictionary format. It is intended as a replacement for Plover that integrates well with Emacs.") (license license:gpl3+))) emacs-thogai