Warning: this is an htmlized version!
The original is here, and the conversion rules are here. |
% (find-LATEX "2020ats.tex") % (defun c () (interactive) (find-LATEXsh "lualatex -record 2020ats.tex" :end)) % (defun C () (interactive) (find-LATEXsh "lualatex 2020ats.tex" "Success!!!")) % (defun D () (interactive) (find-pdf-page "~/LATEX/2020ats.pdf")) % (defun d () (interactive) (find-pdftools-page "~/LATEX/2020ats.pdf")) % (defun e () (interactive) (find-LATEX "2020ats.tex")) % (defun u () (interactive) (find-latex-upload-links "2020ats")) % (defun v () (interactive) (find-2a '(e) '(d))) % (defun cv () (interactive) (C) (ee-kill-this-buffer) (v) (g)) % (find-pdf-page "~/LATEX/2020ats.pdf") % (find-sh0 "cp -v ~/LATEX/2020ats.pdf /tmp/") % (find-sh0 "cp -v ~/LATEX/2020ats.pdf /tmp/pen/") % file:///home/edrx/LATEX/2020ats.pdf % file:///tmp/2020ats.pdf % file:///tmp/pen/2020ats.pdf % http://angg.twu.net/LATEX/2020ats.pdf % http://angg.twu.net/LATEX/2020ats.tex % http://angg.twu.net/LATEX/2020ats.tex.html % (find-LATEX "2019.mk") \documentclass[oneside,12pt,a5paper]{article} \usepackage[colorlinks,citecolor=DarkRed,urlcolor=DarkRed]{hyperref} % (find-es "tex" "hyperref") \usepackage{amsmath} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{pict2e} \usepackage[x11names,svgnames]{xcolor} % (find-es "tex" "xcolor") %\usepackage{colorweb} % (find-es "tex" "colorweb") %\usepackage{tikz} % % (find-dn6 "preamble6.lua" "preamble0") \usepackage{proof} % For derivation trees ("%:" lines) \input diagxy % For 2D diagrams ("%D" lines) \xyoption{curve} % For the ".curve=" feature in 2D diagrams % %\usepackage{edrx15} % (find-LATEX "edrx15.sty") %\input edrxaccents.tex % (find-LATEX "edrxaccents.tex") %\input edrxchars.tex % (find-LATEX "edrxchars.tex") %\input edrxheadfoot.tex % (find-LATEX "edrxheadfoot.tex") %\input edrxgac2.tex % (find-LATEX "edrxgac2.tex") % %\usepackage[backend=biber, % style=alphabetic]{biblatex} % (find-es "tex" "biber") %\addbibresource{catsem-slides.bib} % (find-LATEX "catsem-slides.bib") % % (find-es "tex" "geometry") \begin{document} \catcode`\^^J=10 \directlua{dofile "dednat6load.lua"} % (find-LATEX "dednat6load.lua") A demo of {\tt newnode:} and {\tt at:} % (find-es "dednat" "at:") % %L Node = Class { %L type = "Node", %L __tostring = function (node) return mytostring(node) end, %L __index = { %L v = function (node) return v(node.x,node.y) end, %L setv = function (node,v) node.x=v[1]; node.y=v[2]; return node end, %L }, %L } %L storenode = function (node) %L node = Node(node) %L table.insert(nodes, node) %L node.noden = #nodes -- nodes[node.noden] == node %L if node.tag then -- was: "and not nodes[node.tag]"... %L nodes[node.tag] = node -- nodes[node.tag] == node %L end %L return node %L end %L %L tow = function (vv, ww, a, b) %L local diff = ww-vv %L local diffrot90 = v(diff[2], -diff[1]) %L return vv + (a or 0.5)*diff + (b or 0)*diffrot90 %L end %L ats_to_vs = function (str) %L return (str:gsub("@(%w+)", "nodes[\"%1\"]:v()")) %L end %L forths["newnode:"] = function () %L local tag = getword() %L ds:push(storenode({tag=tag, TeX=phantomnode})) %L end %L forths["at:"] = function () %L local node = ds:pick(0) %L local vexpr = getword() %L node:setv(expr(ats_to_vs(vexpr))) %L end %D diagram ?? %D 2Dx 100 +60 %D 2D 100 A0 -------------> A1 %D 2D | ----- B4 B5 | %D 2D | \ B3\ | %D 2D | \B2 v | %D 2D v B0 B1 ----> v %D 2D +40 A2 -------------> A3 %D 2D %D (( A0 A1 -> %D A0 A2 -> %D A1 A3 -> %D A2 A3 -> %D A0 A3 -> .curve= _20pt %D A0 A3 -> .curve= ^20pt %D newnode: B0 at: tow(@A0,@A2,0.75,0.1) %D newnode: B5 at: tow(@A3,@A1,0.75,0.1) %D newnode: B1 at: @B0+v(15,0) %D newnode: B4 at: @B5-v(15,0) %D B0 B1 => %D B4 B5 => %D newnode: B2 at: tow(@A0,@A3)+v(-7,4) %D newnode: B3 at: tow(@A0,@A3)+v(7,-4) %D B2 B3 => %D )) %D enddiagram $$\pu \diag{??} $$ %L phantomnode = "{\\color{red} O}" %D diagram ?? %D 2Dx 100 +60 %D 2D 100 A0 -------------> A1 %D 2D | ----- B4 B5 | %D 2D | \ B3\ | %D 2D | \B2 v | %D 2D v B0 B1 ----> v %D 2D +40 A2 -------------> A3 %D 2D %D (( A0 A1 -> %D A0 A2 -> %D A1 A3 -> %D A2 A3 -> %D A0 A3 -> .curve= _20pt %D A0 A3 -> .curve= ^20pt %D newnode: B0 at: tow(@A0,@A2,0.75,0.1) %D newnode: B5 at: tow(@A3,@A1,0.75,0.1) %D newnode: B1 at: @B0+v(15,0) %D newnode: B4 at: @B5-v(15,0) %D B0 B1 => %D B4 B5 => %D newnode: B2 at: tow(@A0,@A3)+v(-7,4) %D newnode: B3 at: tow(@A0,@A3)+v(7,-4) %D B2 B3 => %D )) %D enddiagram $$\pu \diag{??} $$ \GenericWarning{Success:}{Success!!!} % Used by `M-x cv' \end{document} % __ __ _ % | \/ | __ _| | _____ % | |\/| |/ _` | |/ / _ \ % | | | | (_| | < __/ % |_| |_|\__,_|_|\_\___| % % <make> * (eepitch-shell) * (eepitch-kill) * (eepitch-shell) # (find-LATEXfile "2019planar-has-1.mk") make -f 2019.mk STEM=2020ats veryclean make -f 2019.mk STEM=2020ats pdf % Local Variables: % coding: utf-8-unix % ee-tla: "ats" % End: