[logo] Code Crusader
   
Home     
* Cart

Introduction

Demo

Features
    Overview

    Languages

    Project

    Version Control

    Editor

    OOP

    Documentation

    API's

    Miscellaneous

    Known bugs

    Next release
    Future plans

    Projects

Screenshots

Who uses it

FAQ

Other software

What's new!

Log in  

   
      
  license(s) for 
Code Crusader IDE provides a great value and includes both Code Crusader and Code Medic!
     

Projects for the Bazaar

If there is a Contact for a particular project, then that person is working on it, though possibly quite slowly, so don't hesitate to offer to help out if you're interested. If there is no Contact, then nobody is working on the project, so you can claim it by joining the mailing list and starting a design discussion.

If you make a significant contribution to Code Crusader, either by submitting code or by working closely with us to track down a subtle bug, then you are automatically entitled to a free copy of the next release.


I spent most of the afternoon pouring though your design. Never have I seen such cleanly written code. The flexibility of your design is wonderful.
-- Glenn H. Jenkins


Other Languanges
(Ada, Eiffel, FORTRAN, Objective C, Perl, Python, Matlab, 4GL, etc.)

We have received requests for all of these languages. Code Crusader can already help you develop in these languages because it provides a powerful editor and an interface to make. It just doesn't provide all the amenities.

In principle, it should not be difficult to provide context-sensitive highlighting and a class inheritance tree (when appropriate) for each one. However, it requires writing a lexer (via flex) for context-sensitive highlighting (refer to CBCStyler and CBCScanner for an example) and a parser for the class tree (refer to parseCC(), CBCTreeDirector, CBCTree, and CBCClass for an example). This needs to be done by somebody who understands and uses the language so it can be implemented correctly and tested thoroughly. If you are fluent in both C++ and another language and are interested in working closely with us on this project, please consider helping out.

Note that for FORTRAN, you will have to require whitespace between keywords, unlike the ANSI standard. For Perl, a flex lexer is not sufficient, but it should be possible to build a wrapper around the actual lexer used by Perl. This has the additional advantage that one can instantly upgrade whenever Larry Wall releases a new version.

If you want to tackle a really big job, you could help add support for the language to the Code Medic debugger.


Import Makefiles

An arbitrary Makefile cannot be converted into a Code Crusader project because make provides a powerful language with far more options than Code Crusader can handle. However, it would still be very helpful if Code Crusader could look at a Makefile and either create a project from it or tell the user that it can't handle it.

Indenting styles

It's always nice when the editor automatically indents things just the way you like it!

Note that Character Actions can handle most, if not all, common styles.


Smalltalk-style Class Browser

This interface provides access to the source code on a per function basis instead of per source file. A good example is Object Master. (screenshot) etags may be able to extract the function locations. If not, this will require finding a real C++ parser because the one for the existing C++ class tree can only handle class declarations in header files.

Function Call Tree

This starts from main() and builds a tree of function calls. One can then jump to the source code by double clicking on a node in the tree. This can be very useful while reverse engineering C code.

There are various free C programs out there which implement this in a textual manner. If somebody added an output format to one of these program and wrote the code to read it into Code Crusader, we're willing to do the work required to generalize the existing C++ class tree to handle the display of the Call Tree.

So far, we know of the following programs:


UML

Quote from the UML web site: The Unified Modeling Language (UML) is the industry-standard language for specifying, visualizing, constructing, and documenting the artifacts of software systems.


Code Coverage Tools

Is it possible to automate such tools? They help you thoroughly test your programs so you know that every branch has been tried. The best way to handle this is probably to write a separate suite of programs to handle various languages and situations. (e.g. command line vs GUI) Here are some web pages with information:


Embedded Scripting Language

This would allow you to do absolutely anything to the text in an editor window. Andrej Falout suggested using a C interpreter, like the one in GWD. Other C interpreters include the ones in CINT, EiC, ups, and xcoral. Others might be buried somewhere in the Catalog of Free Compilers and Interpreters.


Interface to GNU Info pages

This would allow browsing the GNU Info pages in the same way that one can currently browse the UNIX man pages. Would it make more sense just to use TkMan?


Other Platforms
(Windows®, BeOS®, etc.)

We have received requests for porting to other platforms. In principle, this should be possible, once a thin Xlib layer is written on top of the native system libraries, and ACE is ported. This is discussed more thoroughly on this web page.


Projects for the underlying library

Copyright © 2010 New Planet Software