People who just don't get it often make jokes about those of
us who use Emacs for everything: editing files, mail,
news, shell, etc. But here's a hidden benefit of using one
tool for all of these functions: consolidation means that
intelligent tools can be written that span all of these
various activities much more easily than otherwise.
Remembrance Agent is one such tool. It's an Emacs/XEmacs
program that constantly monitors what you do, building indexes
of your files, and then recalling relevant things you've done
while you work. So if you're writing, say, Python code and
some snippets of it are similar to a piece of mail that RA say
you read a year ago, it will bring that mail back up to you.
It's like a memory agent for everything you do in Emacs.
I used to run RA but it was a bit buggy so I gave it up.
There's a new version now, and I'm hopeful that it will be
more stable.
Check it out.