Variable: vc-cvs-sticky-tag-display

vc-cvs-sticky-tag-display is a customizable variable defined in vc-cvs.el.gz.

Value

t

Documentation

Specify the mode-line display of sticky tags.

Value t means default display, nil means no display at all. If the value is a function or macro, it is called with the sticky tag and its type as parameters, in that order. TYPE can have three different values: symbolic-name (TAG is a string), revision-number (TAG is a string) and date (TAG is a date as returned by encode-time). The return value of the function or macro will be displayed as a string.

Here's an example that will display the formatted date for sticky dates and the word "Sticky" for sticky tag names and revisions.

  (lambda (tag type)
    (cond ((eq type 'date) (format-time-string
                              vc-cvs-sticky-date-format-string tag))
          ((eq type 'revision-number) "Sticky")
          ((eq type 'symbolic-name) "Sticky")))

Here's an example that will abbreviate to the first character only, any text before the first occurrence of - for sticky symbolic tags. If the sticky tag is a revision number, the word "Sticky" is displayed. Date and time is displayed for sticky dates.

   (lambda (tag type)
     (cond ((eq type 'date) (format-time-string "%Y%m%d %H:%M" tag))
           ((eq type 'revision-number) "Sticky")
           ((eq type 'symbolic-name)
            (condition-case nil
                (progn
                  (string-match "\\\\([^-]*\\\\)\\\\(.*\\\\)" tag)
                  (concat (substring (match-string 1 tag) 0 1) ":"
                          (substring (match-string 2 tag) 1 nil)))
              (error tag))))) ; Fall-back to given tag name.

See also variable vc-cvs-sticky-date-format-string.

This variable was added, or its default value changed, in Emacs 22.1.

Source Code

;; Defined in /usr/src/emacs/lisp/vc/vc-cvs.el.gz
(defcustom vc-cvs-sticky-tag-display t
  "Specify the mode-line display of sticky tags.
Value t means default display, nil means no display at all.  If the
value is a function or macro, it is called with the sticky tag and
its type as parameters, in that order.  TYPE can have three different
values: `symbolic-name' (TAG is a string), `revision-number' (TAG is a
string) and `date' (TAG is a date as returned by `encode-time').  The
return value of the function or macro will be displayed as a string.

Here's an example that will display the formatted date for sticky
dates and the word \"Sticky\" for sticky tag names and revisions.

  (lambda (tag type)
    (cond ((eq type \\='date) (format-time-string
                              vc-cvs-sticky-date-format-string tag))
          ((eq type \\='revision-number) \"Sticky\")
          ((eq type \\='symbolic-name) \"Sticky\")))

Here's an example that will abbreviate to the first character only,
any text before the first occurrence of `-' for sticky symbolic tags.
If the sticky tag is a revision number, the word \"Sticky\" is
displayed.  Date and time is displayed for sticky dates.

   (lambda (tag type)
     (cond ((eq type \\='date) (format-time-string \"%Y%m%d %H:%M\" tag))
           ((eq type \\='revision-number) \"Sticky\")
           ((eq type \\='symbolic-name)
            (condition-case nil
                (progn
                  (string-match \"\\\\([^-]*\\\\)\\\\(.*\\\\)\" tag)
                  (concat (substring (match-string 1 tag) 0 1) \":\"
                          (substring (match-string 2 tag) 1 nil)))
              (error tag)))))       ; Fall-back to given tag name.

See also variable `vc-cvs-sticky-date-format-string'."
  :type '(choice boolean function)
  :version "22.1")