Function: loaddefs-generate--print-form
loaddefs-generate--print-form is a byte-compiled function defined in
loaddefs-gen.el.gz.
Signature
(loaddefs-generate--print-form DEF)
Documentation
Print DEF in a format that makes sense for version control.
Source Code
;; Defined in /usr/src/emacs/lisp/emacs-lisp/loaddefs-gen.el.gz
(defun loaddefs-generate--print-form (def)
"Print DEF in a format that makes sense for version control."
(if (or (not (consp def))
(not (symbolp (car def)))
(memq (car def) '( make-obsolete
define-obsolete-function-alias))
(not (stringp (nth 3 def))))
(prin1 def (current-buffer) t)
;; We want to print, for instance, `defvar' values while escaping
;; control characters (so that we don't end up with lines with
;; trailing tab characters and the like), but we don't want to do
;; this for doc strings, because then the doc strings would be on
;; one single line, which would lead to more VC churn. So --
;; typically (defvar foo 'value "\ Doc string" ...).
(insert "(")
(dotimes (_ 3)
(prin1 (pop def) (current-buffer)
'(t (escape-newlines . t)
(escape-control-characters . t)))
(insert " "))
(let ((start (point)))
(prin1 (pop def) (current-buffer) t)
(save-excursion
(goto-char (1+ start))
(insert "\\\n")))
(while def
(insert " ")
(prin1 (pop def) (current-buffer)
'(t (escape-newlines . t)
(escape-control-characters . t))))
(insert ")")))