ProgrammingThis forum is for all programming questions.
The question does not have to be directly related to Linux and any language is fair game.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
View Poll Results: Do you prefer GUI or text editors?
I get the impression here that a lot of people use emacs/vim/nano exclusively as their editor of choice. I'm really curious as to why. I definitely see the advantage of using a text editor, especially when working remotely. I've used emacs and pico for quite a bit (I won't touch VI with a 10-foot pole though, I hate its interface).
But still I think programming with a GUI editor is just so much easier. I mean you can use the mouse to easy select a block of text and then (using some editors) comment that entire block with a keystroke, indent it, etc. Right now I'm using KDevelop 3.0 for most of my work and there are only a couple minor things I don't like. I'm especially fond of having multiple tabs of source files open. I just don't see how it gets any better than that. I've used Kate a bit as well, but its lacking some of the things that I think make KDevelop a winner.
So do you prefer a GUI editor or a text editor? Which editor(s) is(are) your favorite and why?
I use both. Usually when I am programming for Windows I use Visual Studio, but I find myself working remotely most of the time when I program for Linux, so in that case it is vim all the way...
i prefer GUI editors only because of the mouse, and copy/paste (after a fast highlight with the mouse)
but i can use the text editors to (i prefer dav, i don't like nano (its good for making emails, but its auto format of long lines makes editing config files a real drag))
tho i never tried emacs or vim ... maybe i should install them one day just to take a look
It is very flexible. For example I needed to edit a configuration for a program that runs on my system. The configuration file had long list of files in it and many of the files didn't exist on my actual file system. I had to comment out the files that didn't exist. Does any editor you know of have a feature that does what I need? vim does
:32,. perldo s/^/#/ unless -e $_
But I can understand it might be easier for some people to use point and click interfaces. It is like asking, "What is better ... a Cessna or a F-15?" Some people might answer, "The Cessna is clearly the better airplane because I can't fly a F-15."
Last edited by SheldonPlankton; 07-20-2004 at 09:43 AM.
Having just revisited the gui thing in the last couple of weeks to see how it has come on I used VS .net, Kdevelop, Eclipse and XCode and each have some redeeming features.
XCode has the best implementation of a GUI for gdb by some distance, plus I could setup lots of emacs key-bindings.
MS has intellisense nigh on perfect and has moved from being an annoyance to one of the best implemented features on any platform.
Eclipse (with c++ development stuff) did an excellent job for class browsing and looks very promising but was sooo slow.
KDevelop3 I just didn't get on with - it was constantly crashing so much that I could barely try out many of the features. It seemed nice and customisable but that is little consolation. I also tried Anjuta sometime ago but there again, I don't remember it being particularly feature rich.
I have no qualms about using VS on Windows. It may be a pain to add different libraries but I just love intellisense for getting to know a new library. It makes such a difference and parses the code quickly and accurately. Include a header and there you are, functions, variables, templates, arguments ... the works no fumbling around for books or man pages. On my mac, I split equally between emacs / xterm and using XCode. As mentioned the debugger front end is fantastic the editor not as good as emacs.
But when it comes to Linux ... I just don't find any of the GUI ides match up to emacs (imho the best editor) or offer any worthwhile features as compensation. It works well using g++ and although I use DDD for debugging, I have found the CLI to gdb better when it comes to c++. And most of the key-combos are straightforward if you spend anytime at the terminal. The Emacs Development Environment and Emacs Code Browser projects on sourceforge offer some reasonable extensions but are a little hit and miss and not the easiest thing to set up.
If anyone has any suggestions for a decent GUI IDE on Linux (and I really mean VS quality code completion, for c++, everyone and their dog has it for Java, and a XCode quality gdb front end) then I am always open to suggestions but I just haven't found any of the alternatives up to scratch at the moment, hence I'll stick with emacs.
I prefer Emacs (often on windows too). Sometimes I force myself to use vim for quick edits (not for coding), because I feel I need to be comfortable with it, as it will allways be available (if not vim, at least vi).
Quote:
Originally posted by R00ts But still I think programming with a GUI editor is just so much easier. I mean you can use the mouse to easy select a block of text and then (using some editors) comment that entire block with a keystroke, indent it, etc.
Emacs can do those thing very well, and more (debugging, make, tags,..). And more important: it can do the same from the keyboard as well. Apart from when there's no moue available, it can also be faster because your don't need to move your hand to the mouse. It also has a feature that serves (to some extend) the same purpose as tabbed windows.
Downside of text-mode editors, and especially emacs an vi(m), is that it takes a lot of getting used to. (Still have to learn emacs' lisp...)
Originally posted by dakensta KDevelop3 I just didn't get on with - it was constantly crashing so much that I could barely try out many of the features. It seemed nice and customisable but that is little consolation. I also tried Anjuta sometime ago but there again, I don't remember it being particularly feature rich.
I've been using KDevelop on and off for about 3 years and it has never once crashed on me or anything.
Quote:
Originally posted by Hiko Emacs can do those thing very well, and more (debugging, make, tags,..)..
So can KDevelop. I know it has make, CVS, Subversion, etc. tools built right in. I've used the make and CVS tools with great success. I know you can do anything on emacs that you can do in KDevelop, but it just doesn't feel as easy to select a chunk of code and copy paste, etc. with it. I also recently found out it has a bunch of documentation for libraries and APIs built right in (now how'd I miss that before?)
Some persons from a Unix background would be very comfortable with vi / emacs. But even for them, I think a GUI editor particularly one with language specific colour highlighting / tags would be useful and avoid careless mistakes. Imagine building a web page with just vi or Notepad.
In DOS, I suggest a few notepad replacements which would create simple platform independent codes (NotetabLight in my case which I use for developing web pages) instead of tools like InterDev which bloat the code and make it platform specific0.
In Unix / Linux, I am on vi - I develop only shell scripts and some light work in a character based RDBMS development platform.
I think it's really handy and fast, and I can do all my programming with it, while you have to struggle to find a GUI handling c/php/java/latex... Ok, it's not a good argument because some of these kinds of GUI came out, event if it's not by default.
Nevertheless, I started c with Visual but I've got a slight preference for debugging with printf("toto") instead of breakpoints... (I've never tried gdb).
Moreover, I know I could have a better interface emacs for the development if I work out el scripts...
For instance C-x-e allows me to create a new latex environment in an interactive way with the Mandrake scripts.
So yes, GUI is too much hassle for nothing.
PS: my development is not professional so, maybe it helps... ;-)
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.