It's been 30 years, and I still haven't found anything better than EMACS.
Dear older-fart-than-me,
How's the carpal tunnel these days? Mine's fine, thanks for asking.
Ive been using vi since 1988 (and programming since 1981) and Ive never had carpal tunnel or vision problems. For me, moving from keyboard to mouse constantly is less efficient that staying at the keyboard, so Ive never met an IDE I liked.
Ive been using vi since 1988 (and programming since 1981) and Ive never had carpal tunnel or vision problems.
/me passes Eno a clue
Me neither, it was a joke. My first programming was in Basic on an Apple IIe in '84. I honestly don't recall what editor I used back then.
For me, moving from keyboard to mouse constantly is less efficient that staying at the keyboard, so Ive never met an IDE I liked.
Me neither again, especially all these horribly slow ones written in Java. I hope to <insert favorite diety here> I never get whatever sickness it is that makes people want to code in Java, or worse use a Java IDE to do it. That's just yucky.
Probably around the time I had moved on to coding 6502 assembly language
(no joke
Most micros had built-in editors back then. The "nice" ones had automatic line numbering, paged output, etc if you were lucky.
And you try telling that to the kids today and they won't believe you!
I've long been a fan of emacs, but Textmate is the first thing that's
lead me away from emacs. Funny, that.
-j
I use netbeans - very happy with it. Am stuck using Windows and can't stand 'e', even though I did buy a licence for it (has no bookmarks so going from one part of a file to another means you lose your thread of thought). Netbeans does sit on top of a Java VM but has lots of shortcut keys and 90% of the TextMate subsitution macros. It can be a little flakey but so is 'e' so so what?
I use VIM for stuff like column editing of data and proper regexp substitution.
For me TextMate is a text-based word processing tool with a lot of stuff bolted on, but I'm looking at it through 'e' shaped glasses so that's probably unfair.
If you can't split the screen for the same file or put two files side by side or be able to do diffs from your sourcecode control system it's not a proper IDE, sorry, not IMHO.
I also use cygwin for X terminals and shell programming (usually using VIM to edit).
I read a few pages and I still haven't seen any links to editor customization. For example, I would like to implement acronym-based code completion. I want to type 'aa control-;' and have the editor replace that text with the nearest matching identifier, like 'attr_accessor'. I can do that in Emacs, and it saves me thousands of keystrokes per day. How could I do that with NetBeans?
Another example: underscore is hard to reach. So I hacked EMACS in Ruby mode to insert underscore when I type a semicolon. To get an actual semicolon, I press semicolon twice. That took about one minute to write and test in Emacs LISP. How do I do that in NetBeans?
Without that sort of easy customization, I'm just not interested.
I use a Kinesis Classic ergonomic keyboard, which has two big buttons conveniently located under each thumb. It's programmable, so I remapped the buttons under the left thumb to Control and Alt. This takes all the strain out of typing control and alt keyboard shortcuts.
I have the most problem with the mouse, and this leads me to reject editors that don't allow me to create keyboard shortcuts for almost everything.
Totally agree - the keyboard is the most efficient input device.
I run the custom modded gedit.
Netbeans: ^K finds the nearest completion across all buffers, Shift-^K goes back. ^B takes you to the definition of the function or variable you are sitting on. Vim: ^P and ^N.
Completion - you can set up completions in Netbeans - press tab and it completes or does a whole macro for you. Also does the Java IDE thing of trying to guess what function you want, plus in-line help ... You'd have to write all that yourself in emacs - why bother? Vim: look for the help on abbrev ...
Keyboard macros to put in underscore - any editor that supports macros ...
You don't have to write a function to do the word completion in emacs - it's a standard function. Personally don't find emacs that easy to customise. Got up to speed by working throught the O'Reilly book but couldn't find a decent tutorial on e-lisp. Things like colorising text are really easy in VIM and Netbeans - Emacs buries it somewhere and I couldn't get it working the way I wanted - too clever for its own good. Then stopped using it for a while and forgot all of the commands apart from ^X^C. I was writing a lot of PL/SQL and really liked being able to run SQL*Plus in a subwindow.
It's all a question of are you willing to invest the energy to get as good with Netbeans are you are with Emacs - probably not. But the customisation is *much* easier than with Emacs for a newbie, and it works as advertised.
I always use RoRED it is good for me
One thing that I *really* don't like about NetBeans is the use of two
spaces for indentation. I have all of my indentation engines set to
4 space tabs, which sort of works. When I am at the beginning of the
line and hit the tab key, it will insert a 4 space tab like I expect
it to. But if the line begins with two spaces, such as one that was
created by a generator, then the tab key doesn't always insert a 4
space tab. And the smart indenting (the indentation after pressing
the return/enter key) does not use my indentation settings but rather
the two spaces. I did some searching on it and apparently Ty (the
primary author) is of the opinion that tabs are evil, so I feel like
I'm forced to use what he thinks is best instead of what I am more
comfortable with.
I don't mean this to start a discussion about which is better, spaces
or tabs. I'm just pointing out something that I don't like about
NetBeans. And it's enough to keep me using TextMate. When I open a
file in TextMate, I CMD-A, OPT-CMD-[ and the entire file is formatted
just the way I want it. I tried to do that in NetBeans and I
couldn't escape the two space indents!
If there is a way to correct this, please (*please*) tell me. I
actually find quite a bit to like in NetBeans, but I'm pretty adamant
about the 4 space tab thing.
Peace, Phillip
You pointed out some featues of NetBeans that allow for limited customization, and pointed out some features that do something similar to what I want, but haven't but haven't answered my question: how does NetBeans support customization in general?
How hard would it be to change the behavior of ordinary characters like semicolon to behave as I described: insert an underscore, unless the preceding character is an underscore, and in that case insert a semicolon?
Except VI - God's own editor.
I've recently updated the 'vim-rails' package for Ubuntu Gutsy which installs the 'vim-rails' vim-script and a bunch of supporting scripts, making Gvim and Vim more Rails friendly.
If you are interested you can find it in my Launchpad PPA archive here
I did some searching on it and apparently Ty (the
primary author) is of the opinion that tabs are evil, so I feel like I'm forced to use what he thinks is best instead of what I am more comfortable with.
Hi Phillip, it's true that I'm no fan of tabs but I assure you I'm not at all trying to enforce a particular indentation style - tabs, spaces or amount, on anyone. NetBeans has settings for all these things and they are supposed to work; we had no bugs filed on them not working. (Well, there is a new bug report that is 3 days old, so filed after 6.0 shipped, which looks related - 123496 – Indentation not working in rhtml files - I will be investigating. However, this bug report seems to be talking specifically about ERB/RHTML files, which are special because they combine lots of editor types into a single document - HTML, JavaScript, Ruby etc. If you're seeing something else (e.g. in plain Ruby files), it would be very valuable if you can provide more information on how to reproduce it. Just write to dev@ruby.netbeans.org so we don't bore others on this alias with NetBeans specific issues.
If there is a way to correct this, please (*please*) tell me. I actually find quite a bit to like inNetBeans, but I'm pretty adamant about the 4 space tab thing.
This should be easy to fix; all the infrastructure is in place for this to work, and it did work when I first implemented it, so it's likely a simple bug. If should be able to fix it quickly in 6.1 if I can reproduce it.
Thanks, Tor
Hi Tor,
I thought I saw something on your blogs about tabs being
evil...that's where that line came from. Good to know that you don't
*really* think that tabs are at the root of everything wrong with the
world ;).
I'll do some specific use cases and put together detailed notes for you.
Thanks for the thoughts!
Peace, Phillip