emacs-xyz.scm (4897B)
1 ;;; Kakafarm's Guix Channel 2 ;;; Copyright © 2023-2024 Yuval Langer <yuval.langer@gmail.com> 3 ;;; 4 ;;; This file is part of Kakafarm's Guix Channel. 5 ;;; 6 ;;; Kakafarm's Guix Channel is free software; you can redistribute it 7 ;;; and/or modify it under the terms of the GNU General Public License 8 ;;; as published by the Free Software Foundation; either version 3 of 9 ;;; the License, or (at your option) any later version. 10 ;;; 11 ;;; Kakafarm's Guix Channel is distributed in the hope that it will be 12 ;;; useful, but WITHOUT ANY WARRANTY; without even the implied 13 ;;; warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 14 ;;; See the GNU General Public License for more details. 15 ;;; 16 ;;; You should have received a copy of the GNU General Public License 17 ;;; along with Kakafarm's Guix Channel. If not, see 18 ;;; <http://www.gnu.org/licenses/>. 19 20 (define-module (kakafarm packages emacs-xyz) 21 #:use-module ((guix licenses) 22 #:prefix license:) 23 #:use-module (gnu packages speech) 24 #:use-module (gnu packages) 25 #:use-module (guix build-system emacs) 26 #:use-module (guix download) 27 #:use-module (guix git-download) 28 #:use-module (guix packages)) 29 30 (define-public emacs-nano-tts-minor-mode 31 (let ((commit "52a3ffa5833bdda79eb36e5048fe97c1b59eb9f2") 32 (base32-string "15lzcd95zadd8wbzl5zdn72rad41mga2qqz34dc0sp8xgfwg3krh") 33 (version "1.0.0") 34 (revision "1") 35 (git-repository-url 36 "https://codeberg.org/kakafarm/emacs-nano-tts-minor-mode")) 37 (package 38 (name "emacs-nano-tts-minor-mode") 39 (version (git-version version revision commit)) 40 (source 41 (origin 42 (method git-fetch) 43 (uri (git-reference 44 (url git-repository-url) 45 (commit commit))) 46 (file-name (git-file-name name version)) 47 (sha256 48 (base32 base32-string)))) 49 (build-system emacs-build-system) 50 (inputs (list espeak-ng)) 51 (home-page git-repository-url) 52 (synopsis 53 "Text-to-speech accessibility tool which reads aloud the active region") 54 (description 55 "A text-to-speech accessibility tool which reads aloud the active region. 56 57 Speaking is done using espeak-ng.") 58 (license license:gpl3+)))) 59 60 (define-public emacs-greader-mode 61 (let ((commit "336b9b3608cf24c7cd20f7d32e2fe05e3c9f5150") 62 (revision "1") 63 (git-repository-url 64 "https://gitlab.com/michelangelo-rodriguez/greader")) 65 (package 66 (name "emacs-greader-mode") 67 (version (git-version "0.9.21" revision commit)) 68 (home-page git-repository-url) 69 (source 70 (origin 71 (uri (git-reference 72 (url git-repository-url) 73 (commit commit))) 74 (method git-fetch) 75 (patches (search-patches 76 "kakafarm/packages/patches/emacs-greader-mode-0.9.21-require-greader-espeaker.patch")) 77 (file-name (git-file-name name version)) 78 (sha256 79 (base32 "14gkx685nkkf1jad7rg4ybl13p64piljxjba8xp3n0zzq6g7dnrc")))) 80 (build-system emacs-build-system) 81 (inputs (list espeak-ng)) 82 (synopsis 83 "Gnamù Reader - greader-mode, send buffer contents to a speech engine") 84 (description 85 "Greader is a module that allows you to send any emacs buffer to a TTS. 86 A text-to-speech like engine @code{espeak-ng} or @code{speech-dispatcher} are 87 already supported, plus limited bakend support native to macOS. The 88 mode supports timer reading, automatic scrolling of buffers in modes 89 like `info-mode', repeating reading of regions or the whole buffer, 90 includes a feature to facilitate the compilation of espeak-ng 91 pronunciations, and other features.") 92 (license license:gpl3+)))) 93 94 (define-public emacs-super-duper-yes-or-no 95 (let ((commit "26eeb8655d20c10847437e985f021ab0772e76dd") 96 (revision "1") 97 (git-repository-url 98 "https://codeberg.org/kakafarm/emacs-super-duper-yes-or-no")) 99 (package 100 (name "emacs-super-duper-yes-or-no") 101 (version (git-version "1.0.0" revision commit)) 102 (source 103 (origin 104 (method git-fetch) 105 (uri (git-reference 106 (url git-repository-url) 107 (commit commit))) 108 (file-name (git-file-name name version)) 109 (sha256 110 (base32 "1ksvdac41fq9j6wk9myw6i0z1jp18lp2al95g9nidf6jimazdyxc")))) 111 (build-system emacs-build-system) 112 (home-page git-repository-url) 113 (synopsis "Replace yes-or-no-p with something even more demanding") 114 (description 115 "Instead of replacing yes-or-no-p with y-or-n-p, replace it with 116 something even more mentally demanding. 117 118 Currently implemented: 119 120 - super-duper-yes-or-no-words-p. 121 - super-duper-yes-or-no-toggle-case-p. 122 - super-duper-yes-or-no-arithmetic-problem-p. 123 124 Consult the README.org file or the Emacs help of these functions for 125 more information.") 126 (license license:gpl3+))))