espanso.nix (1886B)
1 { vars, pkgs, ... }: 2 3 { 4 services.espanso = { 5 enable = true; 6 package = pkgs.espanso-wayland; 7 configs.default = { 8 show_notifications = false; 9 backend = "clipboard"; 10 keyboard_layout.layout = "gb"; 11 }; 12 matches = { 13 base = { 14 matches = [ 15 # sort:start 16 { trigger = "(!!)"; replace = "¡"; } 17 { trigger = "(!?)"; replace = "‽"; } 18 { trigger = "(?!)"; replace = "‽"; } 19 { trigger = "(??)"; replace = "¿"; } 20 { trigger = "(Ae)"; replace = "Æ"; } 21 { trigger = "(ae)"; replace = "æ"; } 22 { trigger = "(Ai)"; replace = "Ä"; } 23 { trigger = "(ai)"; replace = "ä"; } 24 { trigger = "(Ao)"; replace = "Å"; } 25 { trigger = "(ao)"; replace = "å"; } 26 { trigger = "(deg)"; replace = "°"; } 27 { trigger = "(O/)"; replace = "Ø"; } 28 { trigger = "(o/)"; replace = "ø"; } 29 { trigger = "(Oi)"; replace = "Ö"; } 30 { trigger = "(oi)"; replace = "ö"; } 31 { trigger = "_addr"; replace = "${vars.user.address}"; } 32 { trigger = "_date"; replace = "{{date}}"; } 33 { trigger = "_dttime"; replace = "{{datetime}}"; } 34 { trigger = "_hem"; replace = "${vars.user.email}"; } 35 { trigger = "_kreg"; replace = "\n\nKind regards,\n${vars.user.fullname}"; } 36 { trigger = "_reg"; replace = "\n\nRegards,\n${vars.user.fullname}"; } 37 { trigger = "_time"; replace = "{{time}}"; } 38 # sort:end 39 ]; 40 global_vars = [ 41 # sort:start 42 { name = "date"; type = "date"; params = { format = "%Y-%m-%d"; }; } 43 { name = "datetime"; type = "date"; params = { format = "%Y-%m-%dT%H:%M"; }; } 44 { name = "time"; type = "date"; params = { format = "%H:%M"; }; } 45 # sort:end 46 ]; 47 }; 48 }; 49 }; 50 }