Documentation Insight 3 Sneak Preview #2

In previous preview, we experienced some brand new features in Documentation Insight 3, such as VS2012 presentation style, Inherited Documentation, Syntax Highlighter, Inheritance Hierarchy, etc. In this one, we will see two parts:

Part 1. Additional features about Documentation Generation.

1. FileName Policy

The new documentation generator supports three policies on file name generation:

* Signature

The generated file name will be basically same as the full name of a symbol.

e.g.  Spring.htm, Spring.IList(T).html

Special Rules:

a) For type parameters,  ‘<‘, ‘>’  will be replaced with ‘(‘ and ‘)’

b) If a method is not overloaded, its parameter type will not be added to the file name

c) For Operators, metadata name will be used.

* Unique Id

All file names will be random but unique id (like ‘a7ef980f.htm‘). All ids will be persisted into another file which will be loaded next time.

* Auto (Default)

By default,  the Signature policy will be used.  An unique id will be used and saved ONLY when a file name exceeds the max-path.

2. Lazy loading  for TableOfContents in Html

lazy-loading

Online demo:  http://devjetsoftware.com/demos/spring4d/

(P.S. you need to clear the browser cache if you have ever visited this url.)

3. Inherited documentation for property overrides

It will be very useful for component writers. for example:

PropertyOverridesSource

Generated doc:

PropertyOverrides

 

Part 2. New general features/improvements

External documentation repository

Documentation Insight 3 allows you to choose external documentation storage to keep source code clean. A fixed repository file (DocInsight.ini) will be placed in your project ROOT folder.

[Repository]
SourceDocsDir=SourceDocs

So no matter how you organized your projects in the directory, all source documentation files, which are organized by units, will be placed in the SourceDocs subfolder. (e.g. Spring.xml, Spring.Collections.xml)

A drawback is that the documentation will not be displayed in the built-in Help Insight feature. More details will be published in later documentation.

Documentation Inspector

* Automatically switch between Code Editor & Documentation Inspector when pressing the hotkey
* Auto focus and switch to design mode when shown

Documentation Explorer

* Document Member Summary

You will be able to document member summary just like enumerated members:

document-member-summary

* Sync with current project group

* Remember window state

* Improve Mouse wheel handling

Hotkeys
* Show Documentation Inspector (Ctrl+Shift+D)
* Show Documentation Explorer (Alt+Shift+N)
* Collapse documentation in the Code Editor (Alft+Shift+C)
* Expand documentation in the Code Editor (Alft+Shift+E)

Update options:
* Enable/Disable Automatic check for updates
* Update channel (Debug or Release)

New Generation Compiler

* Conditional defines (Initial conditional defines)
* Conditional expressions (e.g. {$IF defined(POSIX) and not defined(IOS)})
* Include file  (e.g. {$I jedi.inc})
* Search Paths
* Bug fixes

 

We will announce our Beta news on our Google Plus community, you are welcome to follow us on G+

https://plus.google.com/communities/113012729454639868890

Leave a comment