diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,9 @@
 # Revision history for typst-hs
 
+## 0.5.0.5
+
+  * Allow numbers like `1.` in math mode (#50).
+
 ## 0.5.0.4
 
   * Add built-in identifiers for standard types (#21):
diff --git a/src/Typst/Parse.hs b/src/Typst/Parse.hs
--- a/src/Typst/Parse.hs
+++ b/src/Typst/Parse.hs
@@ -307,7 +307,7 @@
       mempty
       ( do
           e <- char '.'
-          es <- many1 digit
+          es <- many digit
           pure $ T.pack (e : es)
       )
   pure $ Text (ds <> opt)
diff --git a/test/out/regression/issue50.out b/test/out/regression/issue50.out
new file mode 100644
--- /dev/null
+++ b/test/out/regression/issue50.out
@@ -0,0 +1,51 @@
+--- parse tree ---
+[ Code
+    "test/typ/regression/issue50.typ"
+    ( line 1 , column 2 )
+    (Let
+       (BasicBind (Just (Identifier "test")))
+       (FuncExpr
+          [ NormalParam (Identifier "x") , NormalParam (Identifier "y") ]
+          (Block
+             (CodeBlock
+                [ If
+                    [ ( Equals (Ident (Identifier "x")) (Ident (Identifier "y"))
+                      , Block (Content [ Text "\9989" ])
+                      )
+                    , ( Literal (Boolean True)
+                      , Block
+                          (Content
+                             [ Text "\10060"
+                             , Text "("
+                             , Code
+                                 "test/typ/regression/issue50.typ"
+                                 ( line 1 , column 47 )
+                                 (FuncCall
+                                    (Ident (Identifier "repr"))
+                                    [ NormalArg (Ident (Identifier "x")) ])
+                             , Space
+                             , Text "/"
+                             , Text "="
+                             , Space
+                             , Code
+                                 "test/typ/regression/issue50.typ"
+                                 ( line 1 , column 59 )
+                                 (FuncCall
+                                    (Ident (Identifier "repr"))
+                                    [ NormalArg (Ident (Identifier "y")) ])
+                             , Text ")"
+                             ])
+                      )
+                    ]
+                ]))))
+, SoftBreak
+, Equation False [ Text "1." ]
+, ParBreak
+]
+--- evaluated ---
+document(body: { text(body: [
+]), 
+                 math.equation(block: false, 
+                               body: text(body: [1.]), 
+                               numbering: none), 
+                 parbreak() })
diff --git a/test/typ/regression/issue50.typ b/test/typ/regression/issue50.typ
new file mode 100644
--- /dev/null
+++ b/test/typ/regression/issue50.typ
@@ -0,0 +1,1 @@
+$1.$
diff --git a/typst.cabal b/typst.cabal
--- a/typst.cabal
+++ b/typst.cabal
@@ -1,6 +1,6 @@
 cabal-version:      2.4
 name:               typst
-version:            0.5.0.4
+version:            0.5.0.5
 synopsis:           Parsing and evaluating typst syntax.
 description:        A library for parsing and evaluating typst syntax.
                     Typst (<https://typst.app>) is a document layout and
