7 ms·
I wrote this mess, and didn't expect this to end up here. To clarify, I wrote the first section because polemics are fun, not because I am claiming to have dis
by daptaq 5y ago
I wrote this mess, and didn't expect this to end up here. To clarify, I wrote the first section because polemics are fun, not because I am claiming to have discovered something radical. My imagined addressee is the kind of person who thinks that mice were a mistake, and keyboard-oriented terminal usage is the one and only truth. Partially a straw man, but a good enough approximation of some people I have met.
The main intention is to demonstrate how context-menu-mode works, how to extend it yourself and call for people to test it before Emacs 28 is released. Having written a few forgettable articles, I ended up forgetting that intentional provocation attracts unintentional attention.
- BeFlatXIII 5y agoThe title, both here on HN and on the article is missing an s. Currently, it reads as "Emacs 28' context menu", which implies that the context menu is 28 feet tall. It is probably meant as "Emacs 28's context menu".
- bagels 5y agoThat is the only reason I clicked, to see a 28 foot menu. Was disappointed.
- daptaq 5y agoFor some reason I thought that you don't have to add a possessive "s" after 28 (in the same way you wouldn't after Emacs'). As I only use metric units, I would have never seen the "28 feet" thing. Thanks!
- kstrauser 5y agoYou’d still use a possessive “‘s” after “Emacs” because it’s singular, like “Emacs’s context menu”.
- chuchana 5y agoThank you, I (probably re-)learned some English today :) As a non-native speaker, I looked it up because my intuition didn't align with your statement. Those who downvoted probably should have done so, too, or explained why they think otherwise. https://en.wikipedia.org/wiki/Apostrophe#Singular_nouns_ending_with_an_%22s%22_or_%22z%22_sound https://en.wikipedia.org/wiki/Apostrophe#Singular_nouns_endi...
- kstrauser 5y agoYou’re very welcome. The article mentions some possible exceptions where you can leave off the ‘s, but I don’t think it’s ever wrong to add it anyway. As a non-native speaker, you have my sympathy and respect for learning our grand mess of a language.
- BeFlatXIII 5y agoIf only English had a German-like spelling reform and then enforced rules for transliterating loanwords going forward.
- anigbrowl 5y agoWas also expecting this to be about an absurdly over-populated menu, though if enough people act on the author's suggestions we might attain that goal.
- Stratoscope 5y ago> the cumbersome migration of the hand between keyboard and mouse This is one of the reasons I love the TrackPoint and use it exclusively. There is no physical context switching between mouse and keyboard. If you are a touch typist, it is always right there on the home row. I am such a TrackPoint nut that on the rare occasions when I've had to work on a computer that is not a ThinkPad (a desktop or a different laptop), I use a ThinkPad wireless keyboard to give it a TrackPoint: https://www.lenovo.com/us/en/p/accessories-and-software/keyboards-and-mice/keyboards/4y40x49493 https://www.lenovo.com/us/en/p/accessories-and-software/keyb... One job I had issued Dell laptops, and I found that I could put the ThinkPad keyboard right on top of the laptop keyboard. It even left the Dell's touchpad accessible. I do use two-finger touchpad scrolling once in a while. Something I don't like about modern ThinkPad keyboards is that they took away the Menu key and replaced it with a PrtSc (screenshot) key. The Menu key is such a nice way to bring up a context menu based on the current keyboard cursor location (rather than the mouse position). These AutoHotkey rules fix that: ; Remap the PrtSc key: ; PrtSc -> Menu (like an old ThinkPad keyboard) ; Windows+PrtSc -> Screenshot of all monitors ; Windows+Alt+PrtSc -> Screenshot of current window PrintScreen:: AppsKey #PrintScreen:: PrintScreen #!PrintScreen:: Send {Alt Down}{PrintScreen}{Alt Up} This is for Windows, of course. I imagine there must be a way to do something similar on Linux. Another tip for Windows users: if you have a keyboard with a numeric pad that you don't use much, enable MouseKeys in the Windows accessibility settings. This lets you use the numpad as a "keyboard mouse" for precise mouse movement. Or if you have a ThinkPad keyboard, try my JKLmouse program (another AutoHotkey script) which gives you MouseKeys-style mouse control using the IJKL or HJKL keys (and neighboring keys for diagonal movement). It will work on other laptop keyboards too, but you really want physical mouse buttons like a ThinkPad for it to be useful. https://www.jklmouse.com/ https://www.jklmouse.com/ (There is an installer, but I recommend downloading AutoHotkey and the jklmouse.ahk script from GitHub for the most flexibility.)
- forgotmypw17 5y agoI'm one of those people... It's simply about pointing devices hurting my hand, wrist, and arm. Keyboard use does not. Is that so hard to understand? This is what makes it an accessibility issue for me, not a preference.
- adambatkin 5y agoI don't think the argumentative tone was warranted. No one is suggesting that anyone be forced to use a mouse or that accessibility solely using the keyboard be limited in any way. But there is definitely the appearance of an aversion to the mouse in some a older (and things that want to seem old-school) Unix/Linux tools. For _some_ people, the mouse is easier to use, so increases accessibility for _them_. I think the OP was implying that better mouse accessibility could be added on-top of the existing keyboard support.
- eddieh 5y agoDoes your keyboard have a num pad? If so, then you're likely extending your arm to to far, bending your wrist at an odd angle, and relying on your shoulder to bear the weight of your arm when you use your mouse.
- forgotmypw17 5y agoThank you for your suggestion. This is certainly a contributing issue when it is the case that I'm using a keyboard with a numpad and a mouse together, but not the only one. I use many different keyboards and pointing devices (not just mice) and the general trend I described holds true.
- int_19h 5y agoThis is a very good argument for making keyboard one of the devices that can be used for UI interaction. And, indeed, keyboard-navigable UI is a hard accessibility requirement for products that I work on. But then there's this whole subculture in Unix that basically claims that keyboard should be the only device used for interaction. The software that they make makes it deliberately hard, or outright impossible, to use the mouse. And there's a cult following around this, based solely on the notion that it's somehow better in general. (A stark example of this approach is https://www.nongnu.org/ratpoison/ https://www.nongnu.org/ratpoison/, where it's readily obvious from the name and the logo.)
- MarcScott 5y agoI don't really buy the home row argument very much. I get why if you can touch type, that this is important to some extent, but mostly I think that when you start having to find and click on icons, or navigate menus, there's an interrupt in your cognitive flow. Watching the graphic and motion graphics designers at work, they're dominant hand rarely leaves their mouse, while the other hand hammers at shortcut keys to switch tools. They don't care about the home row, just using the fewest actions to complete a task. When I'm using a piece software maybe a few times a month, I'm grateful for icons and menus to help me remember how to do anything. When I use a piece of software on a daily basis, then I learn the shortcuts until it's muscle memory, an keep my hand away from the mouse as much as possible.
- eddieh 5y ago> I wrote this mess On the contrary, the simplicity of the styling and layout is honestly beautiful.
- daptaq 5y agoThank you, means a lot!
- usrbinbash 5y agoIf I may just say thank you for this section: > The denunciation of the mouse usually involves invoking concepts such as the “home row”, or the cumbersome migration of the hand between keyboard and mouse. These might all be well and good, if I were a typist and as such all I did was to type. But this isn’t the case, I ponder and perceive, more than I write. This resonated so much with me :-) I still cannot believe how many people seem to think that the ability to type really fast is important to be a good coder, when we spend the vast majority of our time reading, re-reading and podering code instead of writing it.
- sameerds 5y agoTBH, my first reaction to this comment was "somebody's wrong on the Internet". But luckily, reflection won over reaction, and gave me enough pause to realize what's really happening. I have no idea where this notion of "shunning the mouse" came from. The simple fact is that when you're "in the zone", the mouse gets in the way. After having read and re-read other peoples code, and occasionally also having read half a dozen research papers, you are finally ready to dump all the code that has been brewing in your head. At that point, you are a typist. All the for-loops and switch-cases and function calls are jostling around in your head, and you want to serialize them into source code as fast as you can. When you're doing that, forget the mouse even the arrow keys are too far away. All you want is "do what I mean" with "the thing at point". Everything else just disappears outside your region of focus. So yeah, the mouse is awesome when you're browsing and reading code. But when you're typing code, the home row is the fastest way to get it all out. EDIT: s/two/too/ far away
- ok_dad 5y ago> The simple fact is that when you're "in the zone", the mouse gets in the way. On the other hand, I use the mouse a lot while coding and I would say you’re wrong here, for me. I prefer the ability to not have to think about memorized keys when coding. I go into a state of flow based on what I believe is a combo between visualizing and imagining the code in an object form or something similar, so using a mouse is more natural since I’m still visualizing the mouse menu and the areas I have to click on instead of context switching into the mode where I try to remember keys I often look at the keyboard when typing, too, due to my way of flowing. I personally think it’s because my brain works a bit more visually and my imagination is pretty good, so I am able to map the imaginary code flow in my mind to the text version, so using a mouse to me is like navigating between the two. My mind takes the logic and is able to translate that to mouse movements easily to reach the part of the code I’m thinking about abstractly. Personally, I’ve tried to be a better typist and tried to use emacs or vim, but I always go back to the way I do things and I’ve just decided my brain works a bit differently than many coders. To each their own, I say; so do whatever works for you and I’ll keep using my way.