Source Insight 4.00.0118
Source Insight 4.00.0118
Source Insight is a powerful project-oriented programming editor, code browser, and analyzer that helps you understand code, while you work and plan. Learn an existing code base quickly, and get up to speed on new projects. Evaluate the costs of potential changes by seeing where functions and objects are used. See class inheritance and function call trees.
Quickly Navigate
Source Insight parses your whole project and let's you navigate and edit code like a breeze, while showing you information automatically. Jump easily to callers of functions or references to variables.
Discover
See where functions and variables are used. Source Insight automatically shows references to functions, variables, classes, and more - almost instantly. Search across your project using advanced search features.
Key Benefits
Helps to understand an existing code base.
Quickly navigate function calls and callers.
Find references to functions, variables, and more - almost instantly.
See call graphs and class tree diagrams.
Preview function and class definitions without having to open a file.
See live references to variables and other declarations with Syntax Formatting.
Powerful editing features, including code snippets, symbolic auto-completion, and smart-rename.
Dynamic information panels work together to create a productive workflow.
Powerful Editing
Use powerful editing features, including code snippets, symbolic auto-completion, and smart-rename.
Code Analysis
Source Insight parses your source code and maintains its own database of symbolic information dynamically while you work, and presents useful contextual information to you automatically. Source Insight also can display reference trees, class inheritance diagrams, and function call trees. Source Insight has a group of auxiliary panel windows that work together to give you quick and useful navigation of source code and source information.
Always Up-To-Date Symbol Information
Because programs are constantly under development, it’s important that even symbols in code that will not compile can be browsed in with up-to-date accuracy. Source Insight maintains its symbol database to provide browsing features instantly, without having to compile the project or having to depend on the compiler to provide browser files. Source Insight quickly and un-intrusively updates its information about your files, even while you edit code. Furthermore, the symbol features are built into each Source Insight project automatically. You don’t need to build any extra tag files.
Call Graphs
The Relation Window is a Source Insight innovation that shows interesting relationships between symbols. It runs in the background in its own panel window and tracks what symbols you have selected. It can show class hierarchies, call trees, reference trees, and more.
Class Inheritance Display
You get information automatically in the background while you work, but you can interact with the Relation window when you want to.
The Relation Window can be viewed either graphically, or in outline format. You can also have several Relation Windows open, each showing different types of information.
Automatic Display of Declarations
Source Insight 2.0 introduced an innovative feature called the Context Window. The Context Window automatically displays symbol definitions based on what identifier your cursor is in, or what symbol or file is selected in any panel.
The Context Window updates in the background and tracks what you are doing. You can click on an identifier, and the Context Window will automatically show the symbol’s definition. If the identifier is a variable, the Context Window will decode its declaration to show you its base structure or class type.
The Context Window automatically previews files selected in the Project Window, references and symbols in the Relation Window, and more.
Contextual Syntax Formatting
Syntax Formatting is an important Source Insight innovation that renders information in a dense, yet pleasing and useful way. It provides vastly improved display capabilities, including full rich text formatting with user-defined styles. Source Insight applies styles automatically based on lexical and symbolic information about your project. You can fully customize the style formatting.
Formatting Conveys Information
Unlike simple syntax highlighting, the formatting applied to identifiers is based on their scope and declared types. In this example, you can tell the difference between class members and file-scope symbols due to the formatting.
Customizable Styles
You have control over Syntax Formatting styles, which are automatically applied to source code elements based on parsing and scoping rules. You can set formatting options for many types of syntax elements and identifiers. You can drammatically change the look of your source code.
Helpful Syntax Decorations
Source Insight can automatically add extra decorations to your code to improve its display.
Common operators, such as the pointer dereference right arrow (->), or the assignment operator (=) can be replaced with symbolic operators, such as arrows.
Nested parentheses are shown in different sizes to make it easier to identify matching sets.
An up or down arrow appears in goto statements, to point in the direction of the target label.
Automatic "end brace" annotations are added to the closing curly brace in C/C++/C# and Java code. This makes it easier to understand nested if, while, switch, and other blocks of code.
Source Insight can highlight references to the symbol at the cursor position. For example, you can click in a variable name, and all references to the variable will be highlighted. The references are context sensitive, so a symbol in a different scope will not get highlighted. This works for variables, class members, functions, and so on. This is an option that is controlled by file type.
Multiple Visual Themes
Source Insight comes with multiple Visual Themes for colors and fonts. You can switch themes quickly, or create your own. Visual Themes bundle all the color and font settings, plus syntax formatting styles.
You can also selectively customize individual panels. Source Insight has many color and font options.
Fix: C/C++: Some casts were not understood. For example: ((foo *)ptr)->member... Also added better understanding of static_cast<>, dynamic_cast(), etc.
Fix: C/C++: multiple declarations within a for-statement were not recognized. For example: for (int i = 0, j = 0; ... ; ...) { ... }
Fix: ANSI C: in a nested struct, the inner struct name is also defined and in scope outside the outer struct, whereas in C++ it's defined only within the scope/namespace of the outer struct. The "ANSI C" language type in Source Insight now supports this correctly. If you use pure C code, consider changing the File Type Options to associate *.c and *.h with the "C Source File" type, and not the "C/C++ Source File" type. (see File Type Options)
For example:
struct Outer { struct Inner { ... }; };
struct Inner foo; // you can refer to Inner outside of Outer in C
Fix: C/C++: Parsing bug when using a token macro that expands to a try or catch block.
Fix: Sometimes the Relation window and Search Results didn't show a proper function name, but would instead show something like "if (condition...)..." which is actually a snippet of an if or while statement contained within the function in question.
Fix: C#: some generic classes were not parsed correctly.
Fix: Auto-completion was not proposing struct members for some nested structs.
Fix: Perl: many fixes to parsing and syntax formatting.
Fix: If a block of code was collapsed, searching or jumping to a definition would not expand the blocks to reveal the target line.
Fix: Scrolling down using Page-Down, and then Page-Up did not return to the same line number at the top of the window.
Fix: In some conditions, you might be prompted to reload a file that has changed, when in fact the file had not changed.
Fix: Context window was tracking identifiers inside string literals. The default setting was supposed to turn this off.
Fix: Formatting: references to member functions were not always styled with the correct "Ref To Method" style.
Fix: File Compare window: some keyboard commands were not working.
Fix: Stability fixes.
Performance: Initial startup and Load Configuration was sped up.
Performance: Small speed up in Lookup References and Relation Window.
Performance: Improved display update speed while typing when the Overview control is visible.
New: You can disabled text scaling with CTRL+Mouse Wheel. Normally mouse-wheel plus the CTRL key scales text. Select Options > Preferences > General and use the option that reads "Allow Ctrl+Mouse Wheel to scale text".
Fix: C/C++: multiple declarations within a for-statement were not recognized. For example: for (int i = 0, j = 0; ... ; ...) { ... }
Fix: ANSI C: in a nested struct, the inner struct name is also defined and in scope outside the outer struct, whereas in C++ it's defined only within the scope/namespace of the outer struct. The "ANSI C" language type in Source Insight now supports this correctly. If you use pure C code, consider changing the File Type Options to associate *.c and *.h with the "C Source File" type, and not the "C/C++ Source File" type. (see File Type Options)
For example:
struct Outer { struct Inner { ... }; };
struct Inner foo; // you can refer to Inner outside of Outer in C
Fix: C/C++: Parsing bug when using a token macro that expands to a try or catch block.
Fix: Sometimes the Relation window and Search Results didn't show a proper function name, but would instead show something like "if (condition...)..." which is actually a snippet of an if or while statement contained within the function in question.
Fix: C#: some generic classes were not parsed correctly.
Fix: Auto-completion was not proposing struct members for some nested structs.
Fix: Perl: many fixes to parsing and syntax formatting.
Fix: If a block of code was collapsed, searching or jumping to a definition would not expand the blocks to reveal the target line.
Fix: Scrolling down using Page-Down, and then Page-Up did not return to the same line number at the top of the window.
Fix: In some conditions, you might be prompted to reload a file that has changed, when in fact the file had not changed.
Fix: Context window was tracking identifiers inside string literals. The default setting was supposed to turn this off.
Fix: Formatting: references to member functions were not always styled with the correct "Ref To Method" style.
Fix: File Compare window: some keyboard commands were not working.
Fix: Stability fixes.
Performance: Initial startup and Load Configuration was sped up.
Performance: Small speed up in Lookup References and Relation Window.
Performance: Improved display update speed while typing when the Overview control is visible.
New: You can disabled text scaling with CTRL+Mouse Wheel. Normally mouse-wheel plus the CTRL key scales text. Select Options > Preferences > General and use the option that reads "Allow Ctrl+Mouse Wheel to scale text".
Only for V.I.P
Warning! You are not allowed to view this text.