Tree [2dacab] master /

File Date Author Commit
 CONTRIB 2012-10-15 freequaos freequaos [42c15c] (ENHANCE) Add a tcl script to create InnoSetup ...
 config 2009-01-27 freequaos freequaos [1300e6] (INTERNAL) Use AC_MSG_WARN instead of AC_MSG_ER...
 db4 2011-03-08 freequaos freequaos [67e540] Merge remote-tracking branch 'remotes/SN-NG4.2-...
 itcl 2011-04-01 freequaos freequaos [8edd1c] (INTERNAL) Remove unneeded itcl/iwidgets3.0.0 f...
 libgui 2008-05-04 thornbem thornbem [0ff016] Autotools:
 snavigator 2012-11-01 freequaos freequaos [2ef3ce] (INTERNAL) Document dbimp pointer fun a little bit
 tcl 2013-01-30 freequaos freequaos [2dacab] (BUGFIX) Fix long-standing tcl compile errors f...
 tix 2009-01-21 freequaos freequaos [9e5a37] (ENHANCE) Merge SN-NG3-fsstnd branch and improv...
 tk 2010-07-07 freequaos freequaos [1b131f] (BUGFIX) Fix missing maximize buttons in SN
 CHANGELOG 2012-10-14 freequaos freequaos [521d50] (INTERNAL) Make CHANGELOG for NG4.5
 CONTRIBUTORS 2012-10-15 freequaos freequaos [1a105c] (INTERNAL) Add Andres Garcia to CONTRIBUTORS
 COPYING 2007-06-26 freequaos freequaos [f7c1e4] (ENHANCE) Update autoconf et al to newer versions
 INSTALL 2011-03-07 freequaos freequaos [43e5f5] (BUGFIX) Alter win32 building instructions to i...
 MAINTAINERS 2007-05-02 freequaos freequaos [2f6341] (INTERNAL) Move snavigator/MAINTAINERS to root ... 2007-08-10 freequaos freequaos [90d015] (BUGFIX) dirty fix for mingw/msys building for ...
 README 2009-01-31 freequaos freequaos [338f3f] (INTERNAL) Fix README wrongly referencing NEWS ...
 SVN_CHANGELEVELS 2007-04-04 freequaos freequaos [3e29d2] (INTERNAL) Add docs about wanted toplevel svn c...
 TODO 2011-02-28 freequaos freequaos [3a36ed] (INTERNAL) Update TODO issues
 compile 2007-06-26 freequaos freequaos [f7c1e4] (ENHANCE) Update autoconf et al to newer versions
 config.guess 2007-06-26 freequaos freequaos [f7c1e4] (ENHANCE) Update autoconf et al to newer versions
 config.sub 2007-06-26 freequaos freequaos [f7c1e4] (ENHANCE) Update autoconf et al to newer versions
 configure 2009-01-21 freequaos freequaos [9e5a37] (ENHANCE) Merge SN-NG3-fsstnd branch and improv... 2009-01-21 freequaos freequaos [9e5a37] (ENHANCE) Merge SN-NG3-fsstnd branch and improv...
 depcomp 2008-05-04 thornbem thornbem [0ff016] Autotools:
 install-sh 2007-06-26 freequaos freequaos [f7c1e4] (ENHANCE) Update autoconf et al to newer versions
 missing 2007-06-26 freequaos freequaos [f7c1e4] (ENHANCE) Update autoconf et al to newer versions
 mkinstalldirs 2007-06-26 freequaos freequaos [f7c1e4] (ENHANCE) Update autoconf et al to newer versions

Read Me

This is Source-Navigator NG, an IDE for C/C++/Fortran/Java/Tcl/PHP/Python
and a host of other languages. It includes powerful
source code comprehension features that help a developer understand
complex relationships between elements of a program's source.

Source-Navigator NG is a fork of the original Source-Navigator and it is 
released under the terms of the GPL; see the COPYING file for more 
information about the GPL.

The Source-Navigator NG project is hosted at

A number of public mailing lists are available to answer general end
user questions, as well as developer's questions. Go to the project
website to find more information about the mailing lists.

One can find documentation in the snavigator/doc/html
directory. Documentation is available in HTML format only.

Consult the INSTALL.TXT file to learn how to build and install
binaries of Source-Navigator.

Consult the CHANGELOG file to learn about recent modifications to


We have removed the license manager from Source-Navigator. You will no
longer need to have a license key to run this product.

Access to Cross-Reference Information 

- Source-Navigator parses and builds a project database in two steps.  
The first step is to build the project's symbol tables.  A progress
bar is displayed during this time, when complete, the application 
will display the browser windows.  Phase 2 is when the cross-
referencing (XRef) info is computed.  Source-Navigator will continue 
to build the cross reference database in the background.  While 
building the cross reference database, the cross reference icon will 
not be accessible in the toolbar, and the application will be less
responsive.  Once the cross reference database is built, the
application performance will return to normal.  You can locate such
identifiers with the Grep tool.

C Parser Issues

- C declarations that are generated by a macro are not detected 
correctly by the C and C++ parser.  For example:

	#define EXTERN(type, array) extern type array[]

	EXTERN(char, mybuffer);

In this example, the parser should pick up information about a global 
variable called "mybuffer" whose type is char[].  However, it doesn't.

Tcl Cross-Referencing and Common Tcl Commands

- The following Tcl, Tk, and [incr Tcl] common commands are not put into 
the cross-reference (XRef) database:

append       eval      itcl_class   objects    string
args         exists    itcl_info    parray     switch
array        expr      itk          previous   this
binary       file      iwidgets     private    tkinfo
body         for       join         proc       unset
break        foreach   lappend      protected  uplevel
catch        format    lindex       public     upvar
class        gets      local        rename     variable
common       glob      lrange       return     virtual
concat       global    lreplace     regexp     vwait
configbody   if        lsearch      regsub     while
constructor  incr      lsort        scan       winfo
continue     info      lstat        set        @scope
default      inherit   method       source     #auto
delete       isa       namespace    split
destructor   itcl      object       stat

Windows Menus

In Windows Menus, the '^' symbol means Ctrl and 'x' next to a 
letter means Alt plus that letter.

Multiple Machine Issues

- If you build a project on machine A with sources rooted at /foo 
and real path /disk/user/foo, Source-Navigator will store these 
files in the project as being rooted at /disk/user/foo, not /foo.  
If you try to access these files from machine B, where 
/usr/disk/foo is not visible, you will get an error.  

- If you instruct Source-Navigator scan /usr/include for C and C++ projects,
the contents will be machine specific.  It is important to keep
these issues in mind when accessing common projects from different

- If you have a heterogeneous environment, or if two machines have 
a different perspective on the disk/filesystem layout, there may 
be problems sharing projects between the two machines.

- If Source-Navigator is built on a Digital UNIX system, projects
created by the Digital UNIX system will not be readable on other
operating systems, and projects created by other operating systems
will not be readable on a Digital UNIX system.

Using CVS as a version control system

- In order for CVS to work properly, your project file needs to be
one of two places:

	- In the same directory as the source files. This only works
	if your project has no subdirectories.
	- In the directory where the toplevel of your source tree is.
	Basically, the relative path from your project to each of your
	source files has to be the same as the relative path from the
	CVSROOT to the files on the repository.

Running the generated executable on UNIX

When configuring your executable command line in the Edit Target dialog,
if your executable expects stdin or terminal input, the application will
hang waiting for the input. To fix this, add a command like:

xterm -e myapp

in this dialog. Make sure that xterm is on your path. Now, when you hit
"Run" from the Make window, your application will run.

If you need to debug your application with Insight, however, you will need
to remove "xterm -e" from your command line in the Edit Target window.