Function: math--format-integer-fancy

math--format-integer-fancy is a byte-compiled function defined in calc-ext.el.gz.

Signature

(math--format-integer-fancy A)

Source Code

;; Defined in /usr/src/emacs/lisp/calc/calc-ext.el.gz
(defun math--format-integer-fancy (a)   ; [I]
  (let ((str (if (= calc-number-radix 10)
		 (number-to-string a)
	       (math-format-radix a))))
    (if calc-leading-zeros
	(let* ((calc-internal-prec 6)
	       (digs (math-compute-max-digits (math-abs calc-word-size)
					      calc-number-radix))
	       (len (length str)))
	  (if (< len digs)
	      (setq str (concat (make-string (- digs len) ?0) str)))))
    (if calc-group-digits
	(let ((i (length str))
	      (g (if (integerp calc-group-digits)
		     (math-abs calc-group-digits)
		   (if (memq calc-number-radix '(2 16)) 4 3))))
	  (while (> i g)
	    (setq i (- i g)
		  str (concat (substring str 0 i)
			      calc-group-char
			      (substring str i))))
	  str))
    (if (and (/= calc-number-radix 10)
	     math-radix-explicit-format)
	(if calc-radix-formatter
	    (funcall calc-radix-formatter calc-number-radix str)
	  (format "%d#%s" calc-number-radix str))
      str)))