Hack and / - Dr hjkl and Mr Hack

 in
Arrow keys, schmarrow keys—some of the best programs out there let you move around from the home row just like vim intended it.
Mutt

Here's yet another opportunity for me to add one more reason I love mutt as an e-mail program—it's practically vim's key-binding cousin. In fact, when you first start using mutt, you'll notice that when in doubt, you often can just press the same keys you'd use in vi to do something similar in mutt. The only place you might become confused initially is once you open an e-mail message and read it. By default, the j and k keys switch to the next and previous e-mail message in your folder, even when an e-mail is open, so you do have to teach yourself to use Enter and backspace to scroll through the body of an e-mail message.

Netris

Netris is a great command-line Tetris clone available on most major Linux distributions. One thing that always bugs me about Netris is that although it uses much of the home row to rotate and move shapes in the game, the keys are just slightly off from what you'd expect them to be in vi. Luckily, you can change the key bindings when you start Netris, so for true vi keys execute:

netris -k "hkl j"

Doing the above causes h to move pieces left, l to move them right, k to rotate them, j to make a piece drop faster and the spacebar to drop a piece to the bottom immediately. My Netris score was much improved once I could play it like vi.

Firefox

Unfortunately, Firefox doesn't use vi key bindings by default (although Google Reader does), but it's not surprising that this can be fixed with a Firefox plugin. The Vimperator plugin (vimperator.org/trac/wiki/Vimperator) is extensive enough to deserve a column of its own (in fact, send me an e-mail at lj@greenfly.net, if you'd be interested in that). Essentially, once the plugin is installed, your entire Firefox session turns into a modal vi-style session. Not only can you use hjkl, g, G and so forth to navigate pages, but also when you are in a text field, Vimperator actually moves into insert mode! You even can record and play back macros just like in vim. Vimperator adds a bunch of other features to make keyboard-only Web browsing not only possible, but also preferable to the mouse. If you are a vim lover and haven't installed Vimperator yet, I highly recommend it.

As you dig around both command-line and GUI programs, you'll find that a surprising number of them at least support hjkl, if not more-extensive vi key bindings. I've listed only some of my favorites here, but the next time you open a program, press j a few times—you just might be surprised when the program scrolls down.

Kyle Rankin is a Senior Systems Administrator in the San Francisco Bay Area and the author of a number of books, including Knoppix Hacks and Ubuntu Hacks for O'Reilly Media. He is currently the president of the North Bay Linux Users' Group.

______________________

Kyle Rankin is a systems architect; and the author of DevOps Troubleshooting, The Official Ubuntu Server Book, Knoppix Hacks, Knoppix Pocket Reference, Linux Multimedia Hacks, and Ubuntu Hacks.

White Paper
Fabric-Based Computing Enables Optimized Hyperscale Data Centers

Today’s modular x86 servers are compute-centric, designed as a least common denominator to support a wide range of IT workloads. Those generic, virtualized IT workloads have much different resource optimization requirements than hyperscale and cloud applications. They have resulted in a “one size fits all” enterprise IT architecture that is not optimized for a specific set of IT workloads, and especially not emerging hyperscale workloads, such as web applications, big data, and object storage. In this report, you will learn how shifting the focus from traditional compute-centric IT architectures to an innovative disaggregated fabric-based architecture can optimize and scale your data center.

Learn More

Sponsored by AMD

White Paper
Red Hat White Paper: Using an Open Source Framework to Catch the Bad Guy

Built-in forensics, incident response, and security with Red Hat Enterprise Linux 6

Every security policy provides guidance and requirements for ensuring adequate protection of information and data, as well as high-level technical and administrative security requirements for a system in a given environment. Traditionally, providing security for a system focuses on the confidentiality of the information on it. However, protecting the data integrity and system and data availability is just as important. For example, when processing United States intelligence information, there are three attributes that require protection: confidentiality, integrity, and availability.

Learn more about catching the bad guy in this free white paper.

Learn More

Sponsored by DLT Solutions