from Hacker News

Mouseless – fast mouse control with the keyboard

by lvturner on 12/12/24, 4:53 AM with 120 comments

  • by qq99 on 12/12/24, 5:02 PM

    This is a really creative idea!

    I wish more keyboards would integrate that little red Lenovo mouse nub.

    Some thoughts:

    - allow me to maximize the youtube embed on your site, I can't really see the video clearly enough to gauge the product so had to open it on youtube

    - little green cursor in your vid is very hard to see

    - took me a long time to understand that your cells were rectangles, so "2 characters of any cell" didn't make sense for a while, maybe you could emphasize it (if only for the video)

  • by thehours on 12/12/24, 4:27 PM

    Other options for mouseless navigation on MacOS:

    - [1] warpd - uses grid

    - [2] Scoot - uses grid

    - [3] Shortcat - uses accessibility ui

    - [4] Superkey - uses text ocr

    [1] https://github.com/rvaiya/warpd

    [2] https://github.com/mjrusso/scoot

    [3] https://shortcat.app

    [4] https://superkey.app

  • by taco_emoji on 12/12/24, 3:58 PM

    This looks really cool but the Youtube video was very confusing. You were talking about a cell but I couldn't see WHERE the cell was. There needs to be a big arrow or obvious flashing circle or something. I still don't quite understand how this works.
  • by bittersweet on 12/12/24, 4:10 PM

    In your video you mention not being able to use tab, enter etc for system dialogs on Mac, if you enable 'Use keyboard navigation to move focus between controls' in the Keyboard settings (under Shortcuts), you can cycle the focus with tab (and shift+tab), and select them with space. It's one of the first things I enable on a new install :-)
  • by zfnmxt on 12/12/24, 4:34 PM

    The characterization of mouse keys as taking "five...more like ten seconds to get to where you want to go" is incorrect with a decent implementation/practice.

    I exclusively use mouse keys with my QMK keyboard [1] and I'm just as fast with it as with a mouse. I have four different cursor speeds that I toggle between as I move the mouse: I use the SUPA FAST LIGHTNING SPEED mode to move across the sceen and then reduce the speed as I zero in on my target. It's totally seamless and easy.

    I also happen to use Tridactyl which uses a very similar mechanism as mouseless, but sometimes when I'm lazy I just use mouse keys. I don't think navigating by key anchors is always better: there's a greater cognitive load to reading off characters and typing them vs. using WASD to move your mouse around.

    Alternatively, we could all simply relent and accept the fact that this problem was solved long ago in hardware and ship TrackPoints on all keyboards.

    [1] https://docs.qmk.fm/features/mouse_keys

  • by vunderba on 12/12/24, 5:30 PM

    I used a similar system when I had pretty bad RSI over a decade ago but it was a bit different - basically you would hit a keyboard shortcut and it would draw divide the screen into 4-shaded quadrants, you would type 1,2,3,4, and then it would zoom on that quadrant, and divide it up again into four quadrants. Rinse and repeat until the cursor position was at the position you wanted it.

    At any point in time, you could hit escape if your mouse was at the precision level you wanted. It actually worked pretty well.

  • by charkubi on 12/12/24, 4:59 PM

    I've been using Vimac [1], which puts the targets directly on UI components.

    [1] https://github.com/nchudleigh/vimac

  • by xypine on 12/12/24, 10:35 AM

    For Linux users there is https://github.com/moverest/wl-kbptr/
  • by t_von_doom on 12/12/24, 12:10 PM

    I wish I had seen this a few months sooner! I have solved the problem with hardware via a Keyball: https://github.com/Yowkees/keyball/blob/main/keyball44/doc/r...
  • by bronco21016 on 12/12/24, 4:15 PM

    Are there any eye tracked solutions? I definitely see the use case for something like this on large monitor setups.
  • by evanjrowley on 12/12/24, 5:20 AM

    I'd absolutely try this out.

    It's similar to the grid that's provided by voice control on MacOS: https://support.apple.com/guide/mac-help/use-voice-control-c...

  • by mistaken on 12/12/24, 11:44 AM

    I'm not sure about the naming; similar software already exists for linux with the same name: https://github.com/jbensmann/xmouseless https://github.com/jbensmann/mouseless
  • by M95D on 12/13/24, 11:09 AM

    When I was young there was a thing called "keyboard navigation". The user would press tab to move the keyboard cursor to the next control element on the screen, and spacebar to activate it, Enter to activate the default button (OK), or Esc to press "Cancel". Menus and most important controls had ALT+key shortcuts. Windows provided all elements with keyboard navigation by default and devs took great care for the controls to activate in the most logical order. Even browsers and websites had keyboard navigation.

    Such wonderful times... Gone now. Everything is touchscreen-only.

  • by aantix on 12/12/24, 4:06 PM

    This reminds me of Vimium, the Chrome extension, that allows you to follow links just by a couple of keystrokes.
  • by charles_f on 12/12/24, 7:05 PM

    Don't know if the developer is here, but feedback - a bunch of people complained that it was hard understanding that cells had two letters in it in the video. That also translates into the product. I have a hard time figuring if the cell is LO or OL. I think having the first and second letters either in different colors, or different font weight (eg first is bold, second is not) would really help.
  • by cool-RR on 12/12/24, 9:58 PM

    I developed a similar solution for Windows over a decade ago which I've been using every day. It works but it needs to be made easy for people other than me to use (Readme, requirements file, etc.) If anyone volunteers to spend a few hours polishing it, email me and I'll open-source it.
  • by SubiculumCode on 12/12/24, 7:08 PM

    Why hasn't this type of program been integrated into i3 windows manager? It seems the natural fit for a system that wants to keep your hands on the keyboard.

    Does anyone know of something like warpd, but is in the ubuntu repository, instead of someone's github like warpd?

  • by samatman on 12/12/24, 5:23 PM

    So about this:

    https://github.com/croian/mouseless-issues/blob/main/mousele...

    You at no point explain why your application needs to interact with SSL in any fashion.

    What's up with that?

    The combination of giving elevated permission to control the host computer, with network interaction? That's a bad combination. Why are these things combined in your application?

    Edit: this comes across more accusatory than I meant it. I do think that the section should have a complete explanation of why the program needs an SSL bypass on certain networks.

  • by Ey7NFZ3P0nzAe on 12/19/24, 8:51 AM

    A similar FOSS software is keynav https://github.com/jordansissel/keynav

    it uses dichotomic splitting though

  • by novoreorx on 12/14/24, 3:50 AM

    Great app! I'm already considering buying it. It reminds me of another app called Wooshy (https://wooshy.app/), which takes a different approach by targeting the mouse through search words from the entire screen. While Wooshy is more intuitive, Mouseless is more versatile and can perform drag-and-drop very easily.
  • by MetaWhirledPeas on 12/12/24, 5:16 PM

    This is great, and it gives me an idea for an alternative:

    A tool that uses a visual representation of your physical keyboard to move the mouse around the screen. So pressing Esc would move the mouse to the top left of the screen, and pressing H would move it closer to the center. Then repeatedly highlight smaller and smaller rectangles around the mouse cursor, repeating the process of tapping a letter, until you are satisfied with the cursor position.

  • by TheFreim on 12/12/24, 5:39 AM

    On mobile the embedded YouTube video is extremely tiny.
  • by aitchnyu on 12/12/24, 2:45 PM

    Its as effective as Shortcat, which needs time to collect clickable elements and build overlays, and of course can be used in more than browser.

    I changed keys to ASDFGHJKL;RVTBUM (18 characters) which is home row and index fingers and ok enough for clicking a close button a 27 inch screen. Dont recall any other tool offering this configuration.

    This uses Python and Pydantic to validate configuration.

  • by lofaszvanitt on 12/15/24, 3:06 AM

    "moving your hand back and forth between the mouse and the keyboard gets very tiring, pull you out of the zone and just takes up precious time "

    :DDD

    keyboard is not for fine grained movement, period. it might be useful for handicapped people, but I don't see the relevance in everyday usage.

  • by arkenflame on 12/13/24, 6:54 PM

    For MacOS users of Hammerspoon, I made a similar plugin based on devoting the screen into successively smaller 3x3 grids: https://github.com/msolomon/griddle

    It’s free and fully customizable too.

  • by silentguy on 12/12/24, 8:08 PM

    I used to use vimac (https://github.com/nchudleigh/vimac) when I had macbook. I was pretty happy with it. I liked its interface. Its interface was inspired by Vimium extension on browser.
  • by ksp-atlas on 12/12/24, 9:07 AM

    I had an idea for something like this, but for Linux instead and utilizing numbers
  • by jauntywundrkind on 12/13/24, 3:49 PM

    Woot makes keyboards that can detect the position of every key. It'd be neat to see that used to control a cursor, with variable speed depending on how pressed down the button is.
  • by hailruda on 12/12/24, 5:09 PM

    After watching the video, I think this is an exciting experiment to see if there exist better ways to control PCs without a mouse and just a keyboard. The standard of today being keyboard shortcuts.
  • by paravz on 12/14/24, 3:44 AM

    Lenovo still sells $100 ThinkPad keyboards with TrackPoint, it will never be as fast, but no need to move hands from the keyboard
  • by luhn on 12/12/24, 6:09 PM

    Years ago my Mac got confused and seemed to think my keyboard was a mouse. Pressing any key would move the cursor up a few points.

    Ahead of its time, I guess.

  • by eviks on 12/13/24, 3:47 AM

    These overlays should follow your keyboard physical layout to its advantage, so top-left should be starting with Q, not A
  • by defenestrated on 12/12/24, 4:11 PM

    I've been hunting for a mouse panning solution for a multi-monitor setup on macos. This might be it!
  • by syndicatedjelly on 12/13/24, 4:47 PM

    Just downloaded and installed, I already love this idea :) nice work!
  • by dartos on 12/12/24, 7:57 AM

    How clever!
  • by corytheboyd on 12/12/24, 7:59 PM

    Thank you for making this a one time purchase, not a subscription.
  • by ghjfrdghibt on 12/12/24, 6:08 PM

    I feel like this could be implemented in autohotkey for Windows.
  • by jerpint on 12/12/24, 3:43 PM

    This looks like it would be really useful for multimodal LLMs
  • by MoreMoore on 12/12/24, 7:59 AM

    Is there anything like this for Windows?
  • by lovegrenoble on 12/12/24, 7:37 PM

    interesting idea