strict digraph luaotfload_files { //looks weird with circo ... compound = true; // label = "Schematic of the files included in Luaotfload."; // labelloc = "b"; fontsize = "14.4"; labelfontname = "Iwona Medium Regular"; fontname = "Iwona Light Regular"; size = "21cm"; rankdir = LR; ranksep = 0.618; nodesep = 1.618; edge [ arrowhead = onormal, fontname = "Iwona Cond Regular", penwidth = 1.0, ]; node [ //penwidth = 0.7, fontname = "Liberation Mono", fontsize = 12, ]; /* ···································································· * file structure * ································································· */ fontdbutil -> font_names [label="--update", style=dashed] luaotfload -> otfl_fonts_merged [label="merged"] luaotfload -> merged_lua_libs [label="unmerged", style=solid] luaotfload -> merged_luatex_fonts [label="unmerged", style=solid] luaotfload -> merged_context_libs [label="unmerged", style=solid] luaotfload -> luaotfload_libs luaotfload -> otfl_blacklist_cnf otfl_fonts_merged -> merged_lua_libs [label="merged", style=dotted, lhead=cluster_merged] otfl_fonts_merged -> merged_luatex_fonts [label="merged", style=dotted, lhead=cluster_merged] otfl_fonts_merged -> merged_context_libs [label="merged", style=dotted, lhead=cluster_merged] merged_luatex_fonts -> font_age [label="luatex-fonts-enc.lua", ltail=cluster_merged] fontdbutil -> fontdbutil_diagnostics [label="--diagnose"] fontdbutil -> status [label="version information"] fontdbutil_diagnostics -> status [constraint=no, label="hash files"] merged_luatex_fonts -> characters [label="luaotfload-auxiliary.lua", ltail=cluster_merged] luaotfload_libs -> font_names [label="luaotfload-database.lua"] mkstatus -> status [label="generates from distribution files", style=dashed] mkglyphlist -> font_age [label="generates from glyphlist.txt", style=dashed] mkcharacters -> characters [label="generates from Context’s char-def.lua", style=dashed] subgraph { rank = same; mkcharacters; mkglyphlist; mkstatus; fontdbutil; luaotfload } /* ···································································· * main files * ································································· */ fontdbutil [label = "luaotfload-tool.lua\nmkluatexfontdb.lua", shape = rect, width = "3.2cm", height = "1.2cm", color = "#01012222", style = "filled,rounded", penwidth=2] fontdbutil_diagnostics [label = "luaotfload-diagnostics.lua", shape = rect, width = "3.2cm", height = "1.2cm", color = "#01012222", style = "filled,rounded", penwidth=2] mkstatus [label = "mkstatus", shape = rect, width = "3.2cm", height = "1.2cm", color = "#01012222", style = "filled,rounded", penwidth=2] mkglyphlist [label = "mkglyphlist", shape = rect, width = "3.2cm", height = "1.2cm", color = "#01012222", style = "filled,rounded", penwidth=2] mkcharacters [label = "mkcharacters", shape = rect, width = "3.2cm", height = "1.2cm", color = "#01012222", style = "filled,rounded", penwidth=2] luaotfload [label = "luaotfload.lua", shape = rect, width = "3.2cm", height = "1.2cm", color = "#01012222", style = "filled,rounded", penwidth=2] /* *otfl_fonts [label = "luaotfload-fonts.lua", * shape = rect, * width = "3.2cm", * height = "1.2cm", * color = "#01012222", * style = "filled,rounded", * penwidth=2] */ otfl_fonts_merged [label = "luaotfload-fontloader.lua", shape = rect, width = "3.2cm", height = "1.2cm", color = "#01012222", style = "filled,rounded", penwidth=2] /* ···································································· * luaotfload files * ································································· */ characters [style = "filled,dashed", shape = rect, width = "3.2cm", fillcolor = "#01012222", color = grey40, style = "filled,dotted,rounded", label = "luaotfload-characters.lua"] font_age [style = "filled,dashed", shape = rect, width = "3.2cm", fillcolor = "#01012222", color = grey40, style = "filled,dotted,rounded", label = "luaotfload-glyphlist.lua"] font_names [style = "filled,dashed", shape = rect, width = "3.2cm", fillcolor = "#01012222", color = grey40, style = "filled,dotted,rounded", label = "luaotfload-names.lua.gz\nluaotfload-names.luc"] status [style = "filled,dashed", shape = rect, width = "3.2cm", fillcolor = "#01012222", color = grey40, style = "filled,dotted,rounded", label = "luaotfload-status.lua"] otfl_blacklist_cnf [style = "filled,dashed", shape = rect, width = "3.2cm", fillcolor = "#01012222", color = grey40, style = "filled,dotted,rounded", label = "luaotfload-blacklist.cnf"] luaotfload_libs [ shape = box, style = "filled,rounded", color = "grey90:goldenrod4", fontsize = 10, label = <
Luaotfload Libraries
luaotfload-auxiliary.lua luaotfload-features.lua
luaotfload-override.lua luaotfload-loaders.lua
luaotfload-database.lua luaotfload-color.lua
luaotfload-letterspace.lua
>, ] /* ···································································· * merged files * ································································· */ subgraph cluster_merged { node [style=filled, color=white]; style = "filled,rounded"; color = "grey90:dodgerblue4"; //nodesep = "3.0"; rank = same; label = "Merged Libraries"; gradientangle=0; merged_lua_libs; merged_luatex_fonts; merged_context_libs; } otfl_fonts_merged -> merged_lua_libs otfl_fonts_merged -> merged_luatex_fonts otfl_fonts_merged -> merged_context_libs merged_lua_libs [ shape = box, style = "filled,rounded", color = "#FFFFFFAA", fontsize = 10, label = <
Lua Libraries from Context
l-lua.lua l-lpeg.lua l-function.lua
l-string.lua l-table.lua l-io.lua
l-file.lua l-boolean.lua l-math.lua
util-str.lua
>, ] merged_luatex_fonts [ shape = box, style = "filled,rounded", color = "#FFFFFFAA", fontsize = 10, label = <
Font Loader (LuaTeX-Fonts)
luatex-basics-gen.lua luatex-basics-nod.lua
luatex-fonts-enc.lua luatex-fonts-syn.lua
luatex-font-tfm.lua luatex-font-afm.lua
luatex-font-afk.lua luatex-fonts-tfm.lua
luatex-fonts-chr.lua luatex-fonts-lua.lua
luatex-fonts-def.lua luatex-fonts-ext.lua
luatex-fonts-cbk.lua
>, ] merged_context_libs [ shape = box, style = "filled,rounded", color = "#FFFFFFAA", fontsize = 10, label = <
Font and Node Libraries from Context
data-con.lua font-ini.lua font-con.lua
font-cid.lua font-map.lua font-oti.lua
font-otf.lua font-otb.lua node-inj.lua
font-ota.lua font-otn.lua font-def.lua
>, ] } // vim:ft=dot:sw=4:ts=4:expandtab