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))
	 (display-state (cond (isdir "")
			      ((vc-dir-fileinfo->display-state fileentry))
			      ((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" display-state)
      'face (cond
	     ((eq display-state 'up-to-date) 'vc-dir-status-up-to-date)
	     ((member display-state
		      '(missing conflict needs-update unlocked-changes
				"committing"))
	      'vc-dir-status-warning)
	     ((eq display-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))))