From cc09724f6c9972999fffd3df7cbba85f2f99db33 Mon Sep 17 00:00:00 2001 From: Dmitry Gutov Date: Tue, 10 Sep 2013 05:47:12 +0300 Subject: [PATCH] * diff-hl-mode: Extract diff-hl-maybe-define-bitmaps. * diff-hl-dired-mode: Use it. #6 --- diff-hl-dired.el | 1 + diff-hl.el | 11 +++++++---- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/diff-hl-dired.el b/diff-hl-dired.el index a3b766fbe..066ff6f1f 100644 --- a/diff-hl-dired.el +++ b/diff-hl-dired.el @@ -31,6 +31,7 @@ :lighter "" (if diff-hl-dired-mode (progn + (diff-hl-maybe-define-bitmaps) (set (make-local-variable 'diff-hl-dired-process-buffer) nil) (add-hook 'dired-after-readin-hook 'diff-hl-dired-update nil t)) (remove-hook 'dired-after-readin-hook 'diff-hl-dired-update t) diff --git a/diff-hl.el b/diff-hl.el index 4bfde1ae8..f9d65fcf9 100644 --- a/diff-hl.el +++ b/diff-hl.el @@ -140,6 +140,12 @@ (define-fringe-bitmap 'diff-hl-bmp-change (make-vector w2 (* 3 middle-bit)) w2 w2)))) +(defun diff-hl-maybe-define-bitmaps () + (when (window-system) ;; No fringes in the console. + (unless (fringe-bitmap-p 'diff-hl-bmp-empty) + (diff-hl-define-bitmaps) + (define-fringe-bitmap 'diff-hl-bmp-empty [0] 1 1 'center)))) + (defvar diff-hl-spec-cache (make-hash-table :test 'equal)) (defun diff-hl-fringe-spec (type pos) @@ -390,10 +396,7 @@ in the source file, or the last line of the hunk above it." (,(kbd "C-x v ]") . diff-hl-next-hunk)) (if diff-hl-mode (progn - (when (window-system) ;; No fringes in the console. - (unless (fringe-bitmap-p 'diff-hl-bmp-empty) - (diff-hl-define-bitmaps) - (define-fringe-bitmap 'diff-hl-bmp-empty [0] 1 1 'center))) + (diff-hl-maybe-define-bitmaps) (add-hook 'after-save-hook 'diff-hl-update nil t) (add-hook 'after-change-functions 'diff-hl-edit nil t) (if vc-mode -- 2.39.2