Как мне использовать команды Doxygen с опцией в качестве первого аргумента? - PullRequest
0 голосов
/ 13 июня 2019

У меня проблемы с пониманием некоторых команд Doxygen, принимающих параметры в качестве первого аргумента (используя вывод HTML) Здесь речь идет о команде \include, но я считаю, что ответы (если таковые имеются) будут применяться к другим командам.

Руководство говорит:

При желании вы можете добавить опцию {lineno}, чтобы включить номера строк для включенного кода.

Вы можете добавить опцию {doc}, чтобы рассматривать файл как документацию, а не как код.

Я не могу заставить это работать. Это:

\include doc path/to/my/file

отлично работает. Но содержимое файла рассматривается как код (что совершенно нормально), и на самом деле оно содержит некоторое сгенерированное содержимое, которое я хочу отформатировать как документацию.

Я попробовал это (да, не смейтесь, пожалуйста):

\include doc path/to/my/file
\include [doc] path/to/my/file
\include {doc} path/to/my/file
\include {[doc]} path/to/my/file
\include [{doc}] path/to/my/file

но ни одна из этих работ. И то же поведение с опцией lineno.

Чтобы завершить, я должен упомянуть, что руководство дает некоторую информацию о записи здесь :

Некоторые команды имеют один или несколько аргументов. Каждый аргумент имеет определенный диапазон:

Если используются фигурные скобки, аргумент является одним словом.

Если используются (круглые) фигурные скобки, аргумент продолжается до конца строки, в которой была найдена команда.

Если используются фигурные скобки, аргумент продолжается до следующего абзаца. Абзацы разделены пустой строкой или индикатором раздела.

Но я не понимаю, как это относится к приведенной выше цитате руководства по команде \include.

У кого-нибудь есть подсказка?

Версия Doxygen: 1.8.11 (последняя версия Ubuntu 16.04).

1 Ответ

1 голос
/ 13 июня 2019

Во-первых, нужно различать разные версии дооксида. В версии 1.8.11 нет опций, например, команда \include, они представлены в версии 1.8.15.

Синтаксис, например, для команда \include находится в 1.8.15:

\ include [{lineno, doc}]

в более новой версии это записывается как:

\ include ['{' option '}']

переписывание было сделано из-за неясности. Здесь (новая версия, но этот синтаксис действителен и для 1.8.15) квадратные скобки ([ и ]) сигнализируют о необязательности '{' и '}' сигнализируют, что фигурные скобки являются обязательными. Опция в этом случае может быть либо lineno, либо doc. кроме того, вы не видите пробела между \include и фигурными скобками, этого не должно быть, фигурные скобки являются частью команды. В случае наличия пробела он будет рассматриваться как конец команды, а { будет началом аргумента.

В случае \include с, скажем, именем файла xx.h мы можем иметь:

\include xx.h

\include{lineno} xx.h

\include{dox} xx.h

Это касается опций, другая цитата - об аргументах команды.

...