diff --git a/src/main/java/de/neemann/digital/draw/graphics/text/Parser.java b/src/main/java/de/neemann/digital/draw/graphics/text/Parser.java index ed25320d0..cefcbd323 100644 --- a/src/main/java/de/neemann/digital/draw/graphics/text/Parser.java +++ b/src/main/java/de/neemann/digital/draw/graphics/text/Parser.java @@ -136,8 +136,11 @@ public class Parser { java.lang.Character t = COMMANDS.get(command); if (t == null) sentence.add(new Simple('\\' + command)); - else + else { sentence.add(new Character(t)); + if (peekChar() == ' ') + getChar(); + } } break; diff --git a/src/test/java/de/neemann/digital/draw/graphics/text/ParserTest.java b/src/test/java/de/neemann/digital/draw/graphics/text/ParserTest.java index bc74ba80b..f2e9b82fd 100644 --- a/src/test/java/de/neemann/digital/draw/graphics/text/ParserTest.java +++ b/src/test/java/de/neemann/digital/draw/graphics/text/ParserTest.java @@ -46,10 +46,10 @@ public class ParserTest extends TestCase { assertEquals("Decorate{≥1, MATH}", new Parser("$≥1$").parse().toString()); assertEquals("Decorate{MR, OVERLINE}", new Parser("~MR").parse().toString()); - assertEquals("A=∑ b", new Parser("A=\\sum b").parse().toString()); + assertEquals("A=∑b", new Parser("A=\\sum b").parse().toString()); assertEquals("A=∑^{m}_{n=0}", new Parser("A=\\sum_{n=0}^m").parse().toString()); - assertEquals("Y=A⊕B", new Parser("Y=A\\oplus{}B").parse().toString()); - assertEquals("Y=A⊙B", new Parser("Y=A\\odot{}B").parse().toString()); + assertEquals("Y=A⊕B", new Parser("Y=A\\oplus B").parse().toString()); + assertEquals("Y=A⊙B", new Parser("Y=A\\odot B").parse().toString()); } }