nix-configs

Personal NixOS and home-manager configuration files
Log | Files | Refs

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 }