{ pkgs, flake, osConfig, ... }: let inherit (flake.config.machines.devices) mars; hostname = osConfig.networking.hostName; in { services.espanso = { enable = true; package = if hostname == mars.name then pkgs.espanso-wayland else pkgs.espanso; matches = { base = { matches = [ { trigger = ":neg"; replace = "¬"; } { trigger = ":conj"; replace = "∧"; } { trigger = ":disj"; replace = "∨"; } { trigger = ":imp"; replace = "→"; } { trigger = ":bicon"; replace = "↔"; } { trigger = ":forall"; replace = "∀"; } { trigger = ":exist"; replace = "∃"; } { trigger = ":em"; replace = "—"; } ]; }; global_vars = { global_vars = [ { name = "currentdate"; type = "date"; params = { format = "%d/%m/%Y"; }; } { name = "currenttime"; type = "date"; params = { format = "%R"; }; } ]; }; }; }; }