refactor(emacs,hunspell): swap aspell for hunspell

This commit is contained in:
2025-11-26 16:13:23 -07:00
parent 8c0bf4645b
commit c945a7269e
5 changed files with 61 additions and 25 deletions

29
modules/home/hunspell.nix Normal file
View File

@@ -0,0 +1,29 @@
{ config, lib, pkgs, ... }:
let cfg = config.sydnix.hunspell;
in {
options.sydnix.hunspell = {
enable = lib.mkEnableOption "Hunspell";
package = lib.mkPackageOption pkgs "hunspell" {};
dictionaries = lib.mkOption {
description = ''
Hunspell dictionary packages to install.
'';
default = _: [];
type = lib.types.anything // {
merge =
_loc: defs: dicts: lib.concatMap (f: f dicts) (lib.getValues defs);
check = lib.isFunction;
};
};
};
config = lib.mkIf cfg.enable {
home.sessionVariables.DICPATH =
lib.makeSearchPath
"share/hunspell"
(cfg.dictionaries pkgs.hunspellDicts);
home.packages = [ cfg.package ];
};
}

View File

@@ -35,8 +35,7 @@
:general (:states '(normal visual)
"z =" #'syd-jinx-or-ispell)
:config
;; Default is "en_US"; fuck that!
(jinx-languages "en" t))
(jinx-languages "en_GB en_US ko_KR" t))
(defvar syd-prose-mode-hook
(list #'syd-prose-set-visual-fill-column-center

View File

@@ -6,28 +6,16 @@ in {
enable = lib.mkEnableOption "Jinx spell-check";
};
config = lib.mkIf cfg.enable
(let
my-aspell = pkgs.aspellWithDicts
(dicts: with dicts; [
en en-computers en-science
]);
in {
sydnix.impermanence.directories =
let xdg-config-home =
lib.removePrefix "${config.home.homeDirectory}/"
(lib.removePrefix "~/"
config.xdg.configHome);
in [ "${xdg-config-home}/enchant" ];
config = lib.mkIf cfg.enable {
sydnix.impermanence.directories =
let xdg-config-home =
lib.removePrefix "${config.home.homeDirectory}/"
(lib.removePrefix "~/"
config.xdg.configHome);
in [ "${xdg-config-home}/enchant" ];
sydnix.emacs = {
emacsPackages = epkgs: [
epkgs.jinx
];
extraWrapProgramArgs = [
"--prefix" "PATH" ":" (lib.makeBinPath [my-aspell])
"--set" "ASPELL_CONF" "dict-dir ${my-aspell}/lib/aspell"
];
};
});
sydnix.emacs.emacsPackages = epkgs: [
epkgs.jinx
];
};
}

View File

@@ -0,0 +1,19 @@
{ config, lib, pkgs, ... }:
let cfg = config.sydnix.users.msyds.hunspell;
in {
options.sydnix.users.msyds.hunspell = {
enable = lib.mkEnableOption "Hunspell";
};
config = lib.mkIf cfg.enable {
sydnix.hunspell = {
enable = true;
dictionaries = ds: with ds; [
en_US
en_GB-ise # en_GB with -ise endings.
ko_KR
];
};
};
}

View File

@@ -35,6 +35,7 @@
waybar.enable = true;
};
users.msyds = {
hunspell.enable = true;
emacs.enable = true;
impermanence.enable = true;
syncthing.enable = true;