Skip to content

Commit fe794da

Browse files
committed
mkdoxy fork + further docs + doxygen-awesome-css (for reference and testing)
1 parent e67fac3 commit fe794da

13 files changed

Lines changed: 680 additions & 398 deletions

.gitmodules

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
[submodule "docs/style/doxygen-awesome-css"]
2+
path = docs/style/doxygen-awesome-css
3+
url = https://github.com/SpectraL519/doxygen-awesome-css.git

Doxyfile

Lines changed: 12 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -687,7 +687,7 @@ INLINE_INFO = YES
687687
# name. If set to NO, the members will appear in declaration order.
688688
# The default value is: YES.
689689

690-
SORT_MEMBER_DOCS = YES
690+
SORT_MEMBER_DOCS = NO
691691

692692
# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the brief
693693
# descriptions of file, namespace and class members alphabetically by member
@@ -707,7 +707,7 @@ SORT_BRIEF_DOCS = NO
707707
# detailed member documentation.
708708
# The default value is: NO.
709709

710-
SORT_MEMBERS_CTORS_1ST = NO
710+
SORT_MEMBERS_CTORS_1ST = YES
711711

712712
# If the SORT_GROUP_NAMES tag is set to YES then doxygen will sort the hierarchy
713713
# of group names into alphabetical order. If set to NO the group names will
@@ -1240,15 +1240,15 @@ IGNORE_PREFIX =
12401240
# If the GENERATE_HTML tag is set to YES, doxygen will generate HTML output
12411241
# The default value is: YES.
12421242

1243-
GENERATE_HTML = NO
1243+
GENERATE_HTML = YES
12441244

12451245
# The HTML_OUTPUT tag is used to specify where the HTML docs will be put. If a
12461246
# relative path is entered the value of OUTPUT_DIRECTORY will be put in front of
12471247
# it.
12481248
# The default directory is: html.
12491249
# This tag requires that the tag GENERATE_HTML is set to YES.
12501250

1251-
HTML_OUTPUT = .
1251+
HTML_OUTPUT = html
12521252

12531253
# The HTML_FILE_EXTENSION tag can be used to specify the file extension for each
12541254
# generated HTML page (for example: .htm, .php, .asp).
@@ -1275,7 +1275,7 @@ HTML_FILE_EXTENSION = .html
12751275
# of the possible markers and block names see the documentation.
12761276
# This tag requires that the tag GENERATE_HTML is set to YES.
12771277

1278-
HTML_HEADER =
1278+
HTML_HEADER = docs/style/header.html
12791279

12801280
# The HTML_FOOTER tag can be used to specify a user-defined HTML footer for each
12811281
# generated HTML page. If the tag is left blank doxygen will generate a standard
@@ -1315,7 +1315,7 @@ HTML_STYLESHEET =
13151315
# documentation.
13161316
# This tag requires that the tag GENERATE_HTML is set to YES.
13171317

1318-
HTML_EXTRA_STYLESHEET =
1318+
HTML_EXTRA_STYLESHEET = docs/style/doxygen-awesome-css/doxygen-awesome.css
13191319

13201320
# The HTML_EXTRA_FILES tag can be used to specify one or more extra images or
13211321
# other source files which should be copied to the HTML output directory. Note
@@ -1325,7 +1325,11 @@ HTML_EXTRA_STYLESHEET =
13251325
# files will be copied as-is; there are no commands or markers available.
13261326
# This tag requires that the tag GENERATE_HTML is set to YES.
13271327

1328-
HTML_EXTRA_FILES =
1328+
HTML_EXTRA_FILES = \
1329+
docs/style/doxygen-awesome-css/doxygen-awesome-darkmode-toggle.js \
1330+
docs/style/doxygen-awesome-css/doxygen-awesome-fragment-copy-button.js \
1331+
docs/style/doxygen-awesome-css/doxygen-awesome-paragraph-link.js \
1332+
docs/style/doxygen-awesome-css/doxygen-awesome-interactive-toc.js
13291333

13301334
# The HTML_COLORSTYLE tag can be used to specify if the generated HTML output
13311335
# should be rendered with a dark or light theme.
@@ -1663,7 +1667,7 @@ DISABLE_INDEX = NO
16631667
# The default value is: NO.
16641668
# This tag requires that the tag GENERATE_HTML is set to YES.
16651669

1666-
GENERATE_TREEVIEW = YES
1670+
GENERATE_TREEVIEW = NO
16671671

16681672
# When both GENERATE_TREEVIEW and DISABLE_INDEX are set to YES, then the
16691673
# FULL_SIDEBAR option determines if the side bar is limited to only the treeview

Makefile

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
# Default to 'dev' if TAGS is not specified on the command line
22
TAGS ?= dev
33

4-
.PHONY: docs serve-docs clean-docs clean
4+
.PHONY: docs serve-docs clean-docs clean doxy clean-doxy
55

66
# Example usage: `make docs TAGS="v2.0.0 latest --update-aliases"`
7+
# uv run python scripts/gen_concept_docs.py --config docs/concepts_cfg.json --xml documentation/xml --out docs/cpp-gl
78
docs:
89
@echo "==> Deploying MkDocs documentation locally via mike (Tags: $(TAGS))..."
910
doxygen Doxyfile
10-
uv run python scripts/gen_concept_docs.py --config docs/concepts_cfg.json --xml documentation/xml --out docs/cpp-gl
1111
uv run mike deploy $(TAGS)
1212
@echo "==> Documentation deployed to local gh-pages branch."
1313

@@ -21,3 +21,13 @@ clean-docs:
2121
rm -rf documentation/
2222

2323
clean: clean-docs
24+
25+
doxy:
26+
@echo "==> Building Doxygen documentation..."
27+
doxygen Doxyfile
28+
uv run python scripts/postprocess_doxyhtml.py documentation/ --img-rules docs/style/img_style_rules.json
29+
@echo "==> Doxygen build complete."
30+
31+
clean-doxy:
32+
@echo "==> Cleaning Doxygen build directory..."
33+
rm -rf documentation/html/

docs/style/doxygen-awesome-css

Submodule doxygen-awesome-css added at e12d72e

docs/style/header.html

Lines changed: 82 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,82 @@
1+
<!-- HTML header for doxygen 1.9.8-->
2+
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3+
<html xmlns="http://www.w3.org/1999/xhtml" lang="$langISO">
4+
<head>
5+
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
6+
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
7+
<meta name="generator" content="Doxygen $doxygenversion"/>
8+
<meta name="viewport" content="width=device-width, initial-scale=1"/>
9+
<!--BEGIN PROJECT_NAME--><title>$projectname: $title</title><!--END PROJECT_NAME-->
10+
<!--BEGIN !PROJECT_NAME--><title>$title</title><!--END !PROJECT_NAME-->
11+
<link href="$relpath^tabs.css" rel="stylesheet" type="text/css"/>
12+
<!--BEGIN DISABLE_INDEX-->
13+
<!--BEGIN FULL_SIDEBAR-->
14+
<script type="text/javascript">var page_layout=1;</script>
15+
<!--END FULL_SIDEBAR-->
16+
<!--END DISABLE_INDEX-->
17+
<script type="text/javascript" src="$relpath^jquery.js"></script>
18+
<script type="text/javascript" src="$relpath^dynsections.js"></script>
19+
$treeview
20+
$search
21+
$mathjax
22+
$darkmode
23+
<link href="$relpath^$stylesheet" rel="stylesheet" type="text/css" />
24+
$extrastylesheet
25+
<script type="text/javascript" src="$relpath^doxygen-awesome-darkmode-toggle.js"></script>
26+
<script type="text/javascript" src="$relpath^doxygen-awesome-fragment-copy-button.js"></script>
27+
<script type="text/javascript" src="$relpath^doxygen-awesome-interactive-toc.js"></script>
28+
<script type="text/javascript">
29+
DoxygenAwesomeDarkModeToggle.init()
30+
DoxygenAwesomeFragmentCopyButton.init()
31+
DoxygenAwesomeInteractiveToc.init()
32+
</script>
33+
</head>
34+
<body>
35+
<!--BEGIN DISABLE_INDEX-->
36+
<!--BEGIN FULL_SIDEBAR-->
37+
<div id="side-nav" class="ui-resizable side-nav-resizable"><!-- do not remove this div, it is closed by doxygen! -->
38+
<!--END FULL_SIDEBAR-->
39+
<!--END DISABLE_INDEX-->
40+
41+
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
42+
43+
<!--BEGIN TITLEAREA-->
44+
<div id="titlearea">
45+
<table cellspacing="0" cellpadding="0">
46+
<tbody>
47+
<tr id="projectrow">
48+
<!--BEGIN PROJECT_LOGO-->
49+
<td id="projectlogo"><img alt="Logo" src="$relpath^$projectlogo"/></td>
50+
<!--END PROJECT_LOGO-->
51+
<!--BEGIN PROJECT_NAME-->
52+
<td id="projectalign">
53+
<div id="projectname">$projectname<!--BEGIN PROJECT_NUMBER--><span id="projectnumber">&#160;$projectnumber</span><!--END PROJECT_NUMBER-->
54+
</div>
55+
<!--BEGIN PROJECT_BRIEF--><div id="projectbrief">$projectbrief</div><!--END PROJECT_BRIEF-->
56+
</td>
57+
<!--END PROJECT_NAME-->
58+
<!--BEGIN !PROJECT_NAME-->
59+
<!--BEGIN PROJECT_BRIEF-->
60+
<td>
61+
<div id="projectbrief">$projectbrief</div>
62+
</td>
63+
<!--END PROJECT_BRIEF-->
64+
<!--END !PROJECT_NAME-->
65+
<!--BEGIN DISABLE_INDEX-->
66+
<!--BEGIN SEARCHENGINE-->
67+
<!--BEGIN !FULL_SIDEBAR-->
68+
<td>$searchbox</td>
69+
<!--END !FULL_SIDEBAR-->
70+
<!--END SEARCHENGINE-->
71+
<!--END DISABLE_INDEX-->
72+
</tr>
73+
<!--BEGIN SEARCHENGINE-->
74+
<!--BEGIN FULL_SIDEBAR-->
75+
<tr><td colspan="2">$searchbox</td></tr>
76+
<!--END FULL_SIDEBAR-->
77+
<!--END SEARCHENGINE-->
78+
</tbody>
79+
</table>
80+
</div>
81+
<!--END TITLEAREA-->
82+
<!-- end header part -->

docs/style/img_style_rules.json

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
[
2+
{
3+
"alt": "CPP-GL",
4+
"style": "display: block; margin: 1.5em auto;"
5+
}
6+
]

0 commit comments

Comments
 (0)