I disabled my mouse for a week
twitter.com
twitter.com
Nowadays most applications are developed with the mouse as the primary or sole interface (look at some Electron based or similar apps), treating the keyboard as just an input mechanism for characters and numbers, and not supporting it as a navigation or control mechanism. I don’t see many recent developers trying to learn and use keyboard shortcuts either. They suffer through slow and imprecise mouse navigation and clicks.
Keyboard interfaces are faster for those who use it, but the OS and applications have to provide first class support. While I like macOS way more than Windows, don’t ever try giving up on the mouse or trackpad on a Mac. It’ll be mostly unusable and will waste a lot of your time in trying to get things done with just a keyboard. In Apple’s own apps, you just cannot do what you want to with the keyboard alone (Reminders has been a great example for many years — trying to navigate using tab or arrow keys would show how utterly broken it is).
An additional non-native but amazing (and free!) application is Shortcat (https://shortcat.app/). Among other amazing abilities, Shortcat lets the user access parts of the current application’s GUI that may not be accessible through the Menu Bar or other keyboard shortcuts. Highly recommended!
While it might not be fully enabled out of the box, if the default key controls any given app has aren't enough for you, there's always Settings -> Accessibility -> Full Keyboard Access which should allow you to interact with any UI element in any native app, and seems to work for VSCode as well, so I imagine will work with most electron ones too. (In a stupid UI move though, the full list of commands and the ability to remap them is behind the "info" icon for the control toggle...). You can also in the keyboard settings define shortcut that can be applied to all applications, or just select applications and remap all the modifier keys. You can also in the Pointer Control section enable mouse keys if you really need a mouse pointer for some interaction.
You can even control the mouse with your head and facial expressions if you want, which is something of an experience, though getting way outside the realm of keyboard control.
I think these days macOS is actually better for keyboard. It has pretty good support for setting up custom keyboard shortcuts.
I also thought the built-in help on macOs pretty amazing. With Microsoft (except in Office) you basically have to Google and hope that there aren’t only links to their useless support forum. They should just replace it with a page that explains how to run sfc.exe /scannow.
Plus I can do things like ctrl+a/ctrl+e pretty much anywhere to go beginning of line/end of line (except microsoft apps). I can use ctrl+c in the terminal like it was meant to be, since copy is mapped to cmd+c.
I could go on probably, but seriously, that was one of my favorite things jumping from Windows 2000 to Mac OS X lol.
I honestly couldn't stand using Windows for any serious kinda work until 10 added WSL and improved git support.
Then again, I learned how to program on bsd machines and spent most of my teenage times using linux and OS X. I still don't really grok writing code or using dev toolchains on Windows. It's such a foreign OS. Everything about it feels backwards and upside down. It's like every other OS is a car with a wheel, shifter and two/three pedals. And then Microsoft came along and made a car with 2 joysticks and a butt controller.
Admittedly, MacOS is feeling more and more like that these days. They keep breaking shit. I tried to figure out how to accept/decline incoming phone call notifications (on a mac) and there isn't a hotkey for it. lol. I'm still pondering how I'd do that, because I have a stream deck here and I'd really like to set it up on my mom's computer lol.
Hold down CTRL key as well and you should go to beginning/end of document. Hold down SHIFT key and you'll select from the current cursor location to the cursor destination.
Windows has Shift, CTRL, ALT keys. That's three modifier keys.
The Windows key has typically never been used for an application-level shortcut key. I only know of OS-wide uses of the Windows key.
Arrow Left/Right/Up/Down -> Move by character Option + Left/Right -> Move by word Option + Up/Down -> Move by paragraph Cmd + Left/Right -> Move to beginning/end of line Cmd + Up/Down -> Move to beginning/end of text field Shift + any of the above highlights in that direction
Page up/page down (on laptops Fn+up/down) -> Scroll up down by page (notably this doesn't move the cursor though, so you could scroll up to read something and then start typing to return to where you were) Home/End (on laptops Fn+left/right) -> Scroll to beginning/end of text field/document, with the same non-movement of the cursor Shift + any of the above also highlights, which does move the cursor
I was thinking the other day as I was diving into finally trying to learn vim that this might be why I've never found whether an app had emacs or vim keybindings to be a particularly important feature. That sort of text field navigation has been available in any app using native UI elements since the classic mac OS days.
I have physical discomfort editing serious text in a browser, and I know about Ctrl+arrow to move by word, etc. I do miss things like jumping by sentence, jumping by paragraph, jumping to the opening/closing paren/brace, etc.
Dude, yep.
It’s dire.
One way for software developers to build empathy for the experience of disabled users is to remove your mouse for a day and see how things go for you trying to use your computer.
I wish shortcuts were mapped to the ANSI or ISO positions of the keys instead of letters.
But with how things are right now you are probably better off learning a new layout which might as well be DVORAK or smething similar.
Alt + Shift + Num Lock
That would enable MouseKeys on the num pad.The mouse is a very clever abstraction, combining human hand/eye coordination with the brain's near-effortless spatial transformation of the mouse's horizontal plane to the screen's (usually) vertical(-ish) plane, along with matters of proportion and scale. But it's still an extra layer(s) of abstraction, and of limitation, e.g. the more time your hand is on the mouse, the more time your computing experience is limited to the abilities of the mouse.
Assuming that Apple's tech is best in class, it's still nowhere near as accurate as mouse input. Even if it's 99% accurate, we click on stuff a LOT so you will feel that 1% error rate immediately.
I would like to see someone experiment with AVP-level eye tracking for cursor control on a Mac/PC, so that I can leave my hands on my keyboard 100% of the time and still have mouse control. I think this could be huge.
I also realize that I track the mouse in my peripheral vision all the time when I am using the computer, especially when using tools I am familiar with. It would be a massive downgrade to have to look exactly where I want to for every action.
It's more like an extension of the body itself, the same way we use any tools. And there's a set relation between causes and effects, which becomes more instinctual the more we use it. I think eye tracking suffers from that we use our eyes for perception, not action. Constraining it to action, especially with how slow our movement is, will barely improve our interactions, and may impede them.
I wonder what happens when someone who is cross-eyed or has one real eye and one glass eye try to use the VisionPro?
Wish I'd done it years ago, it was so easy.
I also found it was much easier to create shortcuts that are intuitive for me than to learn the preconfigured ones.
And the standard debugging shortcuts (ctrl f8) etc are super unergonomic. Replaced them with ctrl-' etc.