Merge branch 'lm/git-blame-el'
eLisp fixes for a contrib/ script. * lm/git-blame-el: git-blame.el: Do not use bare 0 to mean (point-min) git-blame.el: Use with-current-buffer where appropriate git-blame.el: Do not use goto-line in lisp codemaint
commit
6a7f2b2396
|
@ -337,16 +337,16 @@ See also function `git-blame-mode'."
|
|||
(defvar in-blame-filter nil)
|
||||
|
||||
(defun git-blame-filter (proc str)
|
||||
(with-current-buffer (process-buffer proc)
|
||||
(save-excursion
|
||||
(set-buffer (process-buffer proc))
|
||||
(goto-char (process-mark proc))
|
||||
(insert-before-markers str)
|
||||
(goto-char 0)
|
||||
(goto-char (point-min))
|
||||
(unless in-blame-filter
|
||||
(let ((more t)
|
||||
(in-blame-filter t))
|
||||
(while more
|
||||
(setq more (git-blame-parse)))))))
|
||||
(setq more (git-blame-parse))))))))
|
||||
|
||||
(defun git-blame-parse ()
|
||||
(cond ((looking-at "\\([0-9a-f]\\{40\\}\\) \\([0-9]+\\) \\([0-9]+\\) \\([0-9]+\\)\n")
|
||||
|
@ -385,11 +385,12 @@ See also function `git-blame-mode'."
|
|||
info))))
|
||||
|
||||
(defun git-blame-create-overlay (info start-line num-lines)
|
||||
(with-current-buffer git-blame-file
|
||||
(save-excursion
|
||||
(set-buffer git-blame-file)
|
||||
(let ((inhibit-point-motion-hooks t)
|
||||
(inhibit-modification-hooks t))
|
||||
(goto-line start-line)
|
||||
(goto-char (point-min))
|
||||
(forward-line (1- start-line))
|
||||
(let* ((start (point))
|
||||
(end (progn (forward-line num-lines) (point)))
|
||||
(ovl (make-overlay start end))
|
||||
|
@ -410,7 +411,7 @@ See also function `git-blame-mode'."
|
|||
(cdr (assq 'color (cdr info))))))
|
||||
(overlay-put ovl 'line-prefix
|
||||
(propertize (format-spec git-blame-prefix-format spec)
|
||||
'face 'git-blame-prefix-face))))))
|
||||
'face 'git-blame-prefix-face)))))))
|
||||
|
||||
(defun git-blame-add-info (info key value)
|
||||
(nconc info (list (cons (intern key) value))))
|
||||
|
|
Loading…
Reference in New Issue