summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHerman Rimm <herman@rimm.ee>2024-05-11 21:57:52 +0200
committerGuix Patches Tester <>2024-05-11 22:50:48 +0200
commit7e12269862c97f39c9732cf710a511a157229150 (patch)
tree2b1519b742b8f5f6118697d2a4e4f622db0528fd
parent9288654773a110156e0bb6fc703a9c24f5bfc527 (diff)
downloadguix-patches-7e12269862c97f39c9732cf710a511a157229150.tar
guix-patches-7e12269862c97f39c9732cf710a511a157229150.tar.gz
gnu: Add hunspell-bdic-en*.
* gnu/packages/aspell.scm (aspell-compiled-word-list): New procedure. (define-compiled-word-list-dictionary): New macro. (hunspell-bdic-en, hunspell-bdic-en-au, hunspell-bdic-en-ca, hunspell-bdic-en-gb, hunspell-bdic-en-gb-ize, hunspell-bdic-en-us): New variables. Change-Id: I4f02295add9803aefe7687b11d2bcbcb21cdd6b1
-rw-r--r--gnu/packages/hunspell.scm82
1 files changed, 82 insertions, 0 deletions
diff --git a/gnu/packages/hunspell.scm b/gnu/packages/hunspell.scm
index 7163358260..782292c79f 100644
--- a/gnu/packages/hunspell.scm
+++ b/gnu/packages/hunspell.scm
@@ -32,6 +32,7 @@
#:use-module (gnu packages compression)
#:use-module (gnu packages m4)
#:use-module (gnu packages perl)
+ #:use-module (gnu packages qt)
#:use-module (gnu packages textutils))
(define-public hunspell
@@ -445,3 +446,84 @@ under permissive licensing terms. See the 'Copyright' file."))))
"en_US"
(synopsis "Hunspell dictionary for United States English"))
+(define* (aspell-compiled-word-list
+ language
+ synopsis
+ #:optional
+ (nick (string-map (lambda (chr)
+ (if (char=? #\_ chr)
+ #\-
+ chr))
+ (string-downcase language))))
+ (package
+ (inherit (aspell-word-list language synopsis nick))
+ (name (string-append "hunspell-bdic-" nick))
+ (version "2018.04.16")
+ (native-inputs
+ (list (aspell-word-list language synopsis nick) qtwebengine))
+ (build-system trivial-build-system)
+ (arguments
+ `(#:modules ((guix build utils))
+ #:builder
+ (begin
+ (use-modules (guix build utils))
+ (let ((dictionary
+ (string-append
+ (assoc-ref %build-inputs
+ (string-append "hunspell-dict-" ,nick))
+ "/share/hunspell/" ,language ".dic"))
+ (convert-dict
+ (string-append
+ (assoc-ref %build-inputs "qtwebengine")
+ "/lib/qt6/libexec/qwebengine_convert_dict"))
+ (qtwebengine-dictionaries
+ (string-append %output
+ "/share/qtwebengine_dictionaries"))
+ (bdic (string-append (string-map (lambda (chr)
+ (if (char=? #\_ chr)
+ #\-
+ chr))
+ ,language)
+ ".bdic")))
+ (invoke convert-dict dictionary bdic)
+ (install-file bdic qtwebengine-dictionaries)
+ #t))))
+ (description
+ "This package provides a compiled dictionary for the Hunspell
+spell-checking library.")))
+
+(define-syntax define-compiled-word-list-dictionary
+ (syntax-rules (synopsis)
+ ((_ name language (synopsis text))
+ (define-public name
+ (aspell-compiled-word-list language text)))
+ ((_ name language nick (synopsis text))
+ (define-public name
+ (aspell-compiled-word-list language text nick)))))
+
+(define-compiled-word-list-dictionary hunspell-bdic-en
+ "en"
+ (synopsis "Compiled Hunspell dictionary for English"))
+
+(define-compiled-word-list-dictionary hunspell-bdic-en-au
+ "en_AU"
+ (synopsis "Compiled Hunspell dictionary for Australian English"))
+
+(define-compiled-word-list-dictionary hunspell-bdic-en-ca
+ "en_CA"
+ (synopsis "Compiled Hunspell dictionary for Canadian English"))
+
+(define-compiled-word-list-dictionary hunspell-bdic-en-gb
+ "en_GB-ise" "en-gb"
+ (synopsis
+ "Compiled Hunspell dictionary for British English, with -ise endings"))
+
+(define-compiled-word-list-dictionary hunspell-bdic-en-gb-ize
+ "en_GB-ize"
+ (synopsis
+ "Compiled Hunspell dictionary for British English, with -ize endings"))
+
+(define-compiled-word-list-dictionary hunspell-bdic-en-us
+ "en_US"
+ (synopsis "Compiled Hunspell dictionary for United States English"))
+