
I have finally seen the Emacs light - globalrev
Just got to say this to all you netbeaners, eclipsers etc out there.<p>Today i finally groked what makes Emacs so good. I havent groked Emacs itself yet but all the IDEs i have tried have disappointed, they are big, slow and ugly and hard to navigate easily and there is a lot fo unnecessary clutter which you sometimes can and sometimes cannot take away.<p>Emacs has a bit of a barrier of entry but as soon as you learn some keyboard-kung-fu it will make you very productive.<p>Jump between buffers, run an interpreter, search your code,   etc.<p>So powerful and so elegant. Emacs captures the essence of good software.
======
kirubakaran
' _Guilty Pleasures_ : I sometimes edit my .emacs file in vim.'

<http://mark.nirv.net/post/6694167/guilty-pleasures>

~~~
mnemonicsloth
One word: nethack.

I use Emacs for everything (including this comment), but every so often I find
myself craving a fix of hjkl;

~~~
vegai
<http://www.nongnu.org/nethack-el/>

------
mike_organon
I learned emacs not too long ago, and I was amazed that the better principles
were established so much earlier and abandoned for new tools. One thing about
its philosophy I think makes it better is the consistency of everything being
buffers, commands, and keystrokes. Eclipse has multiple kinds of buffers,
views, panels, dialogs, and keys, menus, toolbars, docks, etc., that aren't
interchangeable. It reminds me of the syntax philosophies of Lisp and Java -
the tools follow the languages.

~~~
j2d2
I use eclipse for Java still. Our project has something like 100,000 source
files. Memorizing this lay-out is hard! There isn't much sense to it. Having
the open-type shortcut is a life-saver. So is the type hierarchy browser.

Emacs is great for pretty much everything else though!

~~~
msg
Here's something like what I do at work. Syntax not quite correct, I'm sure.
It's a C++ project, but you can probably adapt it to your situation. Making
the TAGS file takes a while every now and then, so you might want to run it as
a cron job.

shell:

    
    
       find rootdir1 rootdir2 ... rootdirN ".*\.[ch][ch]?" | etags > /convenient/dir/TAGS
    

.emacs:

    
    
       (visit-tags-table "/convenient/dir/TAGS")
    

need a class or function in emacs:

    
    
       (tags-apropos _regexp_)

------
dusklight
Try IntelliJ sometime (for Java at least)

I love emacs and the philosophy of emacs but IntelliJ just makes a lot more of
the pain from Java go away. Ive tried but the emacs-equivalent tools like
Semantic are just nowhere near as mature as the IntelliJ equivalents. As far
as code generation and refactoring tools go, IntelliJ can't be beat.

------
pavelludiq
Im a Vim guy, but emacs is fine too. I might learn emacs some day, im not a
fan of this religious thing or what ever the emacsVSvim guys try to
accomplish.

~~~
j2d2
I'm not a fan of the religion either. If you develop large projects, you'll
probably find the power of emacs to be a huge time saver. Instead of having 4
terminals open, each with a vim session (something I typically see), you can
just have 4 windows open. Tramp is also really slick for easily editing remote
files. Having a python interpreter in running in conjunction with your editor
is slick too. Probably worth fighting with for a few days to _get it_. If you
still don't like it, now you know why!

Just sayin.

~~~
jauco
well, the thing with these comparisons between vim and emacs features is that
they mostly come down to "do you know _how to do_ feature X" because both
emacs and vim (vim, not vi) will surely _have_ feature X somewhere.

In this case, vim allows tabs and split windows and the Tramp functionality is
built in. I'm not sure about the python terminal, but then again, I've never
felt the need.

~~~
j2d2
Fair points. I didn't know vim had tramp functionality. What's it called?

~~~
jauco
<http://www.vim.org/htmldoc/pi_netrw.html>

------
travisjeffery
TextMate is one of the most over-hyped anythings, ever. The only thing that
makes TextMate different from NotePad is the Bundle. The editor itself is weak
as shit, and even the Bundles don't add anything that can't already be found
in an extension for Emacs (and Vim, but not as well done as in Emacs).

~~~
mechanical_fish
_The only thing that makes TextMate different from NotePad is the Bundle..._

Even if this were true -- which it isn't -- the ability to write, distribute,
and install open-source extensions to the editor is a _hugely important_
feature. It is, after all, the central feature of emacs itself.

------
cstejerean
after trying to learn Emacs for a couple of years I had a similar experience
once I learned enough of the basics. after I started to master Emacs I could
no longer go back to any other editor. I just wished I would have learned
Emacs sooner instead of looking for excuses for 2 years.

~~~
ajross
Yup, I did the same thing about 14 years ago. I was steadfastly using pico
(yeah, yeah, don't ask) until I finally sat down and forced myself to spend a
week in emacs, and finally "got it".

And I did it all again a few years later when (no longer using terminals or
other people's computers) I finally bothered to map the control key to the
left of "A", meta to underneath the '/' (sadly not always consistent on PC
keyboards), stopped using the non-alpha keys, and realized how nice the
"weird" keybindings always were.

------
swombat
How about TextMate? It's almost as good as Emacs from a power point of view,
but nowhere near as painful to learn, and looks a treat too!

~~~
jshen
try making the project drawer work with your version control system. Emacs is
more extensible, but has a steeper learning curve.

~~~
jacobolus
The project drawer works with SVN if you install a plugin. But really, version
control integration is on the way in the next version; the current project
drawer is not much changed from the drawer which shipped in TM 1.0, which was
created over the course of 4 months. Emacs has had decades of development.
TextMate 2’s vcs integration, assuming the implementation lives up to the
plans, will be quite amazing.

~~~
mnemonicsloth
_Parts of TextMate [still have an effective age under 4 months]. Emacs has had
decades of development._

Although your tone suggests you want to use this as a justification for
sticking with TM, it sounds a point in favor of Emacs to me.

~~~
swombat
Not necessarily... emacs has decades' worth of features that can't be removed
anymore, because of some obscure usage that only 0.1% of the users bother
with. This results in bloat and confusion for users who don't use those
features.

~~~
silentbicycle
The vast majority of said features are in modules that aren't loaded by
default. Not all of them, but most.

In other words, they are _removed_ by default.

------
huherto
I started using vi in '89 to program in C/C++.

In 95-97, I used emacs mostly to program in perl. Then I discovered vim, it
seemed as powerful and I used it until 2002 when I disovered Jedit.

It was around 2005, that I started using Eclipse. I think I was the last kid
in the block to use it and it is a big help, I love the refactoring
functionality.

------
jrsims
Any vimmers out there who would stay with emacs after giving it a fair shake?
Any converts from emacs to vim? I want to hear your story. Thanks.

~~~
gravity
I'm in the process of switching from vim to emacs right now. It's frustrating,
although viper-mode takes a lot of the pain away, and to be honest I find it a
really nice combination to have the vi editing modality readily available
within the powerful framework of emacs. Remapping caps lock to Control has
helped enormously.

The most notable thing is that emacs encourages you to live in it much more
than vim. With vim, I would navigate around in the shell, open up a file in
vim, edit, close, repeat. With emacs I'm finding that I spend more time just
switching buffers instead of running back to the shell because emacs doesn't
simply quit when I kill all my open files. There's always more buffers, so the
app stays open and I tend to remain there.

I'm still in the process of getting up to speed with basic editing things,
although I've found that the way it manages buffers and what it calls windows
(what the rest of the world calls frames these days) is quite easy and quick
to use, and I found myself able to navigate around in emacs fairly quickly.
All in all, I'm not 100% sure I'll stick with it, but I'm happy so far and I
know that I'm still getting over the hump to where I'll be truly productive
with it.

~~~
antiform
If you are anything like me, that is, someone who loves the speed and "feel"
of vim, but also enjoys the buffers of emacs. You might want to check out vile
(vi like emacs). [<http://invisible-island.net/vile/>]

------
icco
I've used VIM pretty consistently for the past two years, and I love it. The
only other editor I use is Dreamweaver, and that's such a different beast it's
not even funny.

I am worried though if someone is using a directory structure they can't
memorize. Isn't the point of a directory structure to keep things organized in
a reasonable fashion?

------
Kaizyn
If you want a more modern tool in the same class as Emacs and Vim, take a look
at Sublime Text: <http://www.sublimetext.com/> Unfortunately, it's Windows
only for now and the author is charging for it which is probably a deal
breaker for now.

~~~
urlwolf
sublimetext is the only application that can make my windows box crash to the
point that I have to reboot. I tried it at serveral version points. Reported
to the author, he couldn't find the problem.

And it has exactly one (1) feature that the others don't: the bird-view of
your code.

Stay away.

------
dkasper
I learned Emacs cold turkey this summer and am loving it. The only problem is
I use Visual Studio at work and the Emacs key bindings for it are not so good.
So I end up deleting a line every time I try to save my files with ctrl-x
ctrl-s :-)

~~~
jcl
Really? I admit I don't normally use the Emacs bindings in Visual Studio
myself, but I just tried them and ctrl-x ctrl-s saves the file just fine for
me. (This is using Visual Studio 2005, under the Tools | Customize menu
option, Keyboard... button, Emacs keyboard mapping scheme.)

~~~
dkasper
No no, I mean that I don't use the Emacs bindings because other things don't
work the way I want, like tabbing. So when I'm using the c# bindings I find
myself running strange commands accidentally.

