From e13c4fb1d8303affa0f64e5a5ba06e9b3b03d475 Mon Sep 17 00:00:00 2001 From: Yuchen Pei Date: Mon, 26 Jun 2023 16:34:45 +1000 Subject: let's try again --- emacs/.emacs.d/init/ycp-vc.el | 7 +++--- emacs/.emacs.d/lisp/my/my-diff-hl.el | 41 ++++++++++++++++++++++++++++++++++++ emacs/.emacs.d/lisp/my/my-project.el | 7 ------ 3 files changed, 44 insertions(+), 11 deletions(-) create mode 100644 emacs/.emacs.d/lisp/my/my-diff-hl.el (limited to 'emacs') diff --git a/emacs/.emacs.d/init/ycp-vc.el b/emacs/.emacs.d/init/ycp-vc.el index 232639e..251714d 100644 --- a/emacs/.emacs.d/init/ycp-vc.el +++ b/emacs/.emacs.d/init/ycp-vc.el @@ -76,10 +76,9 @@ (:delay 30) (setq git-commit-summary-max-length 50) (setq git-commit-style-convention-checks '(non-empty-second-line)) - ;; Revert all buffers in the project after a commit, to refresh - ;; diff-hl - (require 'my-project) - (add-hook 'git-commit-post-finish-hook #'my-project-revert-all-buffers) + ;; Refresh all buffers in the project after a commit for diff-hl + (require 'my-diff-hl) + (add-hook 'git-commit-post-finish-hook #'my-project-diff-hl-update) ) (my-package magit diff --git a/emacs/.emacs.d/lisp/my/my-diff-hl.el b/emacs/.emacs.d/lisp/my/my-diff-hl.el new file mode 100644 index 0000000..8587c8d --- /dev/null +++ b/emacs/.emacs.d/lisp/my/my-diff-hl.el @@ -0,0 +1,41 @@ +;;; my-diff-hl.el -- Extensions to diff-hl -*- lexical-binding: t -*- + +;; Copyright (C) 2023 Free Software Foundation. + +;; Author: Yuchen Pei +;; Package-Requires: ((emacs "28.2")) + +;; This file is part of dotted. + +;; dotted is free software: you can redistribute it and/or modify it under +;; the terms of the GNU Affero General Public License as published by +;; the Free Software Foundation, either version 3 of the License, or +;; (at your option) any later version. + +;; dotted is distributed in the hope that it will be useful, but WITHOUT +;; ANY WARRANTY; without even the implied warranty of MERCHANTABILITY +;; or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General +;; Public License for more details. + +;; You should have received a copy of the GNU Affero General Public +;; License along with dotted. If not, see . + +;;; Commentary: + +;; Extensions to diff-hl. + +;;; Code: + +(require 'diff-hl) +(require 'project) + +(defun my-project-diff-hl-update () + "Revert all buffers in the current project." + (interactive) + (dolist (buffer (project-buffers (project-current))) + (when (buffer-file-name buffer) + (with-current-buffer buffer + (diff-hl-update))))) + +(provide 'my-diff-hl) +;;; my-diff-hl.el ends here diff --git a/emacs/.emacs.d/lisp/my/my-project.el b/emacs/.emacs.d/lisp/my/my-project.el index 677bec6..1cf23ee 100644 --- a/emacs/.emacs.d/lisp/my/my-project.el +++ b/emacs/.emacs.d/lisp/my/my-project.el @@ -144,12 +144,5 @@ projects." (insert default-directory "\n") (call-process "cloc" nil "*cloc*" nil "HEAD" "--quiet"))) -(defun my-project-revert-all-buffers () - "Revert all buffers in the current project." - (interactive) - (dolist (buffer (project-buffers (project-current))) - (when (buffer-file-name) - (revert-buffer-quick buffer)))) - (provide 'my-project) ;;; my-project.el ends here -- cgit v1.2.3