mirror of
https://git.savannah.gnu.org/git/emacs.git
synced 2025-02-08 20:58:58 +00:00
Use state prettyprinter in vc-dir buffers.
This commit is contained in:
parent
c8039c6b14
commit
7c2ec3f975
@ -1,3 +1,8 @@
|
||||
2008-05-16 Eric S. Raymond <esr@snark.thyrsus.com>
|
||||
|
||||
* vc2-xtra.texi: Mofify an example so it reflects what vc.el
|
||||
now does.
|
||||
|
||||
2008-05-15 Eric S. Raymond <esr@snark.thyrsus.com>
|
||||
|
||||
* vc2-xtra.texi, emacs.texi, files.texi: Snapshots node renamed to
|
||||
|
@ -43,8 +43,8 @@ output is used. Here is an example using RCS:
|
||||
@smallexample
|
||||
@group
|
||||
DIRECTORY ./
|
||||
edited file1.c
|
||||
up-to-date file2.c
|
||||
(modified) file1.c
|
||||
(update) file2.c
|
||||
@end group
|
||||
@end smallexample
|
||||
|
||||
|
@ -1,3 +1,11 @@
|
||||
<<<<<<< ChangeLog
|
||||
2008-05-16 Eric S. Raymond <esr@snark.thyrsus.com>
|
||||
|
||||
* vc.el (vc-default-status-printer)
|
||||
(vc-default-prettify-state-info): Enhance the state prettyprinter
|
||||
to deall better with unknown states and indirect through it when
|
||||
painting vc-dir buffers.
|
||||
|
||||
2008-05-16 John Paul Wallington <jpw@pobox.com>
|
||||
|
||||
* vc-dispatcher.el (top-level): Don't require cl when compiling.
|
||||
|
18
lisp/vc.el
18
lisp/vc.el
@ -1808,24 +1808,24 @@ specific headers."
|
||||
(defun vc-default-status-printer (backend fileentry)
|
||||
"Pretty print FILEENTRY."
|
||||
;; If you change the layout here, change vc-dir-move-to-goal-column.
|
||||
(let ((state
|
||||
(if (vc-dir-fileinfo->directory fileentry)
|
||||
'DIRECTORY
|
||||
(vc-dir-fileinfo->state fileentry))))
|
||||
(let* ((isdir (vc-dir-fileinfo->directory fileentry))
|
||||
(state (if isdir 'DIRECTORY (vc-dir-fileinfo->state fileentry)))
|
||||
(filename (vc-dir-fileinfo->name fileentry))
|
||||
(prettified (if isdir state (vc-call-backend backend 'prettify-state-info filename))))
|
||||
(insert
|
||||
(propertize
|
||||
(format "%c" (if (vc-dir-fileinfo->marked fileentry) ?* ? ))
|
||||
'face 'font-lock-type-face)
|
||||
" "
|
||||
(propertize
|
||||
(format "%-20s" state)
|
||||
(format "%-20s" prettified)
|
||||
'face (cond ((eq state 'up-to-date) 'font-lock-builtin-face)
|
||||
((memq state '(missing conflict)) 'font-lock-warning-face)
|
||||
(t 'font-lock-variable-name-face))
|
||||
'mouse-face 'highlight)
|
||||
" "
|
||||
(propertize
|
||||
(format "%s" (vc-dir-fileinfo->name fileentry))
|
||||
(format "%s" filename)
|
||||
'face 'font-lock-function-name-face
|
||||
'mouse-face 'highlight))))
|
||||
|
||||
@ -2643,16 +2643,16 @@ to provide the `find-revision' operation instead."
|
||||
(let* ((state (vc-state file))
|
||||
(statestring
|
||||
(cond
|
||||
((stringp state) (concat "(" state ")"))
|
||||
((stringp state) (concat "(locked:" state ")"))
|
||||
((eq state 'edited) "(modified)")
|
||||
((eq state 'needs-merge) "(merge)")
|
||||
((eq state 'needs-update) "(update)")
|
||||
((eq state 'added) "(added)")
|
||||
((eq state 'removed) "(removed)")
|
||||
((eq state 'ignored) "(ignored)")
|
||||
((eq state 'unregistered) "?")
|
||||
((eq state 'unregistered) "(unregistered)")
|
||||
((eq state 'unlocked-changes) "(stale)")
|
||||
((not state) "(unknown)")))
|
||||
(t (concat "(unknown:" state ")"))))
|
||||
(buffer
|
||||
(get-file-buffer file))
|
||||
(modflag
|
||||
|
Loading…
x
Reference in New Issue
Block a user