From aab09dff0183a5ce7e58a43b449d422ae9c42004 Mon Sep 17 00:00:00 2001 From: Philipp Gesang Date: Wed, 17 Apr 2013 19:31:36 +0200 Subject: add graph of included files --- Makefile | 22 +++++-- filegraph.dot | 199 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 215 insertions(+), 6 deletions(-) create mode 100644 filegraph.dot diff --git a/Makefile b/Makefile index 69c5ede..6606861 100644 --- a/Makefile +++ b/Makefile @@ -1,15 +1,20 @@ # Makefile for luaotfload -NAME = luaotfload -DOC = $(NAME).pdf -DTX = $(NAME).dtx -OTFL = $(wildcard otfl-*.lua) otfl-blacklist.cnf font-age.lua +NAME = luaotfload +DOC = $(NAME).pdf +DTX = $(NAME).dtx +OTFL = $(wildcard otfl-*.lua) otfl-blacklist.cnf font-age.lua SCRIPT = mkluatexfontdb.lua +GRAPH = filegraph +DOTPDF = $(GRAPH).pdf +DOT = $(GRAPH).dot + # Files grouped by generation mode +GRAPHED = $(DOTPDF) COMPILED = $(DOC) UNPACKED = luaotfload.sty luaotfload.lua -GENERATED = $(COMPILED) $(UNPACKED) +GENERATED = $(GRAPHED) $(COMPILED) $(UNPACKED) SOURCE = $(DTX) $(OTFL) README Makefile NEWS $(SCRIPT) # test files @@ -43,14 +48,19 @@ ZIPS = $(CTAN_ZIP) $(TDS_ZIP) DO_TEX = tex --interaction=batchmode $< >/dev/null DO_LATEX = latexmk -pdf -pdflatex=lualatex -silent $< >/dev/null +DO_GRAPHVIZ = dot -Tpdf -o $@ $< > /dev/null all: $(GENERATED) -doc: $(COMPILED) +graph: $(GRAPHED) +doc: $(GRAPHED) $(COMPILED) unpack: $(UNPACKED) ctan: check $(CTAN_ZIP) tds: $(TDS_ZIP) world: all ctan +$(GRAPHED): $(DOT) + $(DO_GRAPHVIZ) + $(COMPILED): $(DTX) $(DO_LATEX) diff --git a/filegraph.dot b/filegraph.dot new file mode 100644 index 0000000..b86568b --- /dev/null +++ b/filegraph.dot @@ -0,0 +1,199 @@ +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 + * ································································· */ + luaotfload -> otfl_fonts + otfl_fonts -> otfl_fonts_merged [label="merged"] + 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] + + otfl_fonts -> merged_lua_libs [label="unmerged", style=solid] + otfl_fonts -> merged_luatex_fonts [label="unmerged", style=solid] + otfl_fonts -> merged_context_libs [label="unmerged", style=solid] + + +/* ···································································· + * main files + * ································································· */ + + luaotfload [label = "luaotfload.lua", + shape = rect, + width = "3.2cm", + height = "1.2cm", + color = "#01012222", + style = "filled,rounded", + penwidth=2] + otfl_fonts [label = "otfl-fonts.lua", + shape = rect, + width = "3.2cm", + height = "1.2cm", + color = "#01012222", + style = "filled,rounded", + penwidth=2] + otfl_fonts_merged [label = "otfl-fonts-merged.lua", + shape = rect, + width = "3.2cm", + height = "1.2cm", + color = "#01012222", + style = "filled,rounded", + penwidth=2] + +/* ···································································· + * luaotfload files + * ································································· */ + +/* + * subgraph cluster_luaotfload_libs { + * style = "filled,rounded"; + * color = "grey90:goldenrod4"; + * gradientangle=0; + * //nodesep = "3.0"; + * rank = same; + * label = "Luaotfload"; + * otfl_font_otc; otfl_lib_dir; otfl_luat_ovr; + * otfl_font_pfb; otfl_font_nms; otfl_font_clr; + * otfl_font_ltx; otfl_features; otfl_blacklist_cnf; + * } + * + * otfl_font_otc [style=filled, color=white, shape=box, label="otfl-font-otc.lua"] + * otfl_lib_dir [style=filled, color=white, shape=box, label="otfl-lib-dir.lua"] + * otfl_luat_ovr [style=filled, color=white, shape=box, label="otfl-luat-ovr.lua"] + * otfl_font_pfb [style=filled, color=white, shape=box, label="otfl-font-pfb.lua"] + * otfl_font_nms [style=filled, color=white, shape=box, label="otfl-font-nms.lua"] + * otfl_font_clr [style=filled, color=white, shape=box, label="otfl-font-clr.lua"] + * otfl_font_ltx [style=filled, color=white, shape=box, label="otfl-font-ltx.lua"] + * otfl_features [style=filled, color=white, shape=box, label="otfl-features.lua"] + */ + + otfl_blacklist_cnf [style = "filled,dashed", + shape = rect, + width = "3.2cm", + fillcolor = "#01012222", + color = grey40, + style = "filled,dotted,rounded", + label = "otfl-blacklist.cnf"] + + luaotfload_libs [ + shape = box, + style = "filled,rounded", + color = "grey90:goldenrod4", + fontsize = 10, + label = < + + + + + + +
Luaotfload Libraries
otfl-font-otc.lua otfl-lib-dir.lua
otfl-luat-ovr.lua otfl-font-pfb.lua
otfl-font-nms.lua otfl-font-clr.lua
otfl-font-ltx.lua otfl-features.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-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 */ -- cgit v1.2.3