FAQ

This section contains the Frequently Asked Questions.

More questions can be found on GitHub. If you’re not familiar with GitHub, do not forget to click on Closed to consult the archives.

Can I call DoxyDoxygen from the command-line ?

Yes, you can. Use subl to do that.

subl is part of Sublime Text. It can be found in your Sublime Text install directory. Please refer to the Sublime Text documentation for further informations.

All commands described in the Commands from the palette section can be called.

New in version 0.53.0: It’s strongly advised to use doxy_chain_commands to chain commands (or use view’s ones) because it’s help to synchronize them.

Here some examples:

  • Build documentation:

    subl -b --command "doxy_build_documentation"
    
  • Update all documentation blocks using the preferred style:

    subl -b --command "doxy_select_comments {""kind"":""doxy""}"
    subl -b --command "doxy_update_comments {""reparse"":""False"", ""new_style"":""preferred""}
    
  • Comment the entity near the line 15 of the example.c file:

    rem Carriage returns are only here for readability. Please remove them.
    subl --command "doxy_chain_commands {""commands"": [
          [""window.doxy_open_file"", { ""file"":""path\\example.c"" }],
          [""window.goto_line"", { ""line"":""15"" }],
          [""view.doxy_comment_nearest_entity"", {}]
    ] }"
    
  • Comment all entities of the current file

    New in version 0.49.1: command_all

    subl --command "comment_all"
    

    Attention

    Auto-generated documentation intent to assist you in producing real documentation. You have to rework it and add more details.

    Using "comment_all", you will probably not take a look at the documentation blocks created.

Is it possible to disable default parameter description ?

To disable auto-fill, update your configuration file with one of the following lines:
  • "autofill_rules_default": [], to disable the default rules

  • "autofill_reliability_percentage": 0, to disable all rules

If you prefer to have no description, you can also try:

"autofill_rules": [
    {
        "parameter_description": [
            "."
        ]
    }
],

How can I switch to a different preferred_comment_style ?

See section Switch between comment styles.

Alternatively, using Enter, DoxyDoxygen use the first preferred style that match the language. To use a specific comment style, you have to start your comment style (ex: // =), then press Alt+Q.

Warning

For block styles, you have to close it before pressing Alt+Q in it.

Is it possible to add tags dynamically ?

New in version 0.27.

block_layout parameter may be context dependent. To set up a context dependent, you have to define a list of dictionaries.

Detail format of the block_layout parameter can be found in the Settings section.

Example

 "block_layout": {
     "Doxygen": [
        {
            "tags": [
                "@brief            I'm the {name} class"
            ],
            "context": [
                { "key": "name",      "operator": "regex_match",    "operand": "^_.*$" },
                { "key": "kind",      "operator": "equal",          "operand": "class" }
            ]
        },

        // Auto-fill description for getters
        {
            "tags": [
                "@brief            Get {name:doxy_words(1,);doxy_lower();}",
                "@return           {name:doxy_words(1,);doxy_capitalize();}"
            ],
            "context": [
                { "key": "name",      "operator": "regex_match",          "operand": "get[A-Z_].*" },
            ]
        },

        // File Header integration
        {
            "tags": [
                "@brief            I'm a file header and my name is {file_base_name}",
                "",
                "@author           {user_name}",
                "",
                "@date             {now:%d-%b-%Y}"
            ],
            "context": [
                { "key": "row",      "operator": "equal",          "operand": "0" },
                { "key": "kind",     "operator": "equal",          "operand": "" }
            ]
        },

        // Compact style if there's less than one parameter
        {
            "tags": [
                "@brief",
                "@param",
                "@tparam",
                "@return",
                ""
            ],
            "context": [
                { "key": "nb_params", "operator": "lower_than",     "operand": "2" }
            ]
        }

        // You don't have to be exhaustive.
        // If no rule match, 'block_layout_default' is considered
    ]
}

Why there’s no alignment on Enter ?

This point was first discussed on Git “How to go to next line without breaking TAB order ?”.

Tip

Not recommended.

You probably want to chain doxy_enter and doxy_go_to_eol. So, you can try to override the Enter key binding.

{
    "keys": ["enter"],
    "command": "doxy_chain_commands",
    "args": {
        "commands": [
            ["view.doxy_enter" ],
            ["view.doxy_go_to_eol" ],
        ]
    },
    "context":
    [
        { "key": "auto_complete_visible", "operator": "equal",  "operand": false,       "match_all": true },
        { "key": "selector",              "operator": "equal",  "operand": "comment, string.quoted.double.block.cython, string.quoted.single.block.cython, string.quoted.double.block.python, string.quoted.single.block.python", "match_all": true }
    ]
},

How to show documentation on hover ?

Discussed on Github, DoxyDoxygen currently not support this feature but others plugins provide this feature.

For example C++ users can use EasyClangComplete package and enabling show_type_info. It picks up the Doxygen style comments that you can generate with this plugin and shows them in a tool-tip.