Ответ 1
Как уже упоминалось здесь и здесь,
- Собственная поддержка С++ для Sphinx связана с подсветкой/форматированием/ссылкой, а не с извлечением документации внутри кода.
- breathe разработал из обсуждения, что chrisdew ссылается на
[Редактировать добавлено ниже]:
Я тестировал инструментарий doxygen + дышать + sphinx на мульти-10k С++ библиотека, состоящая из 10 различных модулей/доменов. Мой нижний строка:
- еще не полностью используется
- но продолжайте смотреть
- и, самое главное, подумайте о том, чтобы посвятить некоторое время себе, если вы в настоящее время ищете ценный проект OSS, который заслуживает ваше время.
Позвольте мне уточнить эти моменты:
-
У меня были проблемы с:
- Разметка Latex в разметке doxygen (не поддерживается в настоящее время, но должна быть легко реализована)
- Некоторые ошибки парсера (несколько определений заголовков функций), которые, по-видимому, вызывают ошибки в синтаксическом анализаторе sphinx, но не создавайте проблем, если я их тестирую в блоках кода sphinx С++ напрямую. Не знаю, на чем трудность фиксации, но это серьезный функциональный выключатель.
- Некоторые проблемы с перегруженными идентификаторами. Кажется, есть какая-то поддержка для адресации функций с одинаковым именем в разных классах и/или пространства имен и/или doxygen xml выходные файлы. Но показ или ссылка на один из 10 перегруженных конструкторов в одном классе кажется недопустимый банкомат. В случае ссылки/связывания существует даже параллель (возможно временное) ограничение уровня сфинкса, которое может дышать, может или не может быть в состоянии обойти.
- В настоящее время невозможно показать все (или все защищенные/частные) членов класса. Это было каким-то образом введено с другим исправлением и должен быть действительно тривиальным для ремонта.
-
В более общем смысле, имейте в виду, что это ATM - это мост к Doxygen's xml. Это не следует понимать таким образом, чтобы оно точно выводить то, что делает doxygen, только с вышеуказанными ограничениями. Скорее, он предлагает вам ровно, не более, не менее, возможности
- выгружать все в одном домене doxygen на одну гигантскую страницу
- показать конкретные функции, члены, структуры, перечисления, typedefs или классы, которые, однако, должны быть указаны вручную. Существует вилка на github которые могут или не могут решить эту общую концептуальную проблему, но никаких намеков на будущее нет.
-
По моему мнению, полностью функциональный дым заполнит большой пробел и открыть довольно прохладную дорогу. Поэтому стоит посмотреть только из-за потенциальный выигрыш.
-
С грустью кажется, что поддержка через создателя сильно опустится в будущем. Поэтому, если вы работаете в компании и можете убедить ваш босс, который дышит, подойдет ему или у вас будет свободное время и ищет действительно ценный проект, подумайте о том, чтобы дать ему вилку!
В качестве конечного указателя также обратите внимание на doxylink contrib project для сфинксов, который может обеспечить промежуточное решение: создать окружающий учебник структура, которая ссылается на старую доксигенную документацию (css-style) (я думаю, вы могли бы даже ввести тот же заголовок в сфинкс, а поверх доксигенная документация для look'n'feels). Таким образом, ваш проект сродство к сфинксу, и когда дышат полностью там, вы готовы Прыгнуть на. Но опять же: подумайте о том, чтобы показать, как дышит какая-то любовь, если она соответствует вашей повестке дня.