views:

1234

answers:

15

I've been slowly using my mouse less and less over the past few years. As a developer who prefers the command line over IDE bloat: the less I move from my keyboard, the more productive I tend to be.

So, a few days ago, I decided to do an experiment and unplug my mouse for the entire day. I definitely could have prepared myself better, but it ended up being less difficult than imagined. I also found some great tools in the process.

My question to you is: How do you get by without a mouse? Share your tips and tricks!


My tips for ditching the rodent:

+5  A: 

I can do most things using the keyboard even in windows. windows key + E (explorer), windows key + R (run) are shortcuts I use a lot.

On linux, I am much the same way. My shortcut for a terminal emulator is ctrl+space and use that to start apps like: ctrl+space firefox& ctrl+d. I guess you could use gnome-do for that, too.

I have found the ttys on most linuxen will let you switch back and forth using alt+left/right arrows, instead of having to do the ctrl+alt+function thing. That mouseless browsing plugin looks interesting, thank you. Have you seem Vimperator?

Aram Verstegen
Wow - Vimperator is slick! Cool suggestion.
antik
A: 

I used the mouse the least while using *box window managers and found my self to be more productive in doing so. In fluxbox, every application that I commonly used (which wasn't a great many) was bound to hotkeys (~/.fluxbox/keys) as mentioned. For my terminals, I had several hotkeys for displaying different sized terminals in different locations, which is important in my opinion. Mouse-less computer use in linux will rely heavily upon your terminal of choice, getting it just the way you like it without ever having to touch the mouse saves a lot of time.

roamn
A: 

If you are running gnome, there's simple way to get some speedup to whatever you do. Put keyboard shortcuts for firefox and terminal.

I'm also considering to hack xterm opening as my default terminal instead of gnome-terminal because xterm is simply more responsive than gnome-terminal.

I also do about everything except drawing with terminal because it's more convenient if I happen to remember the command.

I think your known terminal tools and ability to use terminal pretty much determines how well you can do without mouse.

Cheery
+1  A: 

Real Windows keyboard maniacs should try AutoHotKey at http://www.autohotkey.com

anon
It's sometimes hard to find keyboard mappings which you've not used somewhere else already (vim, emacs, screen, terminal .... ). Otherwise, a very nice app.
ldigas
+1  A: 

I think you should ask Richard Stallman! A few years ago some friends saw him working, doing everything in emacs (But then, he developed emacs himself).

There are lots and lots of applications running in emacs that just require the keyboard to operate it.

Just learn a lot of keyboard shortcuts...

Roalt
A: 

As a developer, I have no problem going through the day without the rodent. As anyone else, the missing mouse proves to be a problem. Browsing the net is hard without the mouse (regardless the addonns, it is not natural, whatever people say). Any CAD/CAM usage - forget it, ain't gonna happen. For quite a few windows applications, the mouse is mandatory, meaning, we can go without it, but that's the "invalid" approach.

ldigas
CAD predated mice. Several CAD packages still in use started out as command-based applications with mouse use hacked in at a later date. BRLCAD sure feels like one of them...
Drew Wagner
@Drew Wagner - I agree. Hell, I even remember still using acad 9 (or 8, there is some doubt there) which was iconless, mostly keyboard oriented. Not sure whether it supported mice, but it wasn't depending on them, that's for sure. Came on 2 diskettes. BUT, that is past, and totally irrelevant in this discussion. Nowadays, CAD packages don't function without a mouse, the industry ones at least (This is not to be taken out of context, but BRLCAD is, although, no doubt a nice experiment, an irrelevant name on the CAD market).
ldigas
@Idigas I agree :) CAD design completely from the keyboard probably doesn't really happen anymore. I've made a few parts generated from pure Rhinoscript, but even then, I was using the mouse to manipulate the output for viewing purposes. And I'm a hobbyist, so I haven't invested the years it takes to get competent with the big commercial packages. I still have some emotional scars from ProE's GUI during freshman-mechanical-engineer-hazing-class-101 circa 1998.
Drew Wagner
+1  A: 

Enso is an excellent launcher / application controller.

stephendl
I just wanted to say Thanks for this tip. I'd vote up 10x if possible.Enso is awesome. Too bad the beta crashes constantly. :(
42
A: 

noticed you already said half the stuff i mentioned.

i would suggest you take a look at vimperator surfkeys or hit a hint though.

Reza Jelveh
A: 
Elijah
A: 

Try installing a tiling window manager in linux eg. awesome, dwm etc. then not only can you have all your open windows visible at the same time but can switch between them easily, and the run command is directly in the status bar which makes it easy to use

They were basically designed from the ground up to remove the need for the mouse

Simon Walker
+7  A: 

In this post, I'm referring to a Linux based programmer. I can't offer any advice about any other platform, since I simply have no experience.

Going about your work without the mouse is (except for some special circumstances) both faster, and fun. I've spent a lot of time on going rodent-free, here are some of the things I use

  • Colemak. This is probably the most important, along with a good keyboard. If you're going to be spending a lot of time at the keyboard, you'll want to change to a keyboard layout that is actually designed in order to increase speed and reduce RSI. The alternative is Dvorak, and I've got nothing against it - I just like Colemak.
  • StumpWM. I used to use Ratpoison, which had similar goals, but has been superceded by Stump in almost every way. Moving through windows is a breeze with StumpWM. Fully customizable, and even has provisions to play nice with programs that are not so nice themselves.
  • A good terminal. I use urxvt, but it's important that you choose one, instead of having one chosen for you. Get to know what your terminal can do, and use it well. eg. I just found out that urxvt can use perl to search in the terminal session, no longer do I have run a command again and redirect to a file so I can grep through it.
  • A good set of command line programs. Of course this is very subjective, and I don't want to start editor wars and the like. But choose what you want to use, and learn how to use it. I keep finding new tools everyday, and occasionally write my own.

As a caveat, the only program I use that is not exactly built for keyboard use, is my browser, Opera. However, it is in fact pretty easy to use with the keyboard, using its spatial navigation and abundance of keyboard shortcuts. I've tried Conkeror and Vimperator, maybe they went overboard for me. I'm no graphics designer, so GIMP doesn't give me too much trouble either.

Having a good setup for keyboard-only use takes a lot of time and effort to get right, but it's well worth the effort.

sykora
Colemak is great! I've been playing with it for a few days. Can't break 20WPM yet, but I like how little I move off the home row compared to standard US/QWERTY. And I'll have to give ratpoison and stumpwm a try. Thanks
drfloob
Colemak _is_ great. I went cold-turkey when starting out, and for a while I was hovering at around 20WPM in both layouts - my QWERTY skills having gotten rather bad. But now, I'm a happy Colemak user, typing at ~80WPM.
sykora
A: 

xclip - http://sourceforge.net/projects/xclip

For managing the X11 clipboard.

+3  A: 

There are a lot of options for most needs, on linux systems at least - I use XMonad, vimperator, and dmenu (and a ton of terminal utilities, of course).

I really recommend a tiling window manager with easy configuration - XMonad lets me tie keys to terminal commands and programs.

Vimperator.. well, if you're a vim-user, vimperator feels pretty natural. If you gave it a try a few years ago, try it again; it's gained a TON of polish. The 'hints' system of navigating links is very clean, and configuration and key binding is done in a .vimrc style config file.

A: 

On Windows, I use an AutoHotKey script to give me vim-like access to the arrow keys in places where I can't use vim or vim-emulation. alt-h/j/k/l are mapped to the arrow keys. I also have mappings that combine with ctrl/shift, so I can do text selection, etc. without moving my hand to the arrow keys. There are a few places this breaks down, like in context menus, but generally I'm impressed by how well it works.

Here's a portion of my script (for j, arrow-down). The other keys are similar.

;Vim-like mappings for the arrow keys

;==========================
; Arrow keys
;==========================

; <A-j> is arrow-down 
$!J::
    Send, {Down}
return
...

;==========================
; C-Arrow keys
;==========================

; <C-A-j> is ctrl-down
$^!J::
    Send, ^{Down}
return
...

;==========================
; S-Arrow Keys
;==========================

; <S-A-j> is shift-down
$+!J::
    Send, +{Down}
return
...

;==========================
; C-S-Arrow Key
;==========================

; <C-S-A-j> is ctrl-shift-down
$+^!J::
    Send, +^{Down}
return
...
Gabe Moothart
A: 

An orthodox file manager can dramatically reduce keystrokes needed for file management. Midnight Commander is the classic, but I'm really liking Krusader. Here's a round-up:

http://www.techradar.com/news/software/applications/6-best-orthodox-file-managers-for-linux-605506

If you want to learn what obsession is, and what good web design is not, this is the guy who coined the term: http://www.softpanorama.org/OFM/index.shtml

There are so many applications with wide ranging and overlapping functionality for linux, and so many ways to customize them and glue them together, there's really no good answer your question. Linux pretty much sucks until you spend about a year putting together exactly what you need, at which point it becomes utterly irreplaceable.

Drew Wagner