The main .tex
file.
\documentclass{standalone}
\usepackage{tikz}
\begin{document}
\input{fig_TikZ_graph_extensions}
\end{document}
The file fig_TikZ_graph_extensions
\begin{tikzpicture}
[every path/.style={thick}]
\usetikzlibrary{arrows.meta}
% ---------- Language dependent texts
\newcommand{\infoto}{info to}; %p/ compilar
\newcommand{\compile}{compile}; % compilar
\newcommand{\navigate}{navigate}; % Navega\c{c}\~{a}o
\newcommand{\auxiliary}{auxiliary};
\newcommand{\error}{error}; % erro
\newcommand{\lists}{lists}; % listas
\newcommand{\watermark}{watermark}; % marca d'\draw{a}gua
\newcommand{\install}{install}; % instala\c{c}\~{a}o
% ----------
\begin{scope}[every node/.style={rectangle,thick,draw, blue}, shift={(0.5,0)}]
\node (tex) at (-16,18.5) {
\begin{tabular}{c}
\Large{.tex}
\end{tabular}
};
\node (bib) at (-21.5,18.5) {
\begin{tabular}{c}
\Large{.bib}
\end{tabular}
};
\end{scope}
\begin{scope}[every node/.style={rectangle,thick,draw, cyan}, shift={(0.5,0)}]
\node (pdf) at (-7,18.5) {
\begin{tabular}{c}
\Large{.pdf}
\end{tabular}
};
\node (html) at (-13,22) {
\begin{tabular}{c}
\Large{.html}
\end{tabular}
};
\end{scope}
\begin{scope}[every node/.style={rectangle,thick,draw,red}, shift={(0.5,0)}]
\node (synctex) at (-11,17) {
\begin{tabular}{l}
\Large{.synctex.gz}
\end{tabular}
};
\node (dvi) at (-13,20) {
\begin{tabular}{l}
\Large{.dvi}
\end{tabular}
};
\node (ps) at (-9.5,20) {
\begin{tabular}{l}
\Large{.ps}
\end{tabular}
};
\node (toc) at (-11,12.5) {
\begin{tabular}{c}
\Large{.toc}
\end{tabular}
};
\node (lof) at (-14,11.5) {
\begin{tabular}{c}
\Large{.lof} \\
\Large{.lot} \\
\Large{.lol}
\end{tabular}
};
\node (aux) at (-10.5,14) {
\begin{tabular}{c}
\Large{.aux}
\end{tabular}
};
\node (log) at (-20.5,13.5) {
\begin{tabular}{c}
\Large{.log}
\end{tabular}
};
\node (blg) at (-23,21) {
\begin{tabular}{c}
\Large{.blg}
\end{tabular}
};
\node (out) at (-12,11.5) {
\begin{tabular}{c}
\Large{.out}
\end{tabular}
};
\node (xwm) at (-16,11.5) {
\begin{tabular}{c}
\Large{.xwm}
\end{tabular}
};
\end{scope}
\begin{scope}[every node/.style={rectangle,thick,draw,orange!90!black}, shift={(0.5,0)}]
\node (cls) at (-20,17.5) {
\begin{tabular}{c}
\Large{.cls}
\end{tabular}
};
\node (sty) at (-20,16) {
\begin{tabular}{c}
\Large{.sty} \\
\Large{.cwl}
\end{tabular}
};
\end{scope}
\begin{scope}[every node/.style={rectangle,thick,draw,green!50!black}, shift={(0.5,0)}]
\node (dtx) at (-23.5,16) {
\begin{tabular}{c}
\Large{.dtx} \\
\Large{.ins}
\end{tabular}
};
\node (bst) at (-25.5,18.5) {
\begin{tabular}{c}
\Large{.bst}
\end{tabular}
};
\end{scope}
\begin{scope}[every node/.style={rectangle,thick,draw,violet}, shift={(0.5,0)}]
\node (bbl) at (-19,21) {
\begin{tabular}{c}
\Large{.bbl}
\end{tabular}
};
\end{scope}
% ===============
\begin{scope}[>={latex[blue]},
every node/.style={rectangle},
every edge/.style={draw=green!50!black,very thick}]
\path [->] (cls) edge [bend right=+15] (tex);
\path [->] (sty) edge [bend right=+25] (tex);
\path [->] (bbl) edge [bend right=+00] node[above right]{\infoto}(tex);
% --------------
\path [<->] (bst) edge[bend right=+00] node[midway, above]{\infoto} node[midway, below]{bib\TeX} (bib);
\end{scope}
% ----------
\begin{scope}[>={latex[blue]},
every node/.style={rectangle},
every edge/.style={draw=red,very thick}]
\path [->] (bib) edge[bend right=-10] node[left]{\error} (blg);
\path [->] (bib) edge node[left = 2mm]{bib\TeX} node[right = 2mm]{bib\LaTeX} (bbl);
\path [->] (tex) edge[bend right=+00] node[above]{pdflatex} node[below]{\compile} (pdf);
\path [->] (tex) edge [bend right=-25] node[below right]{\error} (log);
\path [->] (tex) edge [bend right=-25] node[above left]{htlatex} (html);
\end{scope}
% ----------
\begin{scope}[>={latex[blue]},
every node/.style={rectangle},
every edge/.style={draw=purple,very thick}]
\path [->] (dtx) edge[bend right=+00] node[midway, above]{\install} (sty);
\path [->] (tex) edge node[below,rotate=90]{\watermark} (xwm);
\path [->] (tex) edge[bend right=+00] node[below,rotate=105]{\lists} (lof);
\path [->] (tex) edge node[above right,rotate=-40]{\auxiliary} (aux);
% --------------
\path [->] (tex) edge[bend right=+00] (toc);
\path [->] (tex) edge[bend right=+00] (out);
% --------------
\path [<->] (tex) edge [bend right=+10] node[above right]{\navigate} (synctex);
\path [<->] (synctex) edge[bend right=+10] node[above left]{\navigate} (pdf);
\end{scope}
\begin{scope}[>={latex[blue]},
every node/.style={rectangle},
every edge/.style={draw=violet,very thick,dashed}]
\path [<->] (bib) edge[bend right=+00] (tex);
\path [->] (tex) edge[bend right=+00] node[above left]{latex} (dvi);
\path [->] (dvi) edge[bend right=+00] node[above]{dvi2ps} (ps);
\path [->] (ps) edge[bend right=+00] node[above right]{ps2pdf} (pdf);
\end{scope}
% ----------
\end{tikzpicture}
This is the colorful result.
The color legend is:
0th: Results, cyan;
1st: Beginner, blue;
2nd: Not so beginner, violet;
3rd: I know some tricks, orange;
4th: I know what I'm doing, green;
5th: Only machines allowed, red.