Powerful keybindings easier than ever with KMonad

Поделиться
HTML-код
  • Опубликовано: 25 дек 2024

Комментарии • 78

  • @MrMetanalysis
    @MrMetanalysis 3 года назад +200

    Waaaa, someone made a RUclips video about my pet-project. Thank you so much. To show appreciation for this great introduction, I've linked you in the README. This is David, who is starting to slowly do better health-wise too :-). Thank you for the well-wishes in the beginning of your vid.

    • @GavinFreeborn
      @GavinFreeborn  3 года назад +21

      Great to hear you are getting better. A great project like this deserves the attention.

    • @salman-farooq-sh
      @salman-farooq-sh 3 года назад +9

      Oh believe David when I say that kmonad holds much more importance in my setup than someone's just another pet project. Kmonad is the best in it's class. And the fact it's built in Haskel is just a big cherry on top.

    • @ShawnFumo
      @ShawnFumo 3 года назад +2

      I haven't had a chance to play with it yet, but am super excited! I've been thinking this kind of project would be helpful to those that don't have a mechanical keyboard yet or who need to use their laptop keyboard a lot. I was considering trying to start on it myself (maybe calling it VMK to fit in with QMK/ZMK but Virtual instead), but it seemed a pretty daunting project honestly. For it to already exist and be cross platform is great. :)

  • @gpcureton
    @gpcureton Год назад +7

    Just came across Kmonad, I can't believe I haven't found it until now! I'm an all-keeb coder (*vim, tmux, qtile, etc...), but in order to get the most out of these things I've been using mechs like Planck and Moonlander, with layers burned into the keebs. But sometimes I'm stuck without my ZSA keyboards, and have only the laptop, and I really struggle! I've tried using Sxkhd to replicate the external layered keyboard experience, but it never works quite right. Kmonad lets me replicate my external QMK layouts almost one-for-one on my laptop keyboard. Now if I can just get a laptop with a columnar key layout... 🙂 Thanks David for a great project, and thanks Gavin for a great video!

  • @auntiecarol
    @auntiecarol 3 года назад +13

    Just compiled KMonad and settled down to read the doco and was directed here from the README. Fantastic! A video in 2021 that is pure passion and information, not some over produced "influencer" styled BS. (Unless you've green-screened a kitchen table kinda setup :D)
    Not even gonna check at the rest of your content before hitting "subscribe"; I just know it's going to be good. Anyway, I've got a T460 to mess around with and keybindings to over-engineer.

    • @didedoshka
      @didedoshka 2 года назад

      Reading it 10 month since, how did over engineering go?

    • @auntiecarol
      @auntiecarol 2 года назад +1

      @@didedoshka My `~/.XCompose` is perfect!

  • @AtomToast
    @AtomToast 3 года назад +8

    Finally, video coverage!
    I like how you call the caps lock key escape. Also you have the tap-hold section twice in your video

    • @GavinFreeborn
      @GavinFreeborn  3 года назад +1

      Ya thanks for pointing

    • @GavinFreeborn
      @GavinFreeborn  3 года назад +1

      It out

    • @isAif47
      @isAif47 3 года назад +2

      That section tripped me up, I had to re-watch to make sure I am not going crazy.

    • @iAmTheWagon
      @iAmTheWagon 3 года назад

      @@isAif47 Same xD

  • @Spl4tt
    @Spl4tt 3 года назад +8

    Kmonad looks even better than I expected. Definitely gonna use it on my laptop once I have time to set it up. Thanks for the good explanations

  • @tachmonite37
    @tachmonite37 2 года назад +1

    oro! 😲I can finally bring back my G13 back to life....in Linux. Using my G13 Windows macros was partially preventing me from using Linux as my daily driver. Thank you sooooo much for this video. Your content is amazing! 🥳👌👍

  •  5 месяцев назад

    Thanks! Kmonad is a great piece of software. It just works, and the configuration file (intimidating at first) is very easy to edit because it has a smart design. I had tried to configure my keyboard with a mix of xmodmap, setxkbmap, sxhkd and xcape. All of them worked for one specific thing but were very incompatible with the others, and some had a horrible syntax. Kmonad did everything with a single binary and a single configuration file. Awesome.

  • @PalashBackup
    @PalashBackup 4 месяца назад

    Thank you for the tutorial. This was very clear and helped me a lot to configure my keyboard. Kind of getting a qmk/programmable keyboard without the need for spending a lot of money.

  • @kristun216
    @kristun216 Год назад

    Thank you. After seeing this I've finished setting up Systemd services and keyboard hooks for my keyboard to have the VIA/QMK functionality so I can be comfy anywhere with any keyboard

  • @noonegoingnowhere3910
    @noonegoingnowhere3910 3 года назад +1

    Waaaaaaaaaa, David just sent me this video, this is so nice :-)

  • @pwojtcza
    @pwojtcza 2 года назад

    I started learning dvorak keyboard layout, this will let me keep ctrl c, ctrl v keybinds in old place. Thanks, this is awesome

  • @claudiusraphael9423
    @claudiusraphael9423 2 года назад +3

    Wow. Incredible pick, i can't even count how often the desire for something like this popped into my mind and ignited random rabbithole adventures. Thanks, for sharing!
    Regarding your presentation:
    - Very well articulated and nicely calm explained - comfy!
    - I agree with another commenter, slight angle for the face cam and a bit more space.
    I would like to point out, that - not only for viewing, but also for actively reproducing what you do - a classic blackscreen terminal (especially with dimmed font) is quite hard to follow. May i suggest you test inverting the screenshare when editing a video and see how it works out?
    As a middleground for a WYSIWYG approach aka no-after-effects but still comfortable to work in when presenting i still favor the good old Sun-setup:
    Color-scheme: Solarized Dark/Light + Font: Lucida Sans Unicode
    It is in comparison to most combinations especially good to read on lower resolutions and/or at a distance, no matter if it's an OLED, LED, Laser, LCD, Laserview, Plasma, CRT or even Print. Works with all Color-Ranges and monochrome.
    Keep it up, well done!

  • @ИванИванов-й1ж3ю
    @ИванИванов-й1ж3ю Год назад

    Thanks! This video really helped me understand some of kmonad.

  • @n0kodoko143
    @n0kodoko143 3 года назад +1

    What a gem, thank you for sharing, and thank you to the devs!

  • @ITalented
    @ITalented 2 года назад +1

    exactly wht i have been looking for...thnks for this

  • @heinzerbrew
    @heinzerbrew 3 месяца назад

    great video, wish it was longer

  • @copper4eva
    @copper4eva 3 года назад +9

    Haven't watched the video so maybe this gets mentioned, but a big plus for this program is that it rebinds keys in both the tty and xorg. A problem with xbindkeys is that it only works in the x server. It's really annoying rebinding caps lock to esc with xbindkeys, and then every time you use vim in tty you screw up all the time.

  • @lamprospitsillou6325
    @lamprospitsillou6325 3 года назад +3

    I would recommend putting your camera a bit further away, or even at an angle, I think it's a bit too close, and since you look at your keyboard most of the time we mostly see your hair.
    Please don't take it negatively 😅 ,
    You make some unique content!
    That's all thank you very much, keep it up

  • @bjornotto98
    @bjornotto98 2 года назад +1

    Fuck this is so awesome, i messed arround with xmodmap and setxkbmap but i just couldnt figure it out, this is so much easier and a lot more powerfull.
    Thanks so much for sharing.

  • @cjbarroso
    @cjbarroso 3 года назад

    Very good intro, thank you!

  • @maxreuv
    @maxreuv 3 года назад

    Super awesome! Thank you!

  • @iAmTheWagon
    @iAmTheWagon 3 года назад

    Oh yes. Thank you so much. I've been wanting something like for a long time. I try other programs. Either they don't work or they're too much of a pain in the ass the get working. This is exciting.

  • @copper4eva
    @copper4eva 3 года назад +1

    Also, noice job using a model m in your thumbnail.

  • @JulianInsua
    @JulianInsua Год назад

    This is awesome. THANKS!!!!!

  • @nothingbshr5590
    @nothingbshr5590 3 года назад

    Just discovered this channel !

  • @marcofumi7430
    @marcofumi7430 3 года назад

    Hey man, complete windows freak and IT noob here.
    Found your guide very helpful, I'm composing my layout slowly but surely.
    Struggling a bit to work around my Fn button on defsrc, I've assigned it KeyUnknown and it seems to work, since _ and XX would print errors in the console, but I'd like to keep it.

  • @lamprospitsillou6325
    @lamprospitsillou6325 3 года назад +3

    Wow I'll try it just to see if it's better than sxhkd. The layering seems really cool! But not full support for shell would make it somewhat difficult

    • @AtomToast
      @AtomToast 3 года назад +1

      I personally use it in addition to sxhkd. They server different purposes for me

  • @shuonanliu497
    @shuonanliu497 4 месяца назад

    is there a way this program can remap two number pads into one split keyboard ?

  • @Amike
    @Amike 3 года назад

    This is great! I wanted to change to wayland but was hesitant because I have many dependencies of X, this fixes a couple

  • @frozen_tortus
    @frozen_tortus 3 года назад

    what are those icons on your workspace icons 1 2 3 and 4?

  • @steamline432
    @steamline432 2 дня назад

    Sadly kmonad does nothing but print "Connection error" when I press a key I've bound in my config

  • @reaperfs2371
    @reaperfs2371 3 года назад +1

    How are you running the tool without sudo? Mine won't run without and just spits out "openFd: permission denied"

    • @GavinFreeborn
      @GavinFreeborn  3 года назад

      If I want to restart it I run `killall kmonad`

  • @claudiusraphael9423
    @claudiusraphael9423 2 года назад

    The remapping of "CTRL" onto hold "CAPS-LOCK" looks nice, but does it override the standard, so returns to the original state, or will it toggle nonetheless?
    Also wonder if it is possible to redirect the input with a mapped function, e.g. to capture sequences that are initiated on specific keys and/or combinations?
    For example i generally type with my hands set one letter to the right to stay centered on notebooks/laptops, because especially for coding it is not as stretchy and far easier to reach symbols and specials, but it also prevents me from leaning angled towards the keyboard and display when writing for hours.
    Now, it would seem the presented tool allows me to actually move the whole standard-characters one to the right, in that case "a" would be on "s" and so "a" would be free for something like "BACKSPACE".
    But, is it also doable to trigger the capture of a sequence by mapping a function that checks what is typed next?
    So i can conditionally output for example the "a" with accents out of a unicode-set, depending on which letter i press after (sotosay switch to a modal input that actively checks the following input), e.g. get a "à" when i type "sq" (on actual keyboard) or to get a "á" when typing "se"?
    Sorry, lol. Right now i'm just baffled by the possibilities if that would work reliably, not-app-specific and maybe even independent of the OS in use ...
    - simplifying special-character input
    - create language-specific layouts universally, but also optimized for specific use-cases, like stenography, phonemic writing, syllabary languages, programming with a fixed set of mnemonics interactively triggered by layout-switching on the fly
    - use in mobile and wpa ?
    Ooof, i need to breathe. So much universe ...
    Seriously though, if you or any other commenter has insights/hands-on experience with the described scenario, i am eager to catch your follow-up!
    So, noice!

  • @bjornotto98
    @bjornotto98 2 года назад

    Does somebody know if its possible to configure kmonad so that:
    When space key is pressed act as normal space
    When space key is being held switch to a layer until its released
    I tried: (defalias nspc (tap-next spc (layer-toogle mylayer)))
    But that doesnt seem to work.

  • @alexwexov4298
    @alexwexov4298 2 года назад

    Great video

  • @adrian_franczak
    @adrian_franczak Год назад

    This looks like you can post this between devices because it operates on position in layouts instead of standard key names - first impression but I will try this becouse karabiners configuration don’t work well with home row mods

  • @DaraulHarris
    @DaraulHarris 3 года назад +2

    11:34 rekt 🤣🤣

  • @orelsberg2781
    @orelsberg2781 2 года назад

    Is there any way to map alt+shift+hjkl to arrow keys? I haven't found anything on that anywhere

    • @GavinFreeborn
      @GavinFreeborn  2 года назад

      You would have to make a layer to do that. Kinda a pain I know.

  • @stephanearguin1227
    @stephanearguin1227 3 года назад

    Ok I have a Unicomp PC122 keyboard with F1-F24 keys and a bunch of additional keys on the left side of my keyboard (like Model F). Does anyone mapped this beast with KMonad? I'd like to have the same configuration on Linux (main OS), WIndows and OS/x (freelancer so it depends what my client runs on). Where can I find some help?
    Thanks

  • @faisceaux106
    @faisceaux106 3 года назад

    Awesome!

  • @FrankCastiglione
    @FrankCastiglione 2 года назад

    Hello. I'm not a programmer, but I'm interested in improving my ergonomics. But first, I need to install Kmonad and I don't know how to do that. Can you guys help me?
    I use qutebrowser and did the Vim tutorial. But I'm just a graphical environment user. I don't know many terminal commands (I usually follow tutorials, copying and pasting) and I don't have much familiarity with projects that need to be compiled (unless they have a step-by-step documentation for "dummies".
    I use Pop!_OS 22.04 LTS. Could you let me know what I need to learn to do the Kmonad installation? My goal is to set up several layers, for example: leave one of them for a numeric keyboard, just as shown in the video. Thank you!

    • @linuxramblingproductions8554
      @linuxramblingproductions8554 2 года назад +1

      Sudo apt install kmonad probably if that doesn’t work use whatever command it says to use on there site also just read the docs you don’t need to be a programmer lol

  • @donhjoe2162
    @donhjoe2162 3 года назад

    Can I remap my keyboard to use left handed numeric pad but without losing my original key letters. For example, create a layout to asign a shortcut to enable numeric pad, but the numeric pad could be letter 8 q, 7 w, 6 e, 5 a, 4 s, 3 d, 2 z, 1 x, 0 c?

    • @Dan-gs3kg
      @Dan-gs3kg 3 года назад +3

      Yes. If you watched the video, that is one of the example layers in the tutorial keymap file.

  • @chikkenvoicesinmyhed
    @chikkenvoicesinmyhed 3 года назад

    I would love to know where the config file is (linux) if anyone can help. Trying to run the binary seems to do nothing (maybe it is supposed to do nothing until I can make changes). I am still trying to find a starting point past downloading the binary.

  • @toddkfisher
    @toddkfisher 2 года назад

    Is that a hotplate behind you?

  • @nutelhere
    @nutelhere Год назад +1

    Kmonad is great, however it's sadly not developed anymore. There's a very similar tool called kanata, and it's basically a rust rewrite of kmonad, that fixes some of kmonad's issues and it's actively developed.

    • @GavinFreeborn
      @GavinFreeborn  Год назад +1

      Are you sure? It seems to have commits as recent as two weeks ago. That said there is an unanswered issue for creating a new release less than a month ago.
      Either way it's great to hear of another project. I will have to give it a look

    • @nutelhere
      @nutelhere Год назад

      @@GavinFreeborn Yeah. Most of the recent commits are only improving non-code stuff like docs. Last code update was committed on Jan 6.

  • @jakobfrei1121
    @jakobfrei1121 Год назад

    4:18 "In case you're not familiar with Haskell, it's not super important for this video"
    Stopped watching right there

    • @linuxramblingproductions8554
      @linuxramblingproductions8554 5 месяцев назад

      Kmonad is written in haskell but unless you are modifying the source code its purely lisp

  • @gotbletu
    @gotbletu 3 года назад

    looks complicated, i quit for now =)

  • @freekaleek12100
    @freekaleek12100 Год назад

    Hi @gavin - thanks for the tutorial looks like a very cool tool! I'm getting the same error I think you may have gotten off camera at 14:20 in the video. I.e. "kmonad: Could not perform IOCTL grab on: /dev/input/by-path/platform-i8042-serio-0-event-kbd" when trying to implement the capsasa layer. Any chance you remember how you went about resolving it?

    • @GavinFreeborn
      @GavinFreeborn  Год назад

      If I recall I had multiple instances of kmonad running so all I needed to do was run `killall kmonad` and the command worked. If that isn't the case for you there may be another tool already attempting to grab control of your keyboard. Possibly another hotkey daemon?

  • @VS-nq1ro
    @VS-nq1ro 2 года назад

    I tried it for Ubuntu and it didn't work for me...

    • @GavinFreeborn
      @GavinFreeborn  2 года назад +1

      Did you get a permissions error? There is an faq that does a good job at covering the common problems people have.