# HG changeset patch
# User Steve Losh <steve@stevelosh.com>
# Date 1741205685 18000
# Node ID a26bbbf15587daa70245d44793acbd20e21227f9
# Parent  dee136fa9a816c31ba2a46aacc49307c0b010e34
Fix negative pf

diff -r dee136fa9a81 -r a26bbbf15587 src/math.lisp
--- a/src/math.lisp	Wed Mar 05 15:09:34 2025 -0500
+++ b/src/math.lisp	Wed Mar 05 15:14:45 2025 -0500
@@ -426,10 +426,12 @@
 
 (define-command pf (x)
   "Print x as a nicely-formatted number."
-  (multiple-value-bind (ipart fpart) (ftruncate x)
-    (let ((ipart (round ipart))
-          (fpart (if (zerop fpart)
-                   ""
-                   (subseq (format nil "~F" (abs fpart)) 1))))
-      (format t "~:D~A" ipart fpart)))
+  (let ((sign (if (minusp x) "-" ""))
+        (x (abs x)))
+    (multiple-value-bind (ipart fpart) (ftruncate x)
+      (let ((ipart (round ipart))
+            (fpart (if (zerop fpart)
+                     ""
+                     (subseq (format nil "~F" fpart) 1))))
+        (format t "~A~:D~A" sign ipart fpart))))
   (values))