6 ms·
Even if the mouse were quicker on average for long jumps, the moving of the hand from mouse to keyboard feels like more of a combo breaker, more distracting. Sp
by ths 14y ago
Even if the mouse were quicker on average for long jumps, the moving of the hand from mouse to keyboard feels like more of a combo breaker, more distracting. Speed is very important, but equally important is for the editing experience to have a low attention footprint to leave more space for the train of thought behind the changes being made.
- SomeCallMeTim 14y agoAs someone who uses a keyboard 98% of the time, but who uses a GUI editor and the mouse when it makes sense, I'd say the mouse is useful for several things, and what it IS useful for WILL be faster than what someone can do with a keyboard. The clear win is using a powerful GUI-based editor that has tons of keyboard commands. Bonus points for being on Windows or Linux (i.e., not Mac OS) so you can navigate/BROWSE the menus from the keyboard. I don't know Sublime myself; I'll have to check it out. For some reason I thought it was Mac-only, but I see that it's cross-platform. My editor-of-choice for years has been Visual Slickedit, but I'm not married to it. I just haven't found anything half as good in years of searching. And I keep trying other editors, too, since there are things I find imperfect about it (the scripting language is usable, for instance, but has it's own syntax and quirks).
- jussij 14y ago> there are things I find imperfect about it (the scripting language is usable, for instance, but has it's own syntax and quirks). In terms of scriptable editors, the Zeus editor is scriptable in Lua, Python, TCL or JavaScript, but it is native to Windows: http://www.zeusedit.com/ http://www.zeusedit.com/ Jussi Jumppanen Author: Zeus IDE
- SomeCallMeTim 14y agoTried Zeus probably 4 years ago. I really have tried a lot of options, but I haven't been back to Zeus after the first try. I can't remember any specifics of what turned me away from it, though the thing that SlickEdit does better than almost everyone else is tagging. I use boost::shared_ptr (and now the C++11 version) a LOT, and so completion is useless in anything that doesn't know how to complete a template class. ctags and its ilk, last time I checked, were worthless in this regard, and I have a vague sense that Zeus relied on those for tagging? Yes, looking at the web site, you're using ctags. Will "shared_ptr<Foo> foo; foo->" autocomplete for members of Foo? SlickEdit also Just Works with tagging. You put the files into a project, and everything is instantly cross-referenced. "Where is Foo::init() used? No, I don't want Blah::init(), just Foo::init()." SlickEdit, at least SOME of the time, can get that right, and with no configuration of external tools. Aside from that, I think one of the greatest drawbacks of Slickedit is that it isn't open source, so when things go wrong I can't just fix it. Slickedit IS cross-platform, at least, with native Linux and Mac OS versions, and that ALSO is important to me. Lua is the Right Answer for scripting, IMO. The rest of the options are actually a liability for me, since it means that if I'm editing someone else's script, I might have to deal with Python, TCL, or JavaScript. I'm rambling now. I feel like I have an "Editor Manifesto" in my head that wants to get out, but I don't have time right now to do it justice. I'll take another look at Zeus when I get a chance, just as I'll take another look at Sublime and the rest. It's been years since I've looked, so I'll take another glance at it.
- BSousa 14y agoJust so you know, in Mac OS you can navigate the menu with keyboard. Try Ctrl+F2 to focus on the menu and then arrow keys
- SilasX 14y agoYou mean Fn+Ctrl+F2, which requires repositioning both my hands, thus defeating the purpose.
- BSousa 14y agoI didn't say it was easy, just possible :P In any case, I prefer to use the F keys as standard functions keys.
- SomeCallMeTim 14y agoI'll have to give that a try. I've had countless people tell me it COULD be done, but when I drilled down what they were really telling me was that there were keyboard shortcuts. If you're telling me I can hit Ctrl-F2, then that's at least a step in the right direction. Thing is, it's several steps behind where I would be on Windows (or most Linux desktops), because I can just hit Alt-F and it opens the file menu, or Alt-T for the tools menu, or what-have-you. Still, it's better than nothing. Thanks.
- BSousa 14y agoI don't use the menu much so I tend to use the trackpad for that. You could also try KeyCue [http://www.ergonis.com/products/keycue/ http://www.ergonis.com/products/keycue/ ]. You press the Command key for a while and all the options are shown in a popup.
- SomeCallMeTim 14y agoNice! I'll check that out the next time I'm forced to work on a Mac (it happens when I do any iOS development...oh how I hate Apple...). KeyCue is a step in the right direction, UI-wise, regardless.
- jamesjporter 14y agoHis point about touchpads is spot on though. I often find myself jumping around by clicking when I code with my laptop and no peripherals (there's no "combo breaker" since my hands are sitter so close to the trackpad anyway), but when I get home and plug in my mouse and external keyboard, it becomes much more of a hassle to click and I switch to a more keyboard-centric workflow.
- smalltalk 14y agoIn fact, it's the opposite. Using keyboard commands for movement is more distracting (and measurably slower) than using the mouse. It is precisely that the mouse is less distracting that tricks the mind into thinking the keyboard is faster. See AskTog: http://www.asktog.com/TOI/toi06KeyboardVMouse1.html http://www.asktog.com/TOI/toi06KeyboardVMouse1.html http://www.asktog.com/TOI/toi22KeyboardVMouse2.html http://www.asktog.com/TOI/toi22KeyboardVMouse2.html http://www.asktog.com/SunWorldColumns/S02KeyboardVMouse3.html http://www.asktog.com/SunWorldColumns/S02KeyboardVMouse3.htm... [If you think this is incorrect, providing links to scientific evidence is more productive than downvoting or stating that your own subjective experience is different.]
- jcoder 14y agoWe can each run that experiment 100 times in a few minutes. I did, keyboard movements were faster. https://yourlogicalfallacyis.com/appeal-to-authority https://yourlogicalfallacyis.com/appeal-to-authority EDIT: not sure why the downvotes—should I have said "faster FOR ME"? Anyways, hi haters.
- smalltalk 14y agoIt's not an appeal to authority: that would be if I were appealing to the authority for the authority's sake; but I am appealing to scientific research presented by the authority. I'm fairly certain you'd agree that appealing to scientific evidence is valid, as you've tried to present it to me as part of your argument. I think the downvotes are because you running some kind of "experiment" on your own is different from a human interface researcher's actual research.
- jcoder 14y agoFair point, however the choice of editor/editing mode is a personal one. Are my personal results of my personal experiment not the only ones that matter to my personal choice?
- npsimons 14y agoYou're not reading some of the most cogent arguments here: most vim/Emacs/etc power users couldn't even tell you what keyboard command to use precisely because they don't think about it. It's reflex, muscle memory, completely out of mind so that it doesn't get in the way of getting code from your mind to the machine. Maybe it's that way for some mousers as well, but given that code is text, it's kind of doubtful. There's also the fact that if you have to break your concentration to context switch to the mouse, you will lose your flow. Try coding in an editor, any editor, for 8, 9, 12 hours a day and see if you don't start forgetting the keyboard shortcuts because they become reflexive. Vi and Emacs are just hyperdesigned to enhance this effect. EDIT: And I don't care that you link to Bruce Tognazzini, a GUI designer, when millennia of musicians have known that they don't think about what combinations of fingers they press to get an F#, they just play a glissando with an F# in the middle.
- Shorel 14y agoI tend to memorize the spatial location of keys (end, home, parenthesis, cursor keys) and of course, can touch type. Going back from using the mouse to touch typing is so immediate than I basically never notice it. I think your last sentence supports Sublime Text even more than it supports Vi(m).