Macro keyboards are mini programmable USB keyboards that can be pressed to trigger shortcuts, a sequence of keypresses etc. They can have several layers so switching to a different one will trigger different keypresses from the same key, so e.g. different IDEs can be represented.

I’ve just bought one with a view to setting up shortcuts for debugging. Each IDE has its own unique keys for navigating through the code, so I figure it’ll be nice to just press one key to start debugging and one key to step into instead of a combination of ctrl+whatever etc

Do you use one? If so, what do you use it for and what size do you use? Is it too big / too small?

  • Deebster@programming.dev
    link
    fedilink
    English
    arrow-up
    8
    ·
    13 days ago

    I just had mine arrive yesterday!

    I have one of these
    macro keyboard with 12 keys and three knobs

    I’m using ch57x-keyboard-tool to configure it, because I don’t fancy running some random closed-source Chinese code (the manual links to a file on Google Drive). It also means I can move over my config when I switch to Linux.

    I have two keys for switching between headphones and speakers, and some set up for shortcuts I forget (like ctrl-shift-e for the network monitor in Firefox). One key types “hello” just because I can.

    I’ve got the large knob controlling volume, and I can click it to toggle mute. The other two are currently set to scroll, but I don’t need that as my mouse has better ergonomics for scrolling.

    I still have plenty of unused keys and it’s got three layers so I won’t be running out in the foreseeable future.

    • 0101100101@programming.devOP
      link
      fedilink
      English
      arrow-up
      3
      ·
      13 days ago

      I’m using ch57x-keyboard-tool to configure it

      Great! I’ve bought similar without the dials (I wish I didn’t have to pay extra for the stupid LEDs) and was hoping there was something open sourcey to configure it with rather than their dodgy codebase for the same reasons you list!

      • Deebster@programming.dev
        link
        fedilink
        English
        arrow-up
        3
        ·
        13 days ago

        It works great and the config is simple. It doesn’t handle triggering things from those keypresses, but you’ve probably already got something running that does that.

        • 0101100101@programming.devOP
          link
          fedilink
          English
          arrow-up
          2
          ·
          13 days ago

          I’m using Mate and it allows me to easily define custom shortcuts to open apps and so on. I suppose autoIt / the linux variants / custom script can add additional functionality to the keypad as well!

  • MrScottyTay@sh.itjust.works
    link
    fedilink
    English
    arrow-up
    6
    ·
    edit-2
    14 days ago

    I just have a 36 key split keyboard with layers and combo keys, don’t need a separate macro pad when my main keyboard just is one

        • hddsx@lemmy.ca
          link
          fedilink
          arrow-up
          2
          ·
          13 days ago

          I apparently type y and b with the wrong hands.

          Also, I seem to require keys on the fly that most mini keyboards don’t account for:

          ‘~Esc$&:;()[]{}<>=+*

          The way layers on my keyboard and smaller ones I’ve tried is awkward. I don’t want a permanent layer just to type a few keys. I need something like thumb keys that change layers when you hold them down (non ortho staggered that I have doesn’t have thumb keys )

          • MrScottyTay@sh.itjust.works
            link
            fedilink
            English
            arrow-up
            1
            ·
            13 days ago

            I code with mine on a daily basis with work. Best change i ever made for ergonomics and reducing RSI.

            Thumb clusters so come in clutch like. Whenever I see a birthday Hertford I just think about the massive waste of space the space bar is on them.

            For escape and whatnot I use combos so pressing the two leftmost keys on the top row at the same time press escape. The ones below that, tab, and below that ctrl etc. and i make modifiers like control and shift one shots if I don’t hold them down to help reduce RSI even further and so it’s easy to hit keys that they may be “covering up” as a combo.

            • hddsx@lemmy.ca
              link
              fedilink
              arrow-up
              2
              ·
              13 days ago

              Tick mark for executing command in bash Home directory End of line And Switch Case End of statement For clarity Arrays Blocks Math Math Assignment Math Pointers

  • Kissaki@programming.dev
    link
    fedilink
    English
    arrow-up
    6
    ·
    13 days ago

    A rare case of a topic text opening with providing context on what it is talking about. Thank you! I love it.


    I don’t use one. I don’t feel like I have conflicting keybindings, or a need for additional keys. When I do, I customize my bindings through settings.

  • hactar42@lemmy.world
    link
    fedilink
    arrow-up
    4
    ·
    13 days ago

    I have 6 programmable keys on my keyboard. I have macros for a few snippets that I have to type a lot and my email because my company has a stupid long name that I’m sick of typing out.

  • gazter@aussie.zone
    link
    fedilink
    arrow-up
    4
    ·
    13 days ago

    I use an old Stream Deck- not the Steam deck- from Elgato. It’s essentially a small touchscreen with a transparent button pad laid over the top, making for a fully programmable macropad with fully customisable screen-per-key.

    Not only can I have esoteric shortcuts, but I can also dynamically label them, depending on layer. I have a ‘home’ layer with icons representing each other layer. So, for example I can load up a video game, and press the corresponding icon on my macropad. It will then change the icons to match whatever command it does- various whistle commands in Ark, for example. I can then change programs into my CAD, and have the icons now be various shortcuts for modelling tools.

    • 0101100101@programming.devOP
      link
      fedilink
      English
      arrow-up
      3
      ·
      13 days ago

      It sounds beautiful! It’d be really nice if there were transparent rubber keypads available that could be put over phone screens. Then you could fashion an old phone as a keyboard with infinite layers. A simple flutter app to set up the shortcuts and make them configurable and badda boom!

      • Adriox@lemmy.world
        link
        fedilink
        arrow-up
        1
        ·
        10 days ago

        You’re not wrong, but it’s a small developer and an otherwise niche product. These things tend to get a bit more expensive as a result.

        Totally worth it though!

        • potustheplant@feddit.nl
          link
          fedilink
          arrow-up
          1
          ·
          9 days ago

          Yes and no? Being a niche product, I feel like there should be a diy option where you get all of the parts as a kit for a reduced price. Maybe 30-35USD would make more sense. At 70 I would not even consider this product tbh.

      • Adriox@lemmy.world
        link
        fedilink
        arrow-up
        1
        ·
        10 days ago

        DuckyPad: $100 Pro: $115

        That’s with cables, switches, and keycaps included.

        Fun little customizable devices and purchases support the developer.

  • ExtraMedicated@lemmy.world
    link
    fedilink
    English
    arrow-up
    1
    ·
    13 days ago

    I have a keyboard with 10 macro keys, 5 on each side. I don’t have a whole lot of uses for them except when using Blender, I have buttons set to switch between vertex, edges, and face selection modes, one to zoom in on the selected objects, and another one or buttons to quickly scale things down to zero on a single axis.

    Then I set another mode to do some repetetive things in Dwarf Fortress.

  • tal@lemmy.today
    link
    fedilink
    English
    arrow-up
    1
    ·
    14 days ago

    Do you use a macro keyboard for shortcuts?

    No. I think that macro functionality is useful, but I don’t do it via the physical keyboard.

    My general take is that chording (pressing some combination of keys simultaneously) that lets one keep one hands on the home row is faster than pressing one key. So, like, instead of having separate capital and lowercase letter keys, it’s preferable to have “shift” and just one key.

    I think that the main arguments for dedicated keys that one lifts one hands for would be for important but relatively-infrequently-used keys that people don’t use enough to remember chorded combinations for – you can just throw the label on the button as a quick reference. Like, we don’t usually have Windows-Alt-7 on a keyboard power on a laptop, but instead have a dedicated power button.

    Maybe there’s a use to have keyboard-level-programmed macros with chording, as some keyboards can do…but to me, the use case seems pretty niche. If you’re using multiple software environments (e.g. BIOS, Windows, Linux terminal, whatever) and want the same functionality in all of them (e.g. a way to type your name), that might make some sense. Or maybe if you’re permitted to take a keyboard with you, but are required to use a computer that you can’t configure at the software level, that’d provide configurability at a level that you have control over.

    In general, though, I’m happier with configuring stuff like that on the computer’s software; I don’t hit those two use cases, myself.