14

我在 Doxygen 中创建了许多自定义页面。我想自定义主菜单中页面的顺序。下面是我当前导航菜单的图片。我想更改顺序,因此先是概述,第二是安装,第三是简介,等等。有没有办法做到这一点?

在此处输入图像描述

4

5 回答 5

6

经过一番调查,似乎 Doxygen 目前不支持以自定义(或任何)方式对页面进行排序。

正如@Toby 所提到的,在 Doxygen 中确保所需页面顺序的当前方法是确保以相同的顺序解析页面条件(\page)。例如,您可以通过手动指定文件来实现所需的顺序,例如:

INPUT = Developers.dox \
        Hive_Training.dox \
        Installation.dox \
        Introduction.dox \
        Models.dox \
        Overview.dox \
        Users.dox \
        Files.dox

这一点都不理想,但它确实有效。我发现,如果您希望在 Doxygen 配置文件中使用目录路径,您可以创建一个“页面顺序”文件,以便在任何其他内容之前先解析。例如:

INPUT += PageOrder.dox
INPUT += ../my_module_1/content/
INPUT += ../my_module_2/content/

然后将所有页面引用添加到PageOrder.dox文件中:

\page developers Developers
\page hive_training Hive Training
\page installation Installation
\page introduction Introduction
\page models Models
\page overview Overview
\page users Users
\page files Files

这又是不理想的;但是,您的维护过程现在驻留在单页订单文件中(而不是接触一 (1) 个或多个 Doxygen 配置文件)。

于 2013-09-26T18:12:39.223 回答
5

Doxygen 按字母顺序处理自定义页面文件名。

因此,您可以将自定义页面文件命名为:

  • _1_file1.dox
  • _2_file2.dox
  • ETC...

结果,它们将在生成的文档中以相同的顺序出现。此解决方案避免修改任何配置文件!

于 2013-10-24T07:56:29.573 回答
2

我找到了一种相当麻烦的方法来实现这一点。以前,我将所有自定义 doxygen 文件(图像、页面等)放在一个名为 input 的目录中。

我的每个页面都在一个单独的文件中(例如 main_page.dox、page1.dox、page2.dox 等)

我将自定义页面移动到与输入目录处于同一级别的名为 pages 的单独目录中。

(我还将输入目录重命名为图像,并IMAGE_PATH相应更改)

然后,在 doxygen 配置文件中,我按照我想要的顺序将每个页面文件的显式路径添加到INPUT变量中。例如:

INPUT= . Documentation\images \ 
      Documentation\pages\main_page.dox \
      Documentation\pages\page2.dox \
      Documentation\pages\page3.dox

这意味着每次我添加一个新页面时,我都必须将其路径添加到INPUT,所以正如我在顶部所说的那样,这很麻烦。但比在介绍等之前出现结论要好

这适用于 HTML 和 LaTeX - 尚未使用其他格式进行测试

于 2013-08-14T11:15:15.263 回答
2

我知道这个问题已经很老了,但它是 2017 年,我仍然没有找到令人满意的答案......由于这是第一次搜索命中,我想我仍然应该把我的解决方法留在这里。

我认为最简单和最不麻烦的方法是通过单个页面的间接性,其中包含所有自定义页面作为子页面。这保留了输入顺序,例如 ->

@page page_contents Contents
@tableofcontents
@subpage page_intro Intro
@subpage page_install Install
@subpage page_system System

在此处输入图像描述

于 2017-05-12T07:57:36.097 回答
2

对 HTML/CHM 输出进行分组的一种方法是通过嵌套在不同文件中的 @page 和 @subpage 元素。

所以我过去所做的是有一个登陆页面加上几个定义部分布局的“结构”页面。每个参考都需要在自己的文件中。

例如:

\mainpage
# Welcome to my main page #
Some text
\subpage IntroductionSection
\subpage DetailsSection
\subpage SamplesSection

然后为每个子时代建立一个结构,例如(IntroStructure.md)

Introduction {#IntroductionSection}
===============
# An introduciton to the topic #
\subpage GettingStarted
\subpage HowTo
\subpage DeepDive

请注意,每个子页面都需要再次使用 Deep Dive {#DeepDive} 引用。

这就是我处理大量降价文档的方式。尽管您有一定的文件开销,但对 html/ chm 非常有效。

在此处输入图像描述

于 2017-08-25T10:15:38.870 回答