Function: vc-default-dir-printer

vc-default-dir-printer is a byte-compiled function defined in vc-dir.el.gz.

Signature

(vc-default-dir-printer BACKEND FILEENTRY)

Documentation

Pretty print FILEENTRY.

Source Code

;; Defined in /usr/src/emacs/lisp/vc/vc-dir.el.gz
(defun vc-default-dir-printer (_backend fileentry)
  "Pretty print FILEENTRY."
  ;; If you change the layout here, change vc-dir-move-to-goal-column.
  ;; VC backends can implement backend specific versions of this
  ;; function.  Changes here might need to be reflected in the
  ;; vc-BACKEND-dir-printer functions.
  (let* ((isdir (vc-dir-fileinfo->directory fileentry))
	(state (if isdir "" (vc-dir-fileinfo->state fileentry)))
	(filename (vc-dir-fileinfo->name fileentry)))
    (insert
     (propertize
      (format "%c" (if (vc-dir-fileinfo->marked fileentry) ?* ? ))
      'face 'vc-dir-mark-indicator)
     "   "
     (propertize
      (format "%-20s" state)
      'face (cond
             ((eq state 'up-to-date) 'vc-dir-status-up-to-date)
             ((memq state '(missing conflict needs-update unlocked-changes))
              'vc-dir-status-warning)
             ((eq state 'ignored) 'vc-dir-status-ignored)
             (t 'vc-dir-status-edited))
      'mouse-face 'highlight
      'keymap vc-dir-status-mouse-map)
     " "
     (propertize
      (format "%s" filename)
      'face
      (if isdir 'vc-dir-directory 'vc-dir-file)
      'help-echo
      (if isdir
	  "Directory\nVC operations can be applied to it\nmouse-3: Pop-up menu"
	"File\nmouse-3: Pop-up menu")
      'mouse-face 'highlight
      'keymap vc-dir-filename-mouse-map))))