

Code Fusion for Linux: Reviewed 128
- Company: Cygnus Solutions
- Rating: 9/10
- Summary:With the exception of a few minor annoyances, most notably in the installation process, Code Fusion provides a full range of features for an excellent price.
Cygnus is already a familiar face in the Linux world. They are known for products such as GNUPro Toolkit and Source-Navigator, as well as their support for a variety of other open source projects. Their most recent addition to their product line is Code Fusion, a product which merges and enhances the GNUPro Toolkit and Source- Navigator to create a since integrated development environment.
While there have been instances where people have had troubles installing Code Fusion, I was able to set it up and run it without a hitch. Nonetheless, there were several elements of the install process that could be improved. First, you have to enter a different directory and run a separate install script depending on which version of glibc you are running. Once the setup is complete, you then need to setup several environment variables. While this process is well documented, the risk of typographical errors and the general inconvenience warrant automating this process.
After getting past the mild inconveniences of the installation process, I started up the program and began testing. While Code Fusion comes with a couple example projects and the book has some tutorials, I decided to venture out on my own and create a new project from scratch. And what better way to test a program than to write a Hello World app. Of course, to adequately test all of Code Fusions project browsing featuers, I broke it up into 5 classes.
It took me a couple minutes to figure out how to create new files. It seemed logical to me that the Project Editor window, where you can add, move or delete files, would also let you create a file, but that option is lacking. After digging around menus, I found that the Window menu allowed to you open the Source Editor window, where you can create files.
The Source Editor window provides a variety of convenient options. As with any good IDE, it color codes all our your source. The command to build your code is just a click away. Perhaps most conveniently, it is integrated with a variety of version control programs. In general, it provides a very convenient environment for cranking out code.
Having quickly whipped up all of the classes of my Hello World app, I moved to the feature where Code Fusion really shined, the various project browsers. This feature allows you a wide variety of ways to display your program. It includes a cross reference browser, an include browser, a class browser, and a hierarchy browser.
Finally, I tested the debugging features. This includes all of the standard features expected from any debugger, such as breakpoints, watches, stack traces, etc. Unlike a majority of the debuggers on the market, the screen where you edit the code and the screen where you set break points are different. Having been reared on Microsoft Visual Studio, and given that this differs from the industry standard, this is rather inconvenient. In spite of this, I found the debugger to be generally easy to use and it sure beats using a printf every other line.
Overall, Code Fusion is a very useful product. Any software developer, with the exception of the vi-loving death-before-IDE people, will find its wide variety of features helpful. And with a price under $300, it is financially well within the reach of most individuals and companies.
List Price $299 ($207.43 at CDW)
Re:Open Source alternative (Score:1)
Code Crusader [caltech.edu] (http://www.cco.caltech.edu/~jafl/jcc/)
Re:Open Source alternative (Score:1)
Custom editors in IDE's (Score:1)
Re:How does this IDE compare to emacs/gud/make/gdb (Score:1)
Re:finally, a good IDE for Linux?!?! (Score:1)
That's the main reason I like IDE's, although to me it doesn't make a huge difference whether or not I'm using an IDE. Typically, on Windows I use Visual C++, and on Unix I won't use an IDE.
Re:...integrated debugging? -- Emacs does this (Score:1)
Emacs has an 'integrated' debugger (ie you can run the debugger in one window and watch it step through the code, set breakpoints, etc. in another). It's been around for a long time:
;;; gud.el --- Grand Unified Debugger mode for gdb, sdb, dbx, xdb or perldb
;; Author: Eric S. Raymond ;; Keywords: unix, tools
;; Copyright (C) 1992, 1993, 1994, 1995, 1996 Free Software Foundation, Inc.
;; Maintainer: FSF
What's an IDE for? (Score:1)
Does it export Makefiles and Configure scripts... (Score:1)
-W.W.
Posted anonymously due to being locked out of account and Rob not answering e-mail.
Re:Open Source alternative (Score:2)
Re:finally, a good IDE for Linux?!?! (Score:3)
The only true programming editor is "cat >".
It has no modes to worry about (like command vs edit mode), no fancy commands to worry about, no cruft like a macro language, has not only been ported to virtually every unix variant (as well as dos, windows, and os/2), but works identically the same everywhere (no need to worry about vi vs nvi vs vim vs elvis). It doesn't depend on curses, windowing, nor anything else like that. It has an incredibly small memory footprint. AND, it forces you to think ahead and spell things correctly the FIRST time.
gdb!? sheer luxury. You never need anything more than the printf debugger.
IDE's? "cat | gcc" and the world is your oyster.
(brought to you by REAL Luddites, as opposed to pansy "vi and emacs til the day I die" luddites)
Re:...integrated debugging? (Score:4)
Re:I already have an IDE! (Score:1)
Might also add searchable help and GUI layout tools, and integrated debugging.
Best of all, it saves me from learning more than the basics of vim or emacs.
...integrated debugging? (Score:4)
Okay, there's now five or ten pretty nice IDEs for Linux. (Code Warrior, Code Fusion, KDevelop, CForge...)
There are some extremely good visual debuggers. (ddd, kdbg, Code Medic...)
But...it's all pointless without integrated debugging! I'm sorry, I find the lack of this feature to be a major detriment to these products, and to OSS/free software in general. Ten years ago I was running QuickC on my 286-12 running DOS, and *it* had an integrated debugger.
I have several co-workers now who have installed Linux to check it out, and have been very happy with the power and stability it offers, but - in a nutshell - they won't work without the development environment they are used to, and that means an integrated debugger.
Myself, I find it too annoying to deal with loading up a seperate (graphical) debugger, especially while running an already screen-space-hogging IDE. I continue to use vim+make+gdb.
Yes, I know - I should stop bitching and just code it. Still, it's a big job, and I'm torn whether I should try to add interactive debugging to something like KDevelop (certainly a big job) or simply add some source-editing features to DDD (a smaller job, but less impressive when finished).
I was hoping that Code Fusion would finally contain an integrated debugger, since it's not just a port of an existing IDE. I see now that our only hope is the 'Pro' version of Code Warrior.
I think I'll stick with C-Forge (Score:2)
Manually writing Makefiles? Bah! (Score:1)
Beats doing them manually, using Imakefiles (*shudder*), or having strange "project manager" files...
Re:...integrated debugging? (Score:2)
gnuclient +@LINE@ @FILE@
instead of
vi +@LINE@ @FILE@
is too hard? I almost bought a copy of Code Fusion and then said "naaah, what for?" when I realized I could do everything but the source navigation just using GCC 2.95.1, GDB 4.18, DDD 3.16, and XEmacs 21.4. Seeing as to how I already use all of these in earlier versions, it wasn't real hard to transition to writing Java->native code, my only problem now is getting DDD to work right with the executables. But DDD also lets one debug Perl and Python scripts. Can't do that with Code Fusion!
Re:Give me emacs or give me death (Score:1)
I have heard that Emacs is embeddable, in that Emacs can be made, with sufficient support from the application in question, to be used as an embedded editor.
I could almost handle some IDE's out there, if only I could edit using Emacs instead of the flimsy editor that comes with the IDE.
Re:Who's missing the point? (Score:2)
I've found it often works better than egcs. I had to rewrite an egcs version of a console test app because it didn't like typedefs in templates based on typedefs from the template parameters. (I ended up using -- God help us! -- #defines.) Maybe egcs has improved since then, but slamming a compiler because it isn't quite up to the standards spec means you slam all compilers.
I'll grant you the non-standard scope for variables declared in for loops, and the lack of a standard switch for just changing that, sucks.
To my mind no IDE (including emacs) is really at the level I need it. I like the multiple independently-resizeable edit windows of CodeWarrior (that offer more than just editing, things like setting breakpoints for example). I like the displays of local variables and the edit and continue of Visual. I like the power of command line programs with Unix/Linux. (Especially the ability to pipe grep, grep -v, etc.) I like the ease of learning the simple stuff of CodeWarrior and Visual.
I want the ability to add hyperlinks to documentation in source code, where I can click to get a viewer. I want easy to browse instructions. I want to be able to set *compile* breakpoints, so I can see what header files are included and what's defined at a given point. I want the ability to indicate groupings of functionality even when there's no language-level indication (such as namespaces) of that grouping. I want diff tools that show word-level differences if lines aren't very different, and that show the difference in context. I want to be able to change a variable's name, and have all references to it change too -- but not identically named but different variables.
Re:Visual Studio *programmers* can suck... (Score:2)
Go to freshmeat and search for "gtk". You'll get back a result list of of something like 400 applications. Are all of these useful? Probably not. Most were written by folks trying GTK out, learning, and sharing their results.
Libraries and development enviornments do not govern the usefulness of a program or application.
Plenty of excellent programmers swear by Visual Studio. Plenty of excellent programmers swear by emacs. For some reason, some even use vi (sorry, couldn't resist! ;) )
Re:Performance review? (Score:2)
--
Man is most nearly himself when he achieves the seriousness of a child at play.
We're talking about CODE Fusion (Score:1)
I knew the name Code Fusion was a mistake.
Re:finally, a good IDE for Linux?!?! (Score:1)
- a decent class editor/browser for Java. ctags stopped cutting it when I moved from C to C++, and it's useless for Java.
- a decent code beautifier, since indent doesn't work right for Java.
Re:finally, a good IDE for Linux?!?! (Score:1)
I'd not heard of Exhuberant ctags. I'll give it a try.
Suggestion for Moderator-mode (Score:1)
Here we're looking at my reply to a message, but the original message was off-topic and moderated down below my threshold, so it looks like *I* started talking about something off-topic out of the blue.
Code Fusion != Cold Fusion (Score:1)
_Code_ Fusion is an IDE for Linux. It has _everything_ to do with makefiles et al.
Re:Questions (Score:1)
Does it do emacs-style auto-indent? This is the killer feature without which I cannot live. I want to be able to hit tab once, anywhere in the line and have the editor deduce where to put the cursor from the syntax of the code.. No indentation, no dice.
PS: What about regexp searches in/across files? regexps are yummy too.
Beer recipe: free! #Source
Cold pints: $2 #Product
I already have an IDE! (Score:2)
My question is, what does the "Integrated" environment get me that i can't already get with my Unix shell, and how much of the flexibility of the Unix shell must i surrender to get it?
-dave, who is currently hacking Perl over a WAN in an xterm)
---
Re:I already have an IDE! (Score:3)
Other than occasional use of Source Insight (an inexpensive and excellent commercial source code index/analysis tool), i rarely need anything more than find, grep, and one-liner custom greps written with perl -e. With a project of this size, i find the "knowledge... of regexps" and "ugly makefiles" not just useful, but priceless. The bigger the project, the more useful the Unix command line becomes.
---
Re:Questions (Score:2)
extensibility and customization/personalization are also an important...
How does it compare to DDD? (Score:1)
is there anything comparable to SGI's CaseVision?
[As a reference, I consider multithreaded debugging support in VisualC++ to be BAD compared to cvd]
Current open source options... (Score:1)
There's several other options out there, but they're not as nice as these two, IMNSHO...
Both offer project management, class browsing C++, syntax highlighting, etc. KDevelop looks nearly like VisualC++, Code Crusader is more closely modeled after Code Warrior. These decisions dictate code choices.
KDevelop does class browsing in a way much like VisualC++ does. Code Crusader shows classes in a class inheritance tree.
Each of these environments have their own set of problems- you'll need to evaluate their offered functionalities and find out the drawbacks for your purposes and choose accordingly.
Current open source options... (Score:4)
There's several other options out there, but they're not as nice as these two, IMNSHO...
Both offer project management, class browsing C++, syntax highlighting, etc. KDevelop looks nearly like VisualC++, Code Crusader is more closely modeled after Code Warrior. These decisions dictate code choices.
KDevelop does class browsing in a way much like VisualC++ does. Code Crusader shows classes in a class inheritance tree.
Each of these environments have their own set of problems- you'll need to evaluate their offered functionalities and find out the drawbacks for your purposes and choose accordingly.
Mixing IDE and non-IDE (Score:4)
The scenario that I'm interested in is that I typically build things at the command line, but use the source browsers to explore other classes and their methods. The other use is that I create the build environments in the IDE, export a makefile (because there are a lot of dependencies to code; let the IDE do it for you), and then fire it all off by typing 'make' at a command line. Does CodeWarrior fit this situation?
While IDEs are nice, I like the ability for them to simply put a GUI on some parts of the development process. Otherwise, hands off and let me use VIM! :grin:
--
Re:Cygnus Java support (no AWT) (Score:1)
Re:finally, a good IDE for Linux?!?! (Score:1)
Real Luddites use toggle switches.
:-)
Kdevelop home page (Score:1)
Re:ed is the standard (off-topic) (Score:1)
Nedit can do this already (Score:1)
I use Nedit and love it, which is why I'm surprised you weren't aware that it already has most of the features that you are asking for.
As of version 5 and greater, Nedit has a wonderfully customizable syntax coloring feature. You can specify syntax coloring for language modes using regular expressions. Of the ones you listed, both Perl and HTML modes come built in, and you can easily write patterns to match php3 syntax, or any other language.
In addition to syntax coloring, the language modes can be used to set macros in Nedit's builtin language to only run for particular source types. For the features not builtin, it can easily execute arbitrary shell commands.
There might be existing macros to do this from the Nedit macro list [mailnet.co.uk]. If not, it shouldn't be difficult to write your own.
Re:...integrated debugging? (Score:2)
I set up one desktop with XEmacs. I divide XEmacs in three buffers. At the bottom I have my compile buffer. Above I use two source buffers splitted vertical.
In another desktop I set up the DDD debugger windows, formed exactly as I want it.
And in the third desktop I have Netscape as help system (I hate both info and man pages).
OK, I still miss a autoconf project manager, and a graphical profiler. But from that I am pretty pleased with developing without an IDE.
(I use Visual C++ 6.0 daily, so I have a really good but buggy IDE to compare with)
Re:Give me emacs or give me death (Score:1)
I've tried using MSVC++4.0 IDE, Borland C++ 4.5 & 5.0 IDE, and Watcom C++ 11 IDE, they all felt too stupid when it came to auto-indent, plus they weren't nearly as customizable as Emacs.
ed is the standard (Score:1)
Allaire ColdFusion != Cygnus Cold Fusion (Score:1)
You may have had a ticket on the clue bus, but I think you've lost your transfer.
Allaire's Cold Fusion web development product has little to do with Cygnus' Cold Fusion IDE, other than the obvious clash in names.
--Joe--
s/Cygnus Cold Fusion/Cygnus Code Fusion/g (Score:1)
Ack... my brain got sucked into the same trap as a few other people on this article. See subject.
--Joe--
Use tags. (Score:1)
What? No class wizard? (Score:1)
"Class wizard, I beseech thee. Grant unto me the power to render my application."
Re:I already have an IDE! (Score:1)
The tools are there, but they aren't usually obvious to refugees from the Redmond world. Perhaps some web pages and/or books which would introduce programmers to these useful items is called for.
Re:Nedit can do this already (Score:1)
----
We all take pink lemonade for granted.
Maybe OT: Perl Development (Score:2)
Now, I'm not going to give up Perl, of course, but this would make me just another, slightly happier, perl hacker. Anyone have any leads on something like this?
And to qualify: don't even bother saying emacs. Seriously. No thanks, I already have an operating system. :-)
----
We all take pink lemonade for granted.
Cygnus products: bad experience (Score:2)
Guys, to be honest, SN is just a pile of shit in very fancy tix wrapping.
We were using SN databases ( it parses your project and builds several databases out of it) to make some source analazyng tools for big (more than 2.500 files) project, and we had run into troubles. SN started to crash often, corrupting databases and producing unpredictable results. I have more than 30 bugs listed in our local gnats system. Here are some of those:
to the actual function implementation. The reference points to the function declaration in the parent class, instead of the implementation
in the derived.
And so on. I just took first three bugs from our bug tracking db.
When we tried to contact Cygnus support for those bugs, we received a polite reply on of the support staff that mentioned bugs will be fixed in the future release. We've waited for a couple of months and then new SN update appeared. None of the bugs we submitted to support were fixed..
Of course, there's a lot of good products from Cygnus. I use egcs at work and a lot of tools compiled with cygwin at my home PC, and I can't say anything bad about those products. But never - I repeat - NEVER spend you money on this foolish thing.
PS. sorry for my bad english.
Re:I already have an IDE! (Score:2)
Sounds like many free software projects.
where is foo() defined? where is it declared? where's the next place it's used? what are the different signatures of functions named foo()?For vim:
:help tags
!man ctags
All the tools are there, the hard part is to figure out how you like to chain them together. I've yet to find a better IDE than what stringing together standard/free UNIX tools provide once you've taken the time to figure that out. Perhaps the lack of an IDE comperable to those found in DOS/Windows is due to the do one thing and do it well philosophy in UNIX..
Re:Open Source alternative (Score:1)
Just download it, (www.vim.org) and it does all of that. I recommend the
--
blue
Re:finally, a good IDE for Linux?!?! (Score:1)
This is the old way of doing things. It works, of course, but eventually people will move to better tools
Re:Visual Studio *programmers* can suck... (Score:1)
The point is - it is a tool that provides you with optional wizards and stuff like that but you are not forced to use that.
Re:Open Source alternative (Score:1)
Quoting from the FAQ on www.cygnus.com/codefusion/faq.html#4
"...commercial Linux IDE..."
Re:Open Source alternative (Score:1)
Re:Open Source alternative (Score:1)
Re:First? (Score:1)
Re:Maybe OT: Perl Development (Score:1)
the latest version of VIM (5.4 is stable, 5.5somethin is development) has a very nice gui (now uses gtk!) and syntax highlighting for more languages than i knew existed! (161 syntax definition files on my system). and of course, this includes perl, html, php3, as well as java, javascript, visual basic (for those who are stuck devloping in that, i am sorry), and many many more.
also, the new version has the ability to run make, i heard it supports cvs (haven't found this in the menus, probably a command mode option if there) supports ctags (which i'm not familiar with but i've heard is "A Good Thing"(tm)). as well as more options than ever before.
one niggly that i'm not too fond of is it doesn't properly use the X resources, so when you define for example Vim*reverseVideo True, it doesn't actually give you white on black. but other than that, my appreciation for the program has only increased.
the official site is http://www.vim.org. check out Sven's dot vimrc, its HUGE but well documented and i use pretty much all the default options in there.
Re:Maybe OT: Perl Development (Score:1)
I've also gotten the perl debugger to drive the NEdit window while stepping through a program (including opening additional windows for any modules used). This is still just an ugly hack though; I'd prefer to pipe the output to another tty like Tom's pvdb but that'll take a bit more work.
Just set the perl debugger to pipe its output to the following program (the line:
parse_options("LineInfo=|nedit_perldb.pl");
in a file called
#!/usr/bin/perl -w
#
# nedit_perldb
# version -0.01
#
# (c) Christopher Kuhi
open (FILE, ">$ENV{HOME}/.perldebug/debug.out") or die;
# You need to create this directory and do a tail -f as it stands now
select FILE;
$| = 1;
while () {
unless (/^(\d+)\:/) {
my $filename = $1;
my $linenumber = $2;
if (-e $filename) {
system ("nc -do 'goto_line_number($linenumber)' $filename");
}
}
print FILE $_;
}
# I'm sure the indentation is shot to hell now
Like I said, crude but I've found it to be helpful.
Chris
p.s. if anyone knows where I can read about the exact format of the output from the Perl debugger, I'd like to be sure my regex will cover all the situations
Re:finally, a good IDE for Linux?!?! (Score:1)
You lucky bastard.
Re:Maybe OT: Perl Development (Score:1)
nc.autoStart: True
in your
And it would probably be better to give the full path for nc:
system ("/usr/local/bin/nc -do 'goto_line_number($linenumber)' $filename");
chris
XEmacs widget? (Score:1)
Questions (Score:2)
Re:What's an IDE for? (Score:2)
Anyways, everything on unix appears to be difficult to use. But this is just a perception. Once you learn the basics you figure that the whole system makes sense, is very integrated and powerful..
Re:How does this IDE compare to emacs/gud/make/gdb (Score:3)
Mac
Win
Now I've been working at a startup for the last six months doing Java. There are few tools to support Java development to the level of complexity offered C++ coders, so we rolled our own. It's still basic as I haven't had much time to continue building it, but that changes next month. :)
Here's what we're currently using:
Most everyone here uses Symantec Cafe. I had already chosen my IDE prior to arriving, however, at a contract a year earlier. After using so many IDEs, I found that the central feature lacking in them all was a good editor. I spend 90% of my coding time actually coding, and very little building.
I eventually found CodeWright (windows only) and have used it since. For one, I have not found a better editor out of the box. Emacs can be configured to do nearly everything and more, but I don't have the time yet to jump in fully. I can get by editing in Emacs, but that's about it.
CodeWright, like Emacs, has extensibility. You can use one of their own three macro languages, C, C++, or Perl to write extensions to the editor. Even easier, however, is that it has hooks for compilers, make, version control, etc. You just enter the (cmd.exe) command line to execute for each function:
And it was just as trivial to tweak it to use our build scripts, tag files, etc.Bottom Line: Take the time to pick a good editor and extend it. Yes, I'd love a class browser, but far more important for me is to be able to hit ctrl-F10 and have the current file saved, preprocessed, and compiled; and the cursor jumps to the first error. You can do all that with Emacs and JDE, and we'll move that way once we jump fully to Unix next year.
Now all I have to do is convince the black hats that Linux is an enterprise platform. Got any ideas?
-PZ
So the IDE has a frontend for autoconf/automake? (Score:1)
What's more 1) is the editor better than emacs/xemacs? 2) is the debugger better than ddd?
questions remain open. You'd have to succeed in both areas to make me pay those bucks.
Anyway, this is the kind of thing where improvement is sure to happen. What do you say?
Which features must be worked out?
Who's missing the point? (Score:1)
Try to code nice console programs and static libs not touching the horrible VC MFC libs and go STL and stdio instead. What happens? Lemme sort it out. You're not gonna compile half of your valid std C++ proggies. Templates will break, namespaces will blow, linkers will get confused..
I think you're overestimating the DevStudio environment.
Plus, if there are the (what - 4gl, 3gl) tools, you just want them fine and dandy. Not the lame DevStudio ones.
IDE's must not be developed for non-programmers (Score:1)
What I don't like is that a development environment is intended for non-coders. An IDE similar to DevStudio just gives me that feeling. The "here moron, you can make a window like this", "see moron, click here and some sucky message map code will be generated. totally ad-hoc!" wizards or "Our library allows you to write WinSock2.0 code so easily. Just stick to our lame object model." libraries make me sick. I do think that the libraries and DE's may govern the quality of software at least.
What's more, I condemn all those excellent programmers who stick with VC! Nothing compares to emacs+ddd.
And yes, there are many GTK proggies that are not useful. Still I stress that the KDE must be pronounced "windows-wanna-be".
Re:How does this IDE compare to emacs/gud/make/gdb (Score:1)
I've been unable to live or code without Emacs since, oh, 1983. The only time I made the jump to an IDE was when the second version of NeXT's Project Builder came out. Note that this is still available as part of Mac OS X server, and as far as I know will continue to be maintained and extended.
The original PB was already an excellent Makefile creation and management tool, scaling up to seriously big projects. Lighthouse Design used it faithfully. However, its text editor was, well, pretty but primitive. (Undo? Never heard of it.)
The second PB was rewritten to improve that Makefile management (converting it from CMU to GNU make), and also with a set goal of converting die-hard Emacs fans, and they did it. It wasn't a lisp environment, so real customization/extension is gone, but the main keystrokes and semantics are very faithful. Undo past save, ctrl-x ctrl-s, incremental search, lots and lots of my muscle memory just works.
This is not to say that you have to be an Emacs-head to use it. It has all the standard friendly menus and commands. It just happens to have a lot of Emacs style goo too.
They also did a decent job of putting a GUI on GDB, especially managing breakpoints.
Caveats: I was strictly an Objective-C boy, really have no idea how it treated C++ developers. However, the Mac OS X version is now a fine Java development environment. That seems to bode well.
Performance of compiler. (Score:1)
You might wanna hold onto that ticket... (Score:1)
CODE Fusion.
It's about time... (Score:1)
Re:finally, a good IDE for Linux?!?! (Score:1)
You had magnets and Iron?
We used to have to align iron ore with the earths magnetic field, with our bare hands, in the snow, naked, and the only apropriate place to work was ten miles uphill from the safety of our cave complex.
The only way to get back to the cave complex, was to walk back that ten miles, through a saltmarsh, where the water was below the fresh-water-freezing point, but it was still liquid from the salt.
We didn't have shoes eithor.
Win32 API - Extremely painful. (Score:1)
If you are so "hard core" you can skip all the wizards in VC and code in Win32 API.
I think that when refering to him as hardcore, it's impolite to asume that he's into S&M.
Re:What's an IDE for? (Score:1)
Mabie let you teach your children/sibling's children/friend's children to code in a simpler way?
But then, you probably wouldn't want then to devop the bad habits or dependances that learning to code in an IDE tends to cause.
I guess if you can code well with "traditional tools", an IDE would be a collossal waste of bytes for you.
Re:First? (Score:1)
This is offtopic because it's title is "First?".
Posts that say "First Post!" are discouraged here on Slashdot.
Re:finally, a good IDE for Linux?!?! (Score:1)
-ted
PS: Here's my configuration file; this should answer configuration nitpicky comments in advance:
...............
### Convention Note
conventionName = "Teds Convention"
setConventionNote = false
### Tabulator
emulateTabs = false
tabulatorSize = 8
### Indent
indentSize = 4
firstLevelIndent = 0
indentCaseFromSwitch = false
indentDeclarations = true
indentTooLongComments = false
indentAlwaysAtTabColumn = false
minimumCommentIndent = 4
### Braces
leftBraceNewLine = false
rightBraceNewLine = false
indentLeftBrace = 1
indentRightBrace = 0
indentAfterRightBrace = 1
cuddleEmptyBraces = true
indentCuddledBraces = 1
### Code Modification
insertBracesAtIfElse = true
insertBracesAtFor = true
insertBracesAtWhile = true
insertBracesAtDoWhile = true
### JavaDocs and Comments
createMissingJavaDocs = false
javaDoc_method_top[00] = "/**"
javaDoc_method_top[01] = " * Method declaration"
javaDoc_method_top[02] = " *"
javaDoc_method_param_separator[00] = " *"
javaDoc_method_param[00] = " * @param"
javaDoc_method_return[00] = " *"
javaDoc_method_return[01] = " * @return"
javaDoc_method_exception_separator[00] = " *"
javaDoc_method_exception[00] = " * @throws"
javaDoc_method_bottom[00] = " *"
javaDoc_method_bottom[01] = " * @see"
javaDoc_method_bottom[02] = " */"
javaDoc_constructor_top[00] = "/**"
javaDoc_constructor_top[01] = " * Constructor declaration"
javaDoc_constructor_top[02] = " *"
javaDoc_constructor_param_separator[00] = " *"
javaDoc_constructor_param[00] = " * @param"
javaDoc_constructor_exception_separator[00] = " *"
javaDoc_constructor_exception[00] = " * @throws"
javaDoc_constructor_bottom[00] = " *"
javaDoc_constructor_bottom[01] = " * @see"
javaDoc_constructor_bottom[02] = " */"
javaDoc_class[00] = "/**"
javaDoc_class[01] = " * Class declaration"
javaDoc_class[02] = " *"
javaDoc_class[03] = " *"
javaDoc_class[04] = " * @author"
javaDoc_class[05] = " * @version %I%, %G%"
javaDoc_class[06] = " */"
javaDoc_interface[00] = "/**"
javaDoc_interface[01] = " * Interface declaration"
javaDoc_interface[02] = " *"
javaDoc_interface[03] = " *"
javaDoc_interface[04] = " * @author"
javaDoc_interface[05] = " * @version %I%, %G%"
javaDoc_interface[06] = " */"
ignoreJavaDocs = false
ignoreMultiLineComments = false
ignoreSingleLineComments = false
### Blank Lines
blankLinesAfterDeclarations = 1
blankLinesAfterMethods = 1
blankLinesBetweenClassInterface = 2
blankLinesBetweenChunks = 1
blankLinesBeforeJavaDocs = 1
blankLinesAfterJavaDocs = 0
blankLinesBeforeMultiComments = 1
blankLinesAfterMultiComments = 0
blankLinesBeforeSingleComments = 1
blankLinesAfterSingleComments = 0
keepBlankLines = false
### Whitespaces
separateAssignmentOperators = true
separateConditionalOperators = true
separateComparisonOperators = true
separateNumericalOperators = true
spaceAfterComma = true
spaceAfterSemicolon = true
spaceAfterCasting = true
spaceBeforeMethodParameters = false
spaceBeforeStatementParameters = true
paddingParenthesis = false
paddingBrackets = false
### Line Wrapping
wrapLines = false
wrapBecauseOfComments = true
wrapLongMethodNames = false
maxLineLength = 78
deepIndent = 45
forceIndent = 8
forceIndentTolerance = 3
### Labels
labelNewLine = true
...........
Cygnus Java support (Score:1)
-t
Re:Maybe OT: Perl Development (Score:2)
You might also look at pvdb [perl.com] . It gives you three xterms: one for the perl debugger, one for vi on whatever source file the debugger has break-pointed into, and one for stdin and stdout. As you hit breakpoints and step through, it controls vi for you to move you around.
Re:Anyone heard of Zope? (Score:1)
Re:How does this IDE compare to emacs/gud/make/gdb (Score:1)
Re:finally, a good IDE for Linux?!?! (Score:4)
ctags stopped cutting it when I moved from C to C++, and it's useless for Java
Exuberant ctags [hiwaay.net] is far advanced over old ctags programs. The C support is much improved and C++ and Java support have been added and work like a charm. Works especially well in combination with Vim [vim.org]. If you don't like the way it handles Java, you can give JTags [fleiner.com] a try, but it's nowhere near as stable.
If you're doing Java development, you'll probably also want to use Jikes [ibm.com], as it integrates very nicely with QuickFix mode in Vim and make mode in Emacs. There's also a Jikes Debugger [ibm.com] java debugger, but I've not used it.
a decent code beautifier, since indent doesn't work right for Java
jsbeautifier [bigfoot.com] is one of many -- a search I did a few months ago turned up 10 or 12 beautifiers for Java, and even more for other languages.
Of course, if you want a good graphical debugger then ddd [tu-bs.de] is the way to go -- it lets you get to the gdb command line if need be.
Sumner
IDE's and Linux (Score:1)
I am particularily interested in those which have evaluation periods. The only one I have been able to install and actually put to any use is Code Crusader.
Can someone please submit links to other alternatives? I looked through all the IDE's that were listed on Freshmeat and Redhat, but the links were either dead, or no evaluation edition was available.
Code Crusader is open source, and it seems decent from what I've seen so far (even though the interface takes a bit of getting used to).. However, I'm interested in evaluating other products and then chosing the one which most meets my needs..
Re:...integrated debugging? (Score:1)
I haven't really tried using any of the features, but this was specifically mentioned in the docs..
Are you looking for tighter integration than CC offers?
How does this IDE compare to emacs/gud/make/gdb? (Score:3)
Is there anyone proficient with these classical tools that has ever switched to any formal IDE, commercial or otherwise?
Btw, I can only laugh at the people asking for an open source IDE -- you've already had one for a decade now...
-p.
Re:We're talking about CODE Fusion (Score:1)
I have a code.
Ahhhh-CHOO!
Open Source alternative (Score:1)
-Vel
finally, a good IDE for Linux?!?! (Score:2)
several xterms
+ vi (or emacs, or any editor)
+ gdb
+ rcs (and/or cvs)
+ gcc
+ ls, +ld, etc.
is not an excellent IDE
that's how I plan to code till I tire of coding
Re:Give me emacs or give me death (Score:1)
Up front, a good programmer needs nothing but
echo int main(int argc, char argv[]) >>whatever.c. That said, writing anything in that manner is neither enjoyable nor particularly productive or efficient. Solid flexable IDE's aim at productivity and efficiency.
Emacs, no matter how well configured is dated, and in a multi-tasking multi-threaded graphical environment, its shortcommings as an all in one tool are painfully obvious. The whole buffer system is rather obsolete, and the interface obviously intended for the console.
I won't even comment on vim. (though personally i use elvis, which is a vim cloney thing)
One of the things i've missed from visual studio under linux is multiple code windows and a multi-threaded ide. I've worked with vdk builder, kdevelop and gIDE and none of them have allowed me to do a simple thing i do constantly in VC, open two source windows and tile them next to eachother. This is just one simple example of things from mature IDE's that one finds oneself missing when moving to linux.
I wonder at people who thumb their noses at IDE's. It's like grandpa's walk to school tales of programmer. Is it some how more macho to use a cheesier editor to write code? Judge people on the quality of their code, not the editor used to write it. I think many minimalists would be suprised at the results.
-T
Make the Plane Fly (Score:1)
after pilot's command they run woeing and take off....
Interesting is that both minimalists and GUIsts are right. What's missed IMHO is that UNIX-like OSs
provide a unique possiblilty to build extremely customizable thin-IDEs with all whiz-bang features.
Do developers need project/object/thisject/thatject browsers? Yes. Intergated debugging? Sure. Syntax highlight? We can't live without it
But most of the job is already done: grep, make, diff, perl etc etc. Just put them together and feed the output to a
(relatively) simple editor.
Moreof, most of nowadays Linux IDEs bring up a new set of reuirements. The most important of them is that IDEs should be
configurable to work with almost any compiler/debugger available. This is True Linux Spirit, unlike what Inprise is trying to push through.
And for those who care: RHIDE still rocks. I use it daily and it's great. Good news is that as long as Borland TC/TP code is public domain now, RHIDE editor C++ source is now available.
For net/database development... (Score:1)
Last I checked, IDEs don't work over a low bandwidth remote shell. I think I will stick with vi, thanks.
Cygnus alternative (Score:2)
Check out Cygnus [cygnus.com].
Cygnus has had explosive growth. I would guess that most of their revenues come from support of open-source software. They release and maintain a lot of open-source software.
Why does Cygnus involve itself in commercial closed-source product development and sales? If open-source has been a model that has provided such a profitable market for Cygnus, what is their rationale for creating and selling closed-source products?
Has Cygnus actually performed any marketing studies? Do they know, for a fact, that this actually optimizes their earnings? And, what about the long term? Open-source alternatives are being developed. Will Cygnus be able to compete with the open-source alternatives? Especially when selling into the Linux market?
Time will tell, but I'd like to believe that when open-source alternatives are available, they will ultimately have more features that people need, they will be more stable and I would tend to choose them because I know I can depend on the source if I have a problem and the company peddling it has gone away, or no longer supports the product. I also wonder about releases of this product on different architectures and if I'll ultimately be somehow tied to using some set of Linux distributions to use closed-source products on Linux.
Don't get me wrong. I appreciate all that Cygnus does for open-source. I would like to understand their approach to the marketplace. If there is real data that supports their hybrid approach, I'd like to know about it. Perhaps Cygnus has studied it and sees that there are limitations to providing open-source support only and that to survive you need commercial closed-source products as well. Their original business model was support of open-source products and I'd like to know why they've modified this.
Re:I already have an IDE! (Score:2)
where is foo() defined? where is it declared? where's the next place it's used? what are the different signatures of functions named foo()?
you can answer these questions from your shell, yeah. but it takes some knowledge and application of regexps and grep and it takes some time to write these little "queries" and sift thru their results.
don't get me wrong, I'm not dissing the "vi-as-ide" method of programming. I've done a lot of it. but an IDE often gets you some of these features for free.
additionally, in good ide's you get an integrated debugger as well, and probably an improved compilation system that saves you from kludging up a whole bunch of ugly makefiles.
Give me emacs or give me death (Score:1)
Re:Open Source alternative (Score:1)
Re:ed is the standard (Score:1)
ed is the default editor! And ed doesn't waste space on my Timex Sinclair. Just look:
- -rwxr-xr-x 1 root 24 Oct 29 1929- -rwxr-xr-t 4 root 1310720 Jan 1 1970
- -rwxr-xr-x 1 root 5.89824e37 Oct 22 1990
----
best of both worlds anybody? (Score:1)
Shrinkwrapped copy for sale (Score:1)
C-Forge supports both Perl and PHP development (Score:1)
ObjC (Score:1)
C-Forge supports ObjectiveC development.
Best Regards,
Yuri Mironoff
Code Forge, Inc