como definir xkb_keymap personalizado em nixos

2

Eu tenho o seguinte layout layouts/en_ru

xkb_keymap {
  xkb_keycodes      { include "evdev+aliases(qwerty)" };
  xkb_geometry      { include "pc(pc104)" };
  xkb_types         { include "complete" };
  xkb_compat        { include "complete" };

  xkb_symbols {
    include "pc+us+ru:2+inet(evdev)"
    include "group(rctrl_rshift_toggle)"
    include "capslock(swapescape)"

    // swap right alt and left control
    replace key <RALT> { [ Control_L ] };
    modifier_map Control { <RALT> };

    // swap ; and : only in us layout
    replace key <AC10> { [ colon, semicolon ],
                        [ Cyrillic_zhe, Cyrillic_ZHE ] };

    // helpers //
    // xinput list
    // xinput test 16
    // xkbcomp $DISPLAY out.xkb
    // cat /usr/share/X11/xkb/rules/base.lst
  };
};

que é carregado em $HOME/xinitrc como este

xkbcomp $HOME/.config/layouts/en_ru $DISPLAY

Como mover tudo isso para configuration.nix ?

Eu fiz a primeira parte disso acontecer adicionando

xserver = {
  enable = true;
  layout = "us,ru";
  xkbOptions = "caps:swapescape,grp:rctrl_rshift_toggle";
};

para o meu configuration.nix , mas não sei como adicionar essa parte e torná-la ampla no sistema

// swap right alt and left control
replace key <RALT> { [ Control_L ] };
modifier_map Control { <RALT> };

// swap ; and : only in us layout
replace key <AC10> { [ colon, semicolon ],
                    [ Cyrillic_zhe, Cyrillic_ZHE ] };
    
por srghma 29.10.2017 / 10:37

0 respostas

Tags