Function: digit-argument
digit-argument is an interactive and byte-compiled function defined in
simple.el.gz.
Signature
(digit-argument ARG)
Documentation
Part of the numeric argument for the next command.
C-u (universal-argument) following digits or minus sign ends the argument.
Key Bindings
Source Code
;; Defined in /usr/src/emacs/lisp/simple.el.gz
(defun digit-argument (arg)
"Part of the numeric argument for the next command.
\\[universal-argument] following digits or minus sign ends the argument."
(interactive "P")
(prefix-command-preserve-state)
(let* ((char (if (integerp last-command-event)
last-command-event
(get last-command-event 'ascii-character)))
(digit (- (logand char ?\177) ?0)))
(setq prefix-arg (cond ((integerp arg)
(+ (* arg 10)
(if (< arg 0) (- digit) digit)))
((eq arg '-)
;; Treat -0 as just -, so that -01 will work.
(if (zerop digit) '- (- digit)))
(t
digit))))
(universal-argument--mode))