Conversation
i need someone to explain kmonad to me so i can make my keyboard have a mode in which all it does is type diferent permutations of dog noises. i need it for saphic reasons.
1
0
0

coolbean (account has been reverted to before we moved back to this instance)

@shitpostalotl thats one hell of a fucking post

ok so anyway, first you make a defsrc block, this is purely there to define the way you define layers later, it doesnt actually do much on its own

now, kmonad will use the first layer defined in your configuration file (iirc) so, use this layer to to define your preferred keyboard layout (e.g. qwerty dvorak and so on) with a keybind you want to use to switch to the bark layer (preferably defined in an alias, more on these in the next paragraph),

for which you will most likely want to define a couple aliases ahead of time as writing functions inside of the layout is kinda awful, to do this use defalias, and you will most likely be looking for one of the macro functions (cant remember what each is called or does cause theres a few),

so yea, define aliases that just write out dog noises, then do another deflayer that has these aliases (prepended with @) instead of letters and also DO NOT forget to add a keybind to switch back, and boom, barkboard
1
0
0
@coolbean@seafoam.space

you are very smart but i would rather abuse river's (lack of) config format to do it using keybind layers there then understand all of that

edit: they do not let you map keybinds without modifyer keys this is transphobic.

edit again: ound the 'None' modiyer and sucessully rebound the '' key to do nothing.

1
0
1

coolbean (account has been reverted to before we moved back to this instance)

@shitpostalotl neat, but kmonad is a system daemon and will apply even in the tty which is amazing in its own right, but much more importantly kmonad is WAY less tedious to configure if you need to change a lot of keys (like replacing all of your letters with macros that print dog noises)

this is also why id generally prefer it to keyd as well even if thats more available e.g. on the bsds and supports unicode characters which kmonad can only do using xcompose (gets very messy on wayland, though i think technically possible with sway)
1
0
0
@coolbean@seafoam.space 1) i never use the tty unless something is Very Wrong 2) Fucking Watch Me
1
0
1

coolbean (account has been reverted to before we moved back to this instance)

@shitpostalotl ok then, uhhh, wtype should be the missing puzzle piece besides like a lot of patience to type out nearly the same thing 26 times
1
0
0

@coolbean
you ool. absoloute buon. i'm using river, so i can just use loops! otherwise i would not even consider this a viable path orward.

1
0
1

coolbean (account has been reverted to before we moved back to this instance)

@shitpostalotl honestly forgot about that but yea, river's init can be anything as long as it will run commands

compiling my init file to make it more suckless 7head
1
0
0

@coolbean eh. unless you can compile rc scripts i don't really want to do that.

1
0
1

coolbean (account has been reverted to before we moved back to this instance)

@shitpostalotl no like, as long as its an executable that can run external commands (which most languages can), it works

it is entirely possible to write a river init in a compiled language (just inconvenient as hell)
0
0
0