Warning: this is an htmlized version!
The original is here, and the conversion rules are here. |
% (find-LATEX "2022tikzwd-2.tex") % (defun c () (interactive) (find-LATEXsh "lualatex -record 2022tikzwd-2.tex" :end)) % (defun C () (interactive) (find-LATEXSH "lualatex 2022tikzwd-2.tex" "Success!!!")) % (defun D () (interactive) (find-pdf-page "~/LATEX/2022tikzwd-2.pdf")) % (defun d () (interactive) (find-pdftools-page "~/LATEX/2022tikzwd-2.pdf")) % (defun e () (interactive) (find-LATEX "2022tikzwd-2.tex")) % (defun u () (interactive) (find-latex-upload-links "2022tikzwd-2")) % (defun v () (interactive) (find-2a '(e) '(d))) % (defun cv () (interactive) (C) (ee-kill-this-buffer) (v) (g)) % (defun d0 () (interactive) (find-ebuffer "2022tikzwd-2.pdf")) % (code-eec-LATEX "2022tikzwd-2") % (find-pdf-page "~/LATEX/2022tikzwd-2.pdf") % (find-sh0 "cp -v ~/LATEX/2022tikzwd-2.pdf /tmp/") % (find-sh0 "cp -v ~/LATEX/2022tikzwd-2.pdf /tmp/pen/") % file:///home/edrx/LATEX/2022tikzwd-2.pdf % file:///tmp/2022tikzwd-2.pdf % file:///tmp/pen/2022tikzwd-2.pdf % http://angg.twu.net/LATEX/2022tikzwd-2.pdf % (find-LATEX "2019.mk") % (find-lualatex-links "2022tikzwd-2" "tw2") %\documentclass[oneside,12pt]{article} \documentclass[11pt,oneside,article]{memoir} \usepackage[colorlinks,citecolor=red,urlcolor=red]{hyperref} % (find-es "tex" "hyperref") \usepackage{colorweb} % (find-es "tex" "colorweb") \usepackage{amsthm} \usepackage{newpxtext} \usepackage[varg,bigdelims]{newpxmath} \usepackage[usenames,dvipsnames]{xcolor} \usepackage{tikz} % \usepackage{edrx21} % (find-LATEX "edrx21.sty") \input edrxaccents.tex % (find-LATEX "edrxaccents.tex") \input edrx21chars.tex % (find-LATEX "edrx21chars.tex") %\input edrxheadfoot.tex % (find-LATEX "edrxheadfoot.tex") \usetikzlibrary{ decorations.markings, positioning, calc, fit} \tikzset{ oriented WD/.style={%everything after equals replaces "oriented WD" in key. every to/.style={out=0,in=180,draw}, label/.style={ font=\everymath\expandafter{\the\everymath\scriptstyle}, inner sep=0pt, node distance=2pt and -2pt}, semithick, node distance=1 and 1, decoration={markings, mark=at position \stringdecpos with \stringdec}, ar/.style={postaction={decorate}}, execute at begin picture={\tikzset{ x=\bbx, y=\bby, every fit/.style={inner xsep=\bbx, inner ysep=\bby}}} }, string decoration/.store in=\stringdec, string decoration={\arrow{stealth};}, string decoration pos/.store in=\stringdecpos, string decoration pos=.7, bbx/.store in=\bbx, bbx = 1.5cm, bby/.store in=\bby, bby = 1.5ex, bb port sep/.store in=\bbportsep, bb port sep=1.5, bb port length/.store in=\bbportlen, bb port length=4pt, bb penetrate/.store in=\bbpenetrate, bb penetrate=0, bb min width/.store in=\bbminwidth, bb min width=1cm, bb rounded corners/.store in=\bbcorners, bb rounded corners=2pt, bb small/.style={bb port sep=1, bb port length=2.5pt, bbx=.4cm, bb min width=.4cm, bby=.7ex}, bb medium/.style={bb port sep=1, bb port length=2.5pt, bbx=.4cm, bb min width=.4cm, bby=.9ex}, bb/.code 2 args={%When you see this key, run the code below: \pgfmathsetlengthmacro{\bbheight}{\bbportsep * (max(#1,#2)+1) * \bby} \pgfkeysalso{draw,minimum height=\bbheight,minimum width=\bbminwidth,outer sep=0pt, rounded corners=\bbcorners,thick, prefix after command={\pgfextra{\let\fixname\tikzlastnode}}, append after command={\pgfextra{\draw \ifnum #1=0{} \else foreach \i in {1,...,#1} { ($(\fixname.north west)!{\i/(#1+1)}!(\fixname.south west)$) +(-\bbportlen,0) coordinate (\fixname_in\i) -- +(\bbpenetrate,0) coordinate (\fixname_in\i')} \fi % Define the endpoints of tickmarks \ifnum #2=0{} \else foreach \i in {1,...,#2} { ($(\fixname.north east)!{\i/(#2+1)}!(\fixname.south east)$) +(-\bbpenetrate,0) coordinate (\fixname_out\i') -- +(\bbportlen,0) coordinate (\fixname_out\i)} \fi; }}} }, bb name/.style={append after command={\pgfextra{\node[anchor=north] at (\fixname.north) {#1};}}} } \tikzset{ pack size/.store in=\psize, pack size = 8pt, spacing/.store in=\spacing, spacing = 8pt, link size/.store in=\lsize, pack color/.store in=\pcolor, pack color = blue, pack inside color/.store in=\picolor, pack inside color=blue!20, pack outside color/.store in=\pocolor, pack outside color=blue!50!black, surround sep/.store in=\ssep, surround sep=8pt, link/.style={ circle, draw=black, fill=black, inner sep=0pt, minimum size=\lsize }, } % (find-es "tex" "geometry") \usepackage[a6paper, landscape, top=1.5cm, bottom=.25cm, left=1cm, right=1cm, includefoot ]{geometry} \begin{document} \pagestyle{empty} Some diagrams from: {\footnotesize\par \url{https://github.com/appliedcategorytheory/TikZWD} } \bsk \begin{tikzpicture} \begin{scope}[font=\footnotesize, text height=1.5ex, text depth=.5ex] \begin{scope}[oriented WD, bb port sep=1, bb port length=2.5pt, bb min width=.4cm, bby=.2cm, inner xsep=.2cm, x=.5cm, y=.3cm] \begin{scope}[color=red] \node[bb={1}{1}] (Catf) {$f$}; \node[bb={1}{1}, right=1 of Catf] (Catg) {$g$}; \node[bb={0}{0}, fit=(Catf) (Catg)] (Cat) {}; \node[coordinate] at (Cat.west|-Catf_in1) (Cat_in1) {}; \node[coordinate] at (Cat.east|-Catg_out1) (Cat_out1) {}; \draw[shorten <=-2pt] (Cat_in1) -- (Catf_in1); \draw (Catf_out1) -- (Catg_in1); \draw[shorten >=-2pt] (Catg_out1) -- (Cat_out1); \end{scope} \begin{scope}[color=orange] \node[bb={1}{2}, above right=-1.5 and 4 of Catf] (Monf) {$f$}; \node[bb={2}{1}, below right=-1 and 1 of Monf] (Mong) {$g$}; \node[bb={0}{0}, fit=(Monf) (Mong)] (Mon) {}; \node[coordinate] at (Mon.west|-Monf_in1) (Mon_in1) {}; \node[coordinate] at (Mon.west|-Mong_in2) (Mon_in2) {}; \node[coordinate] at (Mon.east|-Monf_out1) (Mon_out1) {}; \node[coordinate] at (Mon.east|-Mong_out1) (Mon_out2) {}; \draw[shorten <=-2pt] (Mon_in1) -- (Monf_in1); \draw[shorten >=-2pt] (Monf_out1) -- (Mon_out1); \draw (Monf_out2) to (Mong_in1); \draw[shorten <=-2pt] (Mon_in2) -- (Mong_in2); \draw[shorten >=-2pt] (Mong_out1) -- (Mon_out2); \end{scope} \end{scope} \node[below=.4 of Cat.south] (Cat name) {category}; \node[text width=1.5cm] at (Cat name-|Mon) {monoidal category}; \end{scope} \end{tikzpicture} \GenericWarning{Success:}{Success!!!} % Used by `M-x cv' \end{document} % Local Variables: % coding: utf-8-unix % ee-tla: "tw2" % End: