Posts Tagged ‘Good Stuff’

An Emacs Diff (Ediff) tutorial

December 12, 2008

Since Jitesh is currently writing an extremely interesting series of posts on diff and patch (1,2), I decided to pitch in with my contribution. Ediff is one of those things which make Emacs so much more than just an editor. It is an extremely convenient way of viewing differences in files / buffers / directories.. You get the point.

Following the teaching tradition I prefer, lets get our hands down and dirty, and figure out the theory along the way:

Step 1:
Write two test files for our purposes.

Step 2: (more…)


Emacs Tip of the Day # Are you a fan of Tab Completion? #

October 16, 2008

Tab Completion is a great, great feature. It saves me a lot of time and effort, in bash as well as in the Emacs minibuffer.
I don’t know if you are aware of this, but Emacs also comes with a built-in feature called dabbrev-expand (M-/ in the minibuffer). Here is what it does. If you type out the first few letters of your word and hit the key-combo, it auto-completes the word after searching the current buffer and the other open buffers for completion. You can cycle through all possible completions by repeatedly reinvoking the function. This is very, very cool. The only problem is that M-/ is not conducive to speed.
So can we do something super cool like re-bind the function to the TAB key? Without destroying other tab related functions like indentation? Turns out we can!

(global-set-key [(tab)] ‘smart-tab)
(defun smart-tab ()
“This smart tab is minibuffer compliant: it acts as usual in
the minibuffer. Else, if mark is active, indents region. Else if
point is at the end of a symbol, expands it. Else indents the
current line.”
(if (minibufferp)
(unless (minibuffer-complete)
(dabbrev-expand nil))
(if mark-active
(indent-region (region-beginning)
(if (looking-at “\\_>”)
(dabbrev-expand nil)

Add this to your .emacs file, and start using TAB in everything you type. You will find that your typing speed triples!


Fun is User-Defined

October 12, 2008

My good friend Jitesh has finally decided to pen a separate techie blog. Seeing as he is a genius, this promises to be awesome. So people, jump straight to You are bound to find loads of interesting, helpful information there.

*– end of plug–* 😀

P.S He sent out a mail to all of us saying that he’s writing a new blog, and mentioned a few reasons behind the initiative. At the end of it he wrote, “After all, fun is user-defined”. I couldn’t resist using such a superb quote!

Pimp up your Windows Desktop… for uber coolness and maximum real estate

September 4, 2008

Now that I have started working, I finally realize the meaning of Desktop Real Estate. I find myself with so many open windows, simply navigating through them becomes a pain. So here is a list of some of the uber coolness I have come across:

1) Yod’m 3D
[Photo from: ]

Nothing says desktop space like 4 desktops! Using Yod’m 3D (Yet Another Desktop Manager), I can now organize my windows into categories like Work, Social Networking, Inbox.. and enjoy 4 times the screen space I originally had. Hurry up and get it though, because the project has been renamed DeskSpace now, and you have to pay for the newer version. This version, which is free, is fast disappearing off the net.

2) Launchy


Launchy is, as the name suggests, a launcher with which you can launch just about anything on the system. Using Launchy, one can eliminate absolutely every icon from the desktop, leaving it a cleaner, more beautiful place. Launchy is essentially a cool Run command and indexing tool, and therefore I have even done away with the Start Menu button! More space on the Taskbar!

3) AutoHotKey

[My Desktop!]

AutoHotKey is probably the biggest and best find I have made on Windows. Here’s what the home-page has to say about it:

AutoHotkey is a free, open-source utility for Windows. With it, you can:

  • Automate almost anything by sending keystrokes and mouse clicks. You can write a mouse or keyboard macro by hand or use the macro recorder.
  • Create hotkeys for keyboard, joystick, and mouse. Virtually any key, button, or combination can become a hotkey.
  • Expand abbreviations as you type them. For example, typing “btw” can automatically produce “by the way”.
  • Create custom data-entry forms, user interfaces, and menu bars.
  • Remap keys and buttons on your keyboard, joystick, and mouse.
  • Respond to signals from hand-held remote controls via the WinLIRC client script.
  • Run existing AutoIt v2 scripts and enhance them with new capabilities.
  • Convert any script into an EXE file that can be run on computers that don’t have AutoHotkey installed.

Not only can you define shortcuts for your favorite tasks, but it also has it’s own scripting support! Pure genius!

4) Samurize


With Samurize, you can embed multiple things (Text Files, Scripts, Console Programs, System info, etc) directly into your desktop. Since I generally use text files for organizational purposes, I find Samurize really handy. It is something like the Linux tool Conky (1, 2), but just like with Conky, I suspect I have barely scratched the surface of what Samurize can do.

[My Desktop!]

5) Outlook on the Desktop

[My Desktop!]

And finally, with Outlook on the Desktop, I have my calendar always in front of my eyes. May not seem a big deal, but it is a life-saver.

So there, that is how I’ve modded my Windows desktop. If you have any other clever suggestions, do send them in so that I can benefit from them *catty suggestions like “format c:\” not expected!*

[hat-tip] Various Articles from

What kind of browser could exist if you started from scratch….

September 3, 2008

and built on the best elements out there?

There is already enough buzz on the net without me adding my two cents. All I can say is, so far, I love it!

Check out the comic book, which explains the design, inspiration, and under-the-hood stuff quite well!

Finally, if you’re the geeky type (which you would have to be to a)visit this blog and b)read through the entire comic), don’t miss this video.

P.S. Did you notice? I wrote the entire post without mentioning the product!