{ config, pkgs, ... }: { imports = [ ./common.nix ]; programs.alacritty = { settings = { font = { offset = { x = 1; y = 0; }; size = 13; }; window = { padding = { x = 5; y = 5; }; decorations = "none"; }; key_bindings = [ {key = "Key0"; mods = "Command"; action = "ResetFontSize";} {key = "Key0"; mods = "Control"; action = "ResetFontSize";} {key = "Equals"; mods = "Command"; action = "IncreaseFontSize";} {key = "Equals"; mods = "Control"; action = "IncreaseFontSize";} {key = "Minus"; mods = "Control"; action = "DecreaseFontSize";} {key = "A"; mods = "Control"; chars = "\\x01";} {key = "B"; mods = "Control"; chars = "\\x02";} {key = "C"; mods = "Control"; chars = "\\x03";} {key = "D"; mods = "Control"; chars = "\\x04";} {key = "E"; mods = "Control"; chars = "\\x05";} {key = "F"; mods = "Control"; chars = "\\x06";} {key = "G"; mods = "Control"; chars = "\\x07";} {key = "H"; mods = "Control"; chars = "\\x08";} {key = "I"; mods = "Control"; chars = "\\x09";} {key = "J"; mods = "Control"; chars = "\\x0A";} {key = "K"; mods = "Control"; chars = "\\x0B";} {key = "L"; mods = "Control"; chars = "\\x0C";} {key = "M"; mods = "Control"; chars = "\\x0D";} {key = "N"; mods = "Control"; chars = "\\x0E";} {key = "O"; mods = "Control"; chars = "\\x0F";} {key = "P"; mods = "Control"; chars = "\\x10";} {key = "Q"; mods = "Control"; chars = "\\x11";} {key = "R"; mods = "Control"; chars = "\\x12";} {key = "S"; mods = "Control"; chars = "\\x13";} {key = "T"; mods = "Control"; chars = "\\x14";} {key = "U"; mods = "Control"; chars = "\\x15";} {key = "V"; mods = "Control"; chars = "\\x16";} {key = "W"; mods = "Control"; chars = "\\x17";} {key = "X"; mods = "Control"; chars = "\\x18";} {key = "Y"; mods = "Control"; chars = "\\x19";} {key = "Z"; mods = "Control"; chars = "\\x1A";} {key = "Key6"; mods = "Control|Shift"; chars = "\\x1E";} # Control + ^ {key = "Minus"; mods = "Control|Shift"; chars = "\\x1F";} # Control + _ {key = "A"; mods = "Alt"; chars = "\\x1ba";} {key = "B"; mods = "Alt"; chars = "\\x1bb";} {key = "C"; mods = "Alt"; chars = "\\x1bc";} {key = "D"; mods = "Alt"; chars = "\\x1bd";} {key = "E"; mods = "Alt"; chars = "\\x1be";} {key = "F"; mods = "Alt"; chars = "\\x1bf";} {key = "G"; mods = "Alt"; chars = "\\x1bg";} {key = "H"; mods = "Alt"; chars = "\\x1bh";} {key = "I"; mods = "Alt"; chars = "\\x1bi";} {key = "J"; mods = "Alt"; chars = "\\x1bj";} {key = "K"; mods = "Alt"; chars = "\\x1bk";} {key = "L"; mods = "Alt"; chars = "\\x1bl";} {key = "M"; mods = "Alt"; chars = "\\x1bm";} {key = "N"; mods = "Alt"; chars = "\\x1bn";} {key = "O"; mods = "Alt"; chars = "\\x1bo";} {key = "P"; mods = "Alt"; chars = "\\x1bp";} {key = "Q"; mods = "Alt"; chars = "\\x1bq";} {key = "R"; mods = "Alt"; chars = "\\x1br";} {key = "S"; mods = "Alt"; chars = "\\x1bs";} {key = "T"; mods = "Alt"; chars = "\\x1bt";} {key = "U"; mods = "Alt"; chars = "\\x1bu";} {key = "V"; mods = "Alt"; chars = "\\x1bv";} {key = "W"; mods = "Alt"; chars = "\\x1bw";} {key = "X"; mods = "Alt"; chars = "\\x1bx";} {key = "Y"; mods = "Alt"; chars = "\\x1by";} {key = "Z"; mods = "Alt"; chars = "\\x1bz";} {key = "A"; mods = "Alt|Shift"; chars = "\\x1bA";} {key = "B"; mods = "Alt|Shift"; chars = "\\x1bB";} {key = "C"; mods = "Alt|Shift"; chars = "\\x1bC";} {key = "D"; mods = "Alt|Shift"; chars = "\\x1bD";} {key = "E"; mods = "Alt|Shift"; chars = "\\x1bE";} {key = "F"; mods = "Alt|Shift"; chars = "\\x1bF";} {key = "G"; mods = "Alt|Shift"; chars = "\\x1bG";} {key = "H"; mods = "Alt|Shift"; chars = "\\x1bH";} {key = "I"; mods = "Alt|Shift"; chars = "\\x1bI";} {key = "J"; mods = "Alt|Shift"; chars = "\\x1bJ";} {key = "K"; mods = "Alt|Shift"; chars = "\\x1bK";} {key = "L"; mods = "Alt|Shift"; chars = "\\x1bL";} {key = "M"; mods = "Alt|Shift"; chars = "\\x1bM";} {key = "N"; mods = "Alt|Shift"; chars = "\\x1bN";} {key = "O"; mods = "Alt|Shift"; chars = "\\x1bO";} {key = "P"; mods = "Alt|Shift"; chars = "\\x1bP";} {key = "Q"; mods = "Alt|Shift"; chars = "\\x1bQ";} {key = "R"; mods = "Alt|Shift"; chars = "\\x1bR";} {key = "S"; mods = "Alt|Shift"; chars = "\\x1bS";} {key = "T"; mods = "Alt|Shift"; chars = "\\x1bT";} {key = "U"; mods = "Alt|Shift"; chars = "\\x1bU";} {key = "V"; mods = "Alt|Shift"; chars = "\\x1bV";} {key = "W"; mods = "Alt|Shift"; chars = "\\x1bW";} {key = "X"; mods = "Alt|Shift"; chars = "\\x1bX";} {key = "Y"; mods = "Alt|Shift"; chars = "\\x1bY";} {key = "Z"; mods = "Alt|Shift"; chars = "\\x1bZ";} {key = "Key1"; mods = "Alt"; chars = "\\x1b1";} {key = "Key2"; mods = "Alt"; chars = "\\x1b2";} {key = "Key3"; mods = "Alt"; chars = "\\x1b3";} {key = "Key4"; mods = "Alt"; chars = "\\x1b4";} {key = "Key5"; mods = "Alt"; chars = "\\x1b5";} {key = "Key6"; mods = "Alt"; chars = "\\x1b6";} {key = "Key7"; mods = "Alt"; chars = "\\x1b7";} {key = "Key8"; mods = "Alt"; chars = "\\x1b8";} {key = "Key9"; mods = "Alt"; chars = "\\x1b9";} {key = "Key0"; mods = "Alt"; chars = "\\x1b0";} {key = "Space"; mods = "Control"; chars = "\\x00";} # Ctrl + Space {key = "Grave"; mods = "Alt"; chars = "\\x1b`";} # Alt + ` {key = "Grave"; mods = "Alt|Shift"; chars = "\\x1b~";} # Alt + ~ {key = "Period"; mods = "Alt"; chars = "\\x1b.";} # Alt + . {key = "Key8"; mods = "Alt|Shift"; chars = "\\x1b*";} # Alt + * {key = "Key3"; mods = "Alt|Shift"; chars = "\\x1b#";} # Alt + # {key = "Period"; mods = "Alt|Shift"; chars = "\\x1b>";} # Alt + > {key = "Comma"; mods = "Alt|Shift"; chars = "\\x1b<";} # Alt + < {key = "Minus"; mods = "Alt|Shift"; chars = "\\x1b_";} # Alt + _ {key = "Key5"; mods = "Alt|Shift"; chars = "\\x1b%";} # Alt + % {key = "Key6"; mods = "Alt|Shift"; chars = "\\x1b^";} # Alt + ^ {key = "Backslash"; mods = "Alt"; chars = "\\x1b";} # Alt + \ {key = "Backslash"; mods = "Alt|Shift"; chars = "\\x1b|";} # Alt + | ]; }; }; }