From a9aa077338c951ba3f5d90d923b4bb548dc7b3d8 Mon Sep 17 00:00:00 2001 From: Manuel Pégourié-Gonnard Date: Tue, 2 Aug 2011 18:33:29 +0000 Subject: barr update git-svn-id: svn://tug.org/texlive/trunk@23323 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/doc/generic/barr/diaxydoc.pdf | Bin 238311 -> 311807 bytes Master/texmf-dist/doc/generic/barr/diaxydoc.tex | 76 +++++++++++----------- Master/texmf-dist/tex/generic/barr/diagxy.tex | 83 ++++++++++++++++-------- 3 files changed, 94 insertions(+), 65 deletions(-) (limited to 'Master/texmf-dist') diff --git a/Master/texmf-dist/doc/generic/barr/diaxydoc.pdf b/Master/texmf-dist/doc/generic/barr/diaxydoc.pdf index d9994f8920a..73b67127c46 100644 Binary files a/Master/texmf-dist/doc/generic/barr/diaxydoc.pdf and b/Master/texmf-dist/doc/generic/barr/diaxydoc.pdf differ diff --git a/Master/texmf-dist/doc/generic/barr/diaxydoc.tex b/Master/texmf-dist/doc/generic/barr/diaxydoc.tex index 38c94d4ff28..9574ef2ea31 100644 --- a/Master/texmf-dist/doc/generic/barr/diaxydoc.tex +++ b/Master/texmf-dist/doc/generic/barr/diaxydoc.tex @@ -43,6 +43,30 @@ the identifiers. See~\ref{nodes&arrows} for details, syntax and examples. I have also recently added support for loops, both inline and in diagrams. +Note (2008-01-21): The main thing that is changed is in the arrow +specification `.$>$'. What the standard package produces are very fine +dots. They are actually tiny rules, about .4 pt square. I have changed +them to being about .7 pt square, which makes them more visible. In +addition, there is a newdir {d}, used as `{}{d}$>$' (otherwise the {d} +gets treated as a tail, not a shaft) that substitutes . for those tiny +rules. The only problem is it works well only for arrows that are +horizontal or nearly so (up to about 30 degrees). I played with many +variations of the definition, but could not make any of them work right. +In principle, I would prefer to get this right, but several hours of +playing with it did not succeed in solving the `Whack-a-Mole' problem. +If it looked good at some angles, it was worse at others. I could get +them looking good for both horizontal and vertical arrows, but then the +45 degree ones looked awful. Aside from that there are some minor bug +fixes. + +Note (2008-12-02) What has been added are new macros \verb+\Diamond+, +\verb+\rlimto+, and \verb+\llimto+. \verb+\Diamond+ is capitalized to +avoid clashing with a standard macro \verb+\diamond+. It has the same +paramter sets as \verb+\square+. The other two have no parameters and +are only for the purpose of putting a right, resp. left, arrow to the +right of or under \verb+\lim+. They will go under in a display or if +you follow \verb+\lim+ by \verb+\limits+. + \section{Why another diagram package?} This started when a user of my old package, diagram, wrote to ask me if @@ -161,41 +185,6 @@ I had some trouble generating the font files at the larger sizes, so the file xyfonts.zip, found at my ftp site (ftp.math.mcgill.ca/pub/barr) has fonts for the ljfour generated at all sizes from 10--20 points. - -\subsection{On \LaTeX\ 2.09 and \LaTeX\ 2e} - Since I have no other forum to do so, I use this space to indulge in a -personal rant, which you may skip since it has nothing to do with the -package (except periphally, since it explains why I have not made 14, -17, and 20 point style files for \LaTeX\ 2e). Recent distributions of -\TeX\ have omitted latex.tex, the source file for \LaTeX\ 2.09. If you -make a posting on comp.text.tex, admitting to using the older version, -you are certain to get one or more replies admonishing you that \LaTeX\ -2.09 is obsolete and should not be used. There are at least a couple of -good reasons for continuing to use the older version (along with some -reasons for switching, especially if you are using a language other than -English). For one thing, the compatibility mode is useless if you have -used additional fonts, as I have (most importantly, cmssbx, where many -use bbbold, one of the ugliest fonts to see the light of day). In fact, -the most significant change in \LaTeX\ 2e is that it uses the new font -selection system and the compatibility mode makes no attempt to be -compatible with the old one. The second reason for not switching is -that, ``If it ain't broke, don't fix it.'' For many the old \LaTeX\ -worked fine, why change? If you want to use new fonts in \LaTeX\ 2e it -is certainly possible, but the instructions for doing so are embedded -holographically in Chapter 7 of The \LaTeX\ Companion and took me days -to decipher. I am still not convinced that I am doing it right, -although it seems to work. The third---and to me most important---is -that the file latex.tex is extensively documented internally and it is -relatively easy to make whatever changes one wants. I have never -changed the source, but always put the changes in another file. In this -way, I have changed, for example, -\index{\backslash @startsection}\verb.\@startsection. in various ways. -It is clear that Lamport intended that his version of \LaTeX\ be -user-modifiable. It is equally clear that the implementers of the new -version had no interest in that. They didn't go out of their way to -make it hard, but they did nothing to encourage it and the documentation -is entirely on how to use it. - \subsection{Acknowledgments} First, I would like to thank Kris Rose for a superb programming job that made this package possible. The original versions of \xypic\ were @@ -223,7 +212,6 @@ anything. I have tested it with LaTeX 2e, LaTeX 2.09 and Plain TeX. Although I know of no reason it will not work with AMSTeX, I have not tested it. - \section{The basic syntax} The basic syntax is built around an operation @@ -790,7 +778,7 @@ cube: $$\bfig \cube|arlb|/ >->` >->`>`>/<1000,1000>[A`B`C`D;f`g`h`k]% (400,400)|arlb|/>`>`>`>/<900,900>[A'`B'`C'`D';f'`g'`h'`k']% - |r`r`r`r|/<-`<-`<-`<-/[\alpha`\beta`\gamma`\delta] + |rrrr|/<-`<-`<-`<-/[\alpha`\beta`\gamma`\delta] \efig$$ @@ -812,7 +800,7 @@ $$\bfig \node 3b(700,300)[A'\otimes B'] \node @(0,-500)[A''\otimes B''] \node xyzzy(500,0)[C\otimes D] -\arrow/->>/ [a`3b;f] +\arrow/->>/[a`3b;f] \arrow|l|[a`@;g] \arrow|b|/<-/[xyzzy`@;i\otimes j] \efig$$ @@ -1518,3 +1506,15 @@ digit, must be placed inbraces. +If the shape parameter begins with an \index{@}\verb.@., it is +interpreted differently. In that case, it has the form +\index{@{shape}@}\verb.@{shape}@. modifier, where the modifier is as +described in the \xypic\ reference guide. I just mention a couple of +them. The parameter \index{@{->}@<3pt>}\verb.@{->}@<3pt>., for example, +would give an ordinary arrow moved three points in the direction +perpendicular to that of the arrow. If you give +\index{{@{->>}@/^5pt/}}\verb.{@{->>}@/^5pt/}., you will get an epic +arrow that is curved in the direction perpendicular to the direction of +the arrow by five points. It is imperative that a specification such as +\index{@{>}@/5pt/}\verb.@{>}@/5pt/. be enclosed in braces because of the +\index{/}\verb./.s. diff --git a/Master/texmf-dist/tex/generic/barr/diagxy.tex b/Master/texmf-dist/tex/generic/barr/diagxy.tex index df56836261f..ad94c880851 100644 --- a/Master/texmf-dist/tex/generic/barr/diagxy.tex +++ b/Master/texmf-dist/tex/generic/barr/diagxy.tex @@ -1,18 +1,36 @@ - \def\dated#1{\def\thedate{#1}}% - \dated{2008-01-21}% - % This is a package of commutative diagram macros built on top of Xy-pic% - % by Michael Barr (email: barr@barrs.org). Its use is unrestricted. It% - % may be freely distributed, unchanged, for non-commercial or commercial% - % use. If changed, it must be renamed. Inclusion in a commercial% - % software package is also permitted, but I would appreciate receiving a% - % free copy for my personal examination and use. There are no guarantees% - % that this package is good for anything. I have tested it with LaTeX 2e,% - % LaTeX 2.09 and Plain TeX. Although I know of no reason it will not work% - % with AMSTeX, I have not tested it.% - % Added 2003-05-10: I now know that the only clash is with \square in% - % amssymb, which should therefore be loaded first. If the amssymb% - % \square is required, you can \let\box\square and use \box instead.% - + %% diagxy.tex + %% Copyright 2001 Michael Barr + % + % This work may be distributed and/or modified under the + % conditions of the LaTeX Project Public License, either version 1.3 + % of this license or (at your option) any later version. + % The latest version of this license is in + % http://www.latex-project.org/lppl.txt + % and version 1.3 or later is part of all distributions of LaTeX + % version 2005/12/01 or later. + % + % This work has the LPPL maintenance status `maintained'. + % + % The Current Maintainer of this work is Michael Barr + % + % This work consists of this file diagxy.tex and the + % documentation/tutorial file diaxydoc.tex + % + + % This package has been tested and used under plain tex and latex2e + % without compatibility problems. There is one known incompatibility with + % amstex: the macro \square, which is central the package and I have been + % using since the first package before 1990, is also used by amstex for a + % small box (e.g. end of proof box). The way to overcome this is to load + % amstex first, then if you need that macro, place + % + % \let\Box\square + % + % in your file and then input diagxy. This is a front end for xy-pic and + % you must have that package installed to load this one. + +\def\dated#1{\def\thedate{#1}}% +\dated{2011-06-18}% \newcount\atcode \atcode=\catcode`\@% \catcode`\@=12% \input xy @@ -36,6 +54,7 @@ \newdir{) }{!/.9em/@^{)}*{ }}% \newdir{ (}{{ }*!/-.5em/@^{(}}% \newdir{d}{\object{.}} +\newdir{into}{{ }*!/-.5em/@^{(}}% Usage: into-> \newdimen\high% \newdimen\ul% @@ -761,10 +780,10 @@ \ratchet{\topw}{\botw}% \setmorphismwidth{\Nodee}{\Nodef}{\Labelg}{\botw}% \ratchet{\topw}{\botw}% -\square(\Xpos,\Ypos)|\Xd\Xe\Xf\Xg|/`#5`#6`#7/<\topw,\deltaX>% +\square(\Xpos,\Ypos)|\Xd\Xe\Xf\Xg|/`#5`#6`#7/<\topw,\deltaY>% [\Nodec`\Noded`\Nodee`\Nodef;`\Labele`\Labelf`\Labelg]% -\advance \Ypos by \deltaX% -\square(\Xpos,\Ypos)|\Xa\Xb\Xc\Xd|/#1`#2`#3`#4/<\topw,\deltaY>% +\advance \Ypos by \deltaY% +\square(\Xpos,\Ypos)|\Xa\Xb\Xc\Xd|/#1`#2`#3`#4/<\topw,\deltaX>% [\Nodea`\Nodeb`\Nodec`\Noded;\Labela`\Labelb`\Labelc`\Labeld]% }% @@ -842,8 +861,13 @@ \def\toop/#1/{\ifnextchar<{\topp/#1/}{\topp/#1/<0>}}% \def\to{\ifnextchar/{\toop}{\toop/>/}}% - % Here are special versions of \to meant to be used as - % \lim_{x\rlimto\infty} or simply as \lim\limits_\rlimto for colimits + +\def\mon{\to/ >->/}% +\def\epi{\to/->>/}% +\def\toleft{\to/<-/}% +\def\monleft{\to/<-< /}% +\def\epileft{\to/<<-/}% + \def\rlimto{{% \font\xyatipfont=xyatip10 scaled 800 \font\xybtipfont=xybtip10 scaled 800 @@ -853,12 +877,6 @@ \font\xybtipfont=xybtip10 scaled 800 \raise 2pt\hbox{\,\xy\ar@{<-}(100,0) \endxy}\,}} -\def\mon{\to/ >->/}% -\def\epi{\to/->>/}% -\def\toleft{\to/<-/}% -\def\monleft{\to/<-< /}% -\def\epileft{\to/<<-/}% - \def\twopppp/#1`#2/<#3>^#4_#5{\:% \ifnum0=#3% @@ -991,7 +1009,7 @@ \morphism(\xpos,\ypos)|\xd|/{##4}/<0,-\deltay>[\nodeB`\nodeE;\labeld]% \ifx\zb\empty \morphism(\xpos,\ypos)/<-/<0,\deltaY>[\nodeB`0;]\fi \advance\xpos\deltax - \morphism(\xpos,\ypos)|\xd|/{##5}/<0,-\deltay>[\nodeC`\nodeF;\labele]% + \morphism(\xpos,\ypos)|\xe|/{##5}/<0,-\deltay>[\nodeC`\nodeF;\labele]% \ifx\zc\empty \morphism(\xpos,\ypos)/<-/<0,\deltaY>[\nodeC`0;]\fi \ifx\ze\empty \morphism(\xpos,\ypos)<\deltaX,0>[\nodeC`0;]\fi \nextt/##8/}% @@ -1208,3 +1226,14 @@ preamble -- eventually it should be added to xy.tex% }% \makeatother% +\endinput +tick: + +I write to mention, purely for your information, what finally worked +out best for me, namely: + +\arrow/@{>}|-*@{|}/[a`b;f] + +Also functional but with a slightly smaller "tick" is +\arrow/@{>}|-*@{+}/[a`b;f] + -- cgit v1.2.3