Christian Mayer writes: > So stuff like syntax higlighting, keyword completion, integrated > debugger,
I get all of this in Emacs or XEmacs. I'm sure other programmers' editors support it as well. M-x gdb starts a debug session for FlightGear, and I get a source-level walkthrough in Emacs while the program is executing. > automatic view of different versions of the same function > (e.g. foo(int bar), foo(int bar_1, double bar_2)), ..., There are Emacs packages for this stuff (and class browsers, etc.), but I find etags efficient enough. > as well as the "overview" stuff I talked above. That's stuff like > where you've got with MSVC all parts of the project (in our case > the different directories) in a window, where you can easily browse > through the structure. This is the main reason that I'm not willing to try a non-Emacs IDE. In Emacs, the command M-x cvs-status gives me a single-window view of the entire FlightGear CVS tree, while M-x cvs-examine shows me only files that need attention (need to be updated, have been modified, have conflicts, etc.). Without this functionality, I would have to work very hard to check in patches from various contributors and to figure out what was going wrong when something broke. I have not yet seen this level of CVS integration in any non-Emacs-based IDE, but I haven't looked that hard. The other important thing for me is etags. Let's say that I need to replace every instance of SGPropertyNode with SGNewPropertyNode in the FlightGear project tree. I just type M-x tags-query-replace, and Emacs walks me though every file in the project, giving me the opportunity to replace each example or leave it be (or edit it by hand). With etags, I can make changes in seconds that would take minutes or hours without it (knowing regular expressions helps a lot). Of course, during compilation Emacs will automatically step through warnings and errors, bringing me to the exact line in the source file for each one, but there's nothing exciting about that. > Or the posibility to go directly to the declaration or definition of a > function just by using a entry in the context sensitive menu. There's an Emacs package for that (I don't remember the name), but again, etags is good enough for me. > All that should come together with easy to use standard features (search > in current file, search in all project relevant files, replace, auto > indent (and re-auto indent for selected code), ... Yep, yep, yep. On the down side, Emacs takes a while to learn; on the up side, once you've learned it, you can do anything you want extremely fast (I've amazed customers during onsite visits by making complex changes to large programs or document collections in less than a minute where they'd budgetted days for the work). All the best, David -- David Megginson, [EMAIL PROTECTED], http://www.megginson.com/ _______________________________________________ Flightgear-devel mailing list [EMAIL PROTECTED] http://mail.flightgear.org/mailman/listinfo/flightgear-devel
