gergelypolonkai-web-jekyll/_posts/2014-10-07-rounding-numbers-to-n-decimals-in-emacs.markdown

1.0 KiB
Raw Blame History

layout title date tags permalink published author
post Rounding numbers to N decimals in Emacs 2014-10-07 10:28:50
emacs
development
/blog/2014/10/7/rounding-numbers-to-n-decimals-in-emacs true
name email
Gergely Polonkai gergely@polonkai.eu

I have recently faced a problem, where I had a bunch of SVG files with a large amount of fraction numbers in the path definitions. These images were displayed in small size, so this amount of precision was irrelevant, and these numbers took almost half of my SVG images size. So I created an Elisp defun to round these numbers to 2 decimals:

{% gist 9c721ceda6d3079b4f05 %}

This finds the first digit of the number under point (the cursor), and reduces its digits to the given amount (or the number given with C-u). It has some drawbacks, though, as it cannot handle exponential forms (e.g. 1e-1234), but these were rare in my case, and its hard to iterate through all numbers. I will come over this latter problem soon(ish).