ctrl+shift+p filters: :st2 :st3 :win :osx :linux
Browse

Doxy​Doxygen (evolution)

by 20Tauri ST2/ST3

Get the lastest DoxyDoxygen evolutions before everybody and help to create future.

Details

Installs

  • Total 1K
  • Win 627
  • OS X 311
  • Linux 533
Sep 19 Sep 18 Sep 17 Sep 16 Sep 15 Sep 14 Sep 13 Sep 12 Sep 11 Sep 10 Sep 9 Sep 8 Sep 7 Sep 6 Sep 5 Sep 4 Sep 3 Sep 2 Sep 1 Aug 31 Aug 30 Aug 29 Aug 28 Aug 27 Aug 26 Aug 25 Aug 24 Aug 23 Aug 22 Aug 21 Aug 20 Aug 19 Aug 18 Aug 17 Aug 16 Aug 15 Aug 14 Aug 13 Aug 12 Aug 11 Aug 10 Aug 9 Aug 8 Aug 7 Aug 6 Aug 5
Windows 1 2 1 0 0 0 0 1 0 1 1 0 1 0 0 1 0 0 1 2 1 0 1 0 1 0 0 1 2 1 0 0 0 1 1 0 1 1 0 0 0 0 0 1 1 0
OS X 1 1 0 0 2 1 0 0 0 0 0 0 0 0 1 0 2 0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 2 0 0 1 2 0 0 0 0 1 0 0 1
Linux 1 1 1 0 2 4 2 3 0 0 0 0 2 1 0 1 0 1 0 2 1 1 2 1 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 2 0 0 0 0 0 1

Readme

Source
raw.​githubusercontent.​com

Welcome to DoxyDoxygen

DoxyDoxygen is a plug-in for Sublime Text that aims to save a lot of time and effort when creating and updating documentation comments in source code.

How does it work ?

  • Write your code
  • Press Alt+Q (or /** + Enter), code is parsed and a skeleton documentation is written for you
  • Update your code
  • Press Alt+Q, documentation is updated

DoxyDoxygen can be easily configured to suit your needs.

Documentation is generated… Descriptions are written in your native language…

And, reading this manual you will discover even more features like on demand translation…

Usage

Create a documentation block

Start a documentation block (usually /**) before a declaration, then press Enter. The corresponding documentation will automatically be inserted. There are no keyboard shortcuts to memorize.

To be more efficient, you may also press Alt+Q (or Super+Alt+Q on OS X) after the function definition. A documentation block is written for you.

Types are automatically deduced from the code:

Even difficult to analyze programming languages are properly supported:

If a function has a template parameter, a @tparam property is automatically added:

And, of course, classes (with template or not) are also supported.

Update / wrap an existing documentation block

To update a comment, press Alt+Q (or Super+Alt+Q on OS X). As DoxyDoxygen knows the Doxygen commands, no invalid line break will be inserted.

Even better, with default settings, Alt+Q also reexamine the documented object and detects missing, renamed or moved parameters:

DoxyDoxygen preserves list with hierarchy. On update, spaces before an item are kept. A valid list item is a line that start with -#, -, + or *.

Example of valid list

/**
 * @return Error code
 *           - E_OK
 *           - E_ACCESS_DENIED
 *           - E_INTERNAL
 */

Example of invalid list

/**
 * @return Error code:
 *           E_OK
 *           E_ACCESS_DENIED
 *           E_INTERNAL
 */

Invalid list after an update

/**
 * @return Error code: E_OK E_ACCESS_DENIED E_INTERNAL
 */

Switch between comment styles

To switch between your preferred comment styles, press Shift+Alt+Q (or Super+Shift+Alt+Q on OS X).

You can also find more flexible commands in the Command Palette.

Extend a documentation block

Auto-completion

DoxyDoxygen allows auto-completion. A large set of commands is available,

Available commands depends of doc-style:

Only commands matching your configured doc-styles are suggested.

For example, to get the list of available commands, press @. Then, press Ctrl+Space to display the completion list.

Ctrl+Space is optional, but Sublime Text defaults settings deactivate completion in comment (see auto_complete_selector settings).

Comment continuation

As you can see on previous example, pressing Enter consecutively automatically continues the comment.

warning

On single line comment, comment continuation may appear as strange on the last line comment (///). The behavior is optional (see parameter continuation_on_last_comment). If activated, you can press Shift+Enter to stop continuation.

Navigate in documentation

Move to the right column

To ease navigation, press End (Super+Right on OS X) on end-of-line to go to the next column.

Follow references

warning

Doxygen file only (.dox)

You can move from a @ref tag to the referenced page or section using the goto_definition command (press F12 using Sublime Text default key bindings)

Fold / Unfold comments

You can Fold / Unfold comments blocks from the Command Palette or using Sublime Text standard shortcuts.

On Windows and Linux:

  • Ctrl+Shift+[: Fold
  • Ctrl+Shift+]: Unfold

On OS X:

  • Super+Alt+[: Fold
  • Super+Alt+]: Unfold

Translate

warning

Translations use network service. If you are behind a proxy, don't forget to configure it before using those features.

To translate selections, go to the Command Palette (Ctrl+Shift+P), then select DoxyDoxygen: Translate or DoxyDoxygen: Translate To to translate them.

tip

If a cursor is in a comment block (without selection), all descriptions of this comment will be translated.

Generate documentation

If you use Doxygen, you can generate your documentation directly from the Command Palette. An assistant will help you to download tools and configure your project.

note

Before command execution, DoxyDoxygen parses the Doxyfile file and extract all heading @INCLUDE. For each included file, an environment variable s generated. The name of this variable is: DOXYDOXYGEN_GENERATED_<base_name_without_extension>_PATH and its value is the path where the file is stored. This allows relative inclusion inside each included file (useful for footer…)

If the filename contains non alpha-numeric characters, they are replaced with _.

  • ../path/filename.ext defines a variable DOXYDOXYGEN_GENERATED_FILENAME_PATH with the value ../path
  • path/A@STRANGE!VALUE.ext defines a variable DOXYDOXYGEN_GENERATED_A_STRANGE_VALUE_PATH with the value path

tip

If you want to include it in your build chain, you can call this command from the command-line.

User Guide

Support

License

DoxyDoxygen may be downloaded and evaluated for free, however a license must be purchased for continued use. See End User License Agreement for further informations.