From a73a67d252678fafc7cfbb8cb0333434b01af01c Mon Sep 17 00:00:00 2001 From: Mitchell Hashimoto Date: Sun, 5 Oct 2025 19:59:58 -0700 Subject: [PATCH] doxygen improvements --- Doxyfile | 45 ++++++++++++++++++ DoxygenLayout.xml | 28 ++--------- dist/doxygen/favicon.png | Bin 0 -> 1562 bytes dist/doxygen/ghostty.css | 99 +++++++++++++++++++++++++++++++++++++++ 4 files changed, 147 insertions(+), 25 deletions(-) create mode 100644 dist/doxygen/favicon.png create mode 100644 dist/doxygen/ghostty.css diff --git a/Doxyfile b/Doxyfile index fccd4a493..d0c0414dc 100644 --- a/Doxyfile +++ b/Doxyfile @@ -2,9 +2,38 @@ DOXYFILE_ENCODING = UTF-8 PROJECT_NAME = "libghostty" +PROJECT_LOGO = images/gnome/64.png INPUT = include/ghostty/vt.h INPUT_ENCODING = UTF-8 RECURSIVE = NO +FULL_PATH_NAMES = NO +STRIP_FROM_INC_PATH = include +SOURCE_BROWSER = YES +INLINE_SOURCES = NO +REFERENCES_RELATION = YES +REFERENCED_BY_RELATION = YES + +#--------------------------------------------------------------------------- +# C API Optimization +#--------------------------------------------------------------------------- + +# Optimize output for C API documentation +OPTIMIZE_OUTPUT_FOR_C = YES +TYPEDEF_HIDES_STRUCT = YES +HIDE_SCOPE_NAMES = YES + +# Clean path names +FULL_PATH_NAMES = NO +STRIP_FROM_PATH = . +STRIP_FROM_INC_PATH = include + +# Hide undocumented and internal APIs +HIDE_UNDOC_MEMBERS = YES +HIDE_UNDOC_CLASSES = YES +EXTRACT_ALL = NO +INTERNAL_DOCS = NO +EXTRACT_PRIVATE = NO +EXTRACT_LOCAL_CLASSES = NO #--------------------------------------------------------------------------- # HTML Output @@ -12,6 +41,21 @@ RECURSIVE = NO GENERATE_HTML = YES HTML_OUTPUT = zig-out/share/ghostty/doc/libghostty +HTML_EXTRA_STYLESHEET = dist/doxygen/ghostty.css +HTML_EXTRA_FILES = dist/doxygen/favicon.png +HTML_COLORSTYLE = DARK +LAYOUT_FILE = DoxygenLayout.xml +GENERATE_TREEVIEW = YES +HTML_DYNAMIC_SECTIONS = YES +SEARCHENGINE = YES +ALPHABETICAL_INDEX = YES +HTML_TIMESTAMP = NO + +#--------------------------------------------------------------------------- +# Graphs and Diagrams +#--------------------------------------------------------------------------- + +HAVE_DOT = NO #--------------------------------------------------------------------------- # Man Output @@ -20,6 +64,7 @@ HTML_OUTPUT = zig-out/share/ghostty/doc/libghostty GENERATE_MAN = YES MAN_OUTPUT = zig-out/share/man MAN_EXTENSION = .3 +MAN_LINKS = YES #--------------------------------------------------------------------------- # Other Output diff --git a/DoxygenLayout.xml b/DoxygenLayout.xml index 67497e83f..ae9c52684 100644 --- a/DoxygenLayout.xml +++ b/DoxygenLayout.xml @@ -6,37 +6,15 @@ - + - - - - - - - - - - - - - - - - - - + - - - - - - + diff --git a/dist/doxygen/favicon.png b/dist/doxygen/favicon.png new file mode 100644 index 0000000000000000000000000000000000000000..b647bcf358546e6f9b54c9c423579db9205f2bcc GIT binary patch literal 1562 zcmeAS@N?(olHy`uVBq!ia0y~yU{C;I4mJh`hT^KKFANN<4?SHRLn`9lPK)meb(cME zzu)rto!z_doYvdz&3RRK=@PTEyJDAayd?79S?HQ}uX?}jse$RaWC#~p5{p(mx-z(RzmtX$%^>sTN8{56>_wL1sO}r4*-NB)-FL%mX z?hSPl&YeFW?l;$}^x1`l&dTZM=hgn+#aQ;{#>c%6A3n@yJb1Kw@{z)`{@lI$#JUws zf)_?C*x8vJ#Z-0AX%2@XP-rpzFbffouyZfGJ^LKTB16$$6EPM2)y`FA( z;cn=IMqmDqHy&Hx+?suT-rDHxdCMFXd8K4z{si2uxqNK>hWF{eUq+Z5&}C-!ITJEt z?Gc78Tifqkh%NGrcs+4~jiCDco*>4_&+k9^`2K%GXD9ccr2mcUUN?Z}$4%uL>Eee!qM0B|87p z&foS2&*j%oD)WzCI$!#C~5tgJgs zvl&%9oBV_o6igY5r|Vzdw`BTu{f3MHF0JVcR2)O(4{SQ z@jZru0uxm>MyF&mtYvhaCf0fD)Dg{)WDe#HY)q_%0wPLUQ!UHAxgJe6k4TQm&fyZ9 zqNTX1!S%wev-f2jtQ%MaPTaDne`Zqqo&VBS5uay54BY1X#NFmscc1D}<4|^C`5y85 zvAEMl1+f5)B%>*}o2D^rwfM%s80gNwe(xVEEl&<^!On9US8l5;-F)ZV$M9nsWnY}q z1a$mn?0Np^Py-8x;DQTQd9lnJnF|<`H}PGvcy#^zKgkdlM-Da)r4>s>tgJbjSn$;nzbcFh>y|1ch+NZRnOz;l(mroMNtNSgG-YMX<)9V5Fy!qN32g>HNYxEkblzxix< zgRR&>iRECtODRL<)P~hF}Y{Cl4+96h}`c+>xt=?$s^cNkB(-_dBf zwtpqlF$XiYmf!Nh{{vmG??)!gVSNiO%@Q08@3kwsIExAX#M6(YWXhdg! z{P)k_{T}Cp{lbFh1Kw+2(wQwQFK=&WWb`RxT55e})18p_np3?_FV@gv?E3HPmTg<^ iTF-v&qRabN`&k}7{m{>{KbL`lfx*+&&t;ucLK6U3Dc_g? literal 0 HcmV?d00001 diff --git a/dist/doxygen/ghostty.css b/dist/doxygen/ghostty.css new file mode 100644 index 000000000..cac21e689 --- /dev/null +++ b/dist/doxygen/ghostty.css @@ -0,0 +1,99 @@ +/** + * Ghostty Doxygen Custom Stylesheet + * Minimal branding customizations for Ghostty colors + */ + +/* Ghostty brand color for links and accents - high contrast for dark bg */ +a, a:link { + color: #99B3FF; +} + +a:visited { + color: #99B3FF; +} + +a:hover { + color: #C2D4FF; +} + +/* High contrast text colors */ +body, div.contents, div.header, .title, .summary, td, th, p, li { + color: #E8E8E8 !important; +} + +h1, h2, h3, h4, h5, h6, .groupheader { + color: #FFFFFF !important; +} + +.memtitle, .memname { + color: #FFFFFF !important; +} + +.memdoc { + color: #E8E8E8 !important; +} + +/* Selection color */ +::selection { + background: rgba(53, 81, 243, 0.6); +} + +/* Tree view selected item */ +#nav-tree .selected { + background-color: #3551F3 !important; +} + +/* Custom syntax highlighting optimized for dark backgrounds with high contrast */ +.fragment, div.line { + color: #F0F0F0 !important; +} + +/* Keywords (int, void, const, static, etc.) */ +.keyword, .keywordtype { + color: #FF8BE6 !important; + font-weight: 500; +} + +/* Control flow (if, else, return, for, while, etc.) */ +.keywordflow { + color: #FF8BE6 !important; + font-weight: 500; +} + +/* Comments */ +.comment { + color: #8BC34A !important; + font-style: italic; +} + +/* Preprocessor directives (#include, #define, etc.) */ +.preprocessor { + color: #FFCC66 !important; +} + +/* String and character literals */ +.stringliteral, .charliteral { + color: #B8E986 !important; +} + +/* Numbers */ +span.charliteral { + color: #D4A5FF !important; +} + +/* Function names */ +.functionname { + color: #6FE87C !important; + font-weight: 500; +} + +/* Line numbers */ +span.lineno { + color: #8A8A8A !important; + background-color: transparent !important; +} + +span.lineno a { + color: #8A8A8A !important; + background-color: transparent !important; +}