# [Rd] surprising behaviour of "bgroup": sets all in greek letters (PR#3099)

ligges at statistik.uni-dortmund.de ligges at statistik.uni-dortmund.de
Sun May 25 19:33:49 MEST 2003

```Let me summarize the bug reported by Ulf Martin on R-help with the same
subject line.

The code

plot(1:10)
text(1, 9, expression(F == bgroup("{", x, "")))

results in greek letters, which is not expected here.
That happens if the user tries to set only a left delimeter, the same with:

text(2, 8, expression(F == bgroup("{", x, ".")))

or

text(3, 7, expression(F == bgroup(".", x, "}")))

but it works if delimeters are specified, as in:

text(4, 6, expression(F == bgroup("{", x, ")")))

I don't know whether I have just fixed the symptoms here (Paul ?).
Anyway, the following fix of  .../src/main/plotmath.c  works as expected.

Uwe Ligges

==========================
(diff'ed to R-1.7.0 patched (2003-05-25))
>  diff -u ./plotmath.old ./r-patched/src/main/plotmath.c

--- ./plotmath.old     2003-05-25 17:47:23.000000000 +0200
+++ ./r-patched/src/main/plotmath.c     2003-05-25 17:49:38.000000000 +0200
@@ -2075,10 +2075,12 @@
delim2 = DelimCode(expr, CADDDR(expr));
bbox = RenderElement(CADDR(expr), 0);
dist = max(bboxHeight(bbox) - axisHeight, bboxDepth(bbox) +
axisHeight);
-    bbox = RenderDelim(delim1, dist + extra, draw);
+    if (delim1 != '.')
+        bbox = RenderDelim(delim1, dist + extra, draw);
bbox = CombineBBoxes(bbox, RenderElement(CADDR(expr), draw));
bbox = RenderItalicCorr(bbox, draw);
-    bbox = CombineBBoxes(bbox, RenderDelim(delim2, dist + extra, draw));
+    if (delim2 != '.')
+        bbox = CombineBBoxes(bbox,     RenderDelim(delim2, dist +
extra, draw));
return bbox;
}

```