# [Xy-pic] xypic bug

Michael Barr barr@barrs.org
Sat, 1 Dec 2001 07:39:41 -0500 (EST)

It is definitely a bug.  Kris Rose is now gainfully employed and rarely
in his unreleased version the bug is fixed.  But he didn't reply when I
asked him about releasing it.  Meantime, the way around it is to keep
those intersecting lines short.  That is, piece them together from shorter
segments.  I don't recall, but there may be an example of this in my
documentation to diagxy, which is a front end for xypic.  The latest
version is available at ftp.math.mcgill.ca/pub/barr/diagxy.zip.

Michael Barr

> Date: Fri, 30 Nov 2001 12:17:09 -0600 (CST)
> From: James Borger <borger@math.uchicago.edu>
> To: <xy-pic@tug.org>
> Subject: [Xy-pic] bug?
>
>
> Dear xy-pic-ers,
>
> I've found what appears to be a bug in the way xy-pic handles
> intersections of lines.  That said, I have pretty limited experience with
> xy-pic, so the bug could easily be in me.
>
> I want to typeset a three-dimensional commutative diagram and have some
> lines appear to pass under others.  The problem is that sometimes xy-pic
> draws only one of the two pieces of the lower line, which should be
> broken.  I had this problem once before and was able to work around it by
> changing things that I though should have no effect on the output.
> Unfortunately, I didn't save that example.
>
> The misbehaving (LaTeX) code is below (in simplified form).  The arrow
> from J to K is the offending one.
>
> Best,
>
> Jim Borger
>
> =======================================================================
>
> \documentclass{amsart}
> \usepackage{amscd, amssymb}
> \usepackage[all]{xy}
>
> \begin{document}
>
> $> \begin{xy} <0pt,0pt>;<16mm,0mm>:<0mm,-7mm>:: > (2,0) *+{A}="a", > (5,0) *+{B}="b", > (2,3) *+{C}="c", > (5,3) *+{D}="d", > (0,4) *+{E}="e", > (2,6) *+{F}="f", > (5,6) *+{G}="g", > (0,7) *+{H}="h", > (3,7) *+{I}="i", > (1,8) *+{J}="j", > (4,8) *+{K}="k", > (0,10) *+{L}="l", > (3,10) *+{M}="m", > \ar "a";"b" > \ar "c";"a" > \ar "d";"b" > \ar "e";"a" > \ar "f";"c" > \ar "f";"g" |!{"i";"d"}\hole > \ar "g";"d" > \ar "h";"e" > \ar "h";"i" > > \ar "i";"d" > \ar "f";"j" |!{"h";"i"}\hole > \ar "j";"k" |!{"m";"i"}\hole > \ar "k";"g" > \ar "l";"j" > \ar "l";"h" > \ar "l";"m" > \ar "m";"i" > \ar "m";"k" > \end{xy} >$
>
> \end{document}