 
 ;;; Compatibility:
 ;;
-;; It requires GNU Emacs 21.  If you'are using Emacs 20, try
-;; changing this:
+;; It requires GNU Emacs 21 or later and Git 1.5.0 and up
+;;
+;; If you'are using Emacs 20, try changing this:
 ;;
 ;;            (overlay-put ovl 'face (list :background
 ;;                                         (cdr (assq 'color (cddddr info)))))

;;
;;; Code:

(require 'cl)			      ; to use `push', `pop'

(defun color-scale (l)
  (let* ((colors ())
         r g b)
    (setq r l)
    (while r
      (setq g l)
      (while g
        (setq b l)
        (while b
          (push (concat "#" (car r) (car g) (car b)) colors)
          (pop b))
        (pop g))
      (pop r))
    colors))

(defvar git-blame-dark-colors
  (color-scale '("0c" "04" "24" "1c" "2c" "34" "14" "3c")))

(defvar git-blame-light-colors
  (color-scale '("c4" "d4" "cc" "dc" "f4" "e4" "fc" "ec")))

(defvar git-blame-ancient-color "dark green")

(defvar git-blame-autoupdate t
  "*Automatically update the blame display while editing")

  "Recalculate all blame information in the current buffer"
  (interactive)
  (unless git-blame-mode
    (error "Git-blame is not active"))

  (git-blame-cleanup)
  (git-blame-run))
