New paste Repaste Download
**** kmonad
#+begin_src scheme :noweb-ref module
#:use-module (gnu packages haskell-apps)
#+end_src
#+begin_src scheme :noweb-ref service
  (udev-rules-service
   'kmonad
   (file->udev-rule "70-kmonad.rules" (file-append kmonad "/lib/udev/rules.d/70-kmonad.rules")))
#+end_src
#+begin_src scheme :tangle systems/base/kmonad.scm
  (define-module (systems base kmonad)
    #:use-module (guix gexp))
        
  (define-public main-config
    (mixed-text-file "new.kbd"
      "\
  (defcfg
   input (device-file \"/dev/input/by-path/platform-i8042-serio-0-event-kbd\")
   output (uinput-sink \"Canary\")
   allow-cmd true
   fallthrough true
  )
  (defsrc
    grv  1    2    3    4    5    6    7    8    9    0    -    =    bspc
    tab  q    w    e    r    t    y    u    i    o    p    [    ]    \\
    caps a    s    d    f    g    h    j    k    l    ;    '    ret
    lsft z    x    c    v    b    n    m    ,    .    /    rsft
    lctl  lmet lalt           spc            ralt rctl
  )
  (defalias
    ;; touchcursor (tap-next-release spc lctl)
    cesc (tap-next-release esc lctl)
    shift (layer-toggle shift)
    symbols (tap-hold-next-release 200 (around-next (layer-toggle symbols)) ralt)
    ;; homerow mods
    met_c (tap-hold-next-release 200 c lmet)
    alt_r (tap-hold-next-release 200 r lalt)
    ctl_s (tap-hold-next-release 200 s lctl)
    sft_t (tap-hold-next-release 200 t (layer-toggle shift))
    sft_n (tap-hold-next-release 200 n (layer-toggle shift))
    ctl_e (tap-hold-next-release 200 e rctl)
    alt_i (tap-hold-next-release 200 i lalt)
    met_a (tap-hold-next-release 200 a rmet)
    touchcursor (tap-next-release spc (layer-toggle touchcursor))
     fwd_w C-right
   bck_w C-left
   kil_w C-bspc
  )
  (deflayer mokshary
    `    1    2    3    4    5    6    7    8    9    0    -    =    bspc
    tab  w    l    y    p    k    z    x    o    u    ;    [    {    $
    @cesc @met_c    @alt_r    @ctl_s    @sft_t    b    f    @sft_n    @ctl_e    @alt_i    @met_a    '    ret
    @shift j    v    d    g    q   m    h    /    ,    .    bspc
    lctl  lmet @symbols           @touchcursor          @symbols rctrl
  )
   ;;ralt rctrl
  (deflayer shift
    ~   !    @    #    \\    %    ^    &    *    (    )     S--    +    bspc
    S-tab  W    L    Y    P    K    Z    X    O    U    :    ]    }    ?
    @cesc C    R    S    T    B    F    N    E    I    A    \"    ret
    lsft  J    V    D    G    Q    M    H    |    <    >    rsft
    lctl  lmet lalt           @touchcursor            @symbols rctrl
  )
  (deflayer touchcursor
    _    _    _  _    _    _    _    _    _    _    _    _    _ @kil_w
    tab  _    _    _    _    _    _    _    _    _    _    _    _    _
    @cesc _    _    _    _    _    left    down    up    right    _    _    ret
    @shift _    _    _    _    _   _   _    _    _    _    @shift
    lctl  lmet @symbols           @touchcursor          @symbols rctrl
  )
  (deflayer symbols
    `    !    @    #    \\    %    ^    &    *    (    )    -    =    bspc
    tab  w    l    y    p    k    z    [    ?    @    ;    [    {    $
    @cesc !    @    #    \\    %    ^    &   (     *    )    '    ret
    @shift j    v    d    g    q   m    h    /    ,    .    @shift
    lctl  lmet lalt           @touchcursor          @symbols rctrl
  )"))
#+end_src
#+begin_src scheme :noweb-ref module
  #:use-module ((systems base kmonad)
         #:prefix kmonad::)
#+end_src
#+begin_src scheme :noweb-ref service
  (service kmonad-service-type
   (kmonad-configuration
     (keymaps
      (list
       kmonad::main-config))))
#+end_src
Filename: None. Size: 4kb. View raw, , hex, or download this file.

This paste expires on 2026-05-14 12:43:12.844910+00:00. Pasted through web.