emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[elpa] externals/lentic c09c57b8ce 051/333: Saving buffer forces linked-


From: ELPA Syncer
Subject: [elpa] externals/lentic c09c57b8ce 051/333: Saving buffer forces linked-buffer saving also.
Date: Tue, 27 Feb 2024 13:00:00 -0500 (EST)

branch: externals/lentic
commit c09c57b8ce52ad004f38dacaecd9240b0ec1c99d
Author: Phillip Lord <phillip.lord@newcastle.ac.uk>
Commit: Phillip Lord <phillip.lord@newcastle.ac.uk>

    Saving buffer forces linked-buffer saving also.
    
    Previously saving a buffer would not force save of the
    linked-buffer. This means that although synced in Emacs they were
    out-of-sync on file, which was painful with any automated testing.
---
 linked-buffer.el | 16 +++++++++++++++-
 1 file changed, 15 insertions(+), 1 deletion(-)

diff --git a/linked-buffer.el b/linked-buffer.el
index b359b75d71..82e59b22e1 100644
--- a/linked-buffer.el
+++ b/linked-buffer.el
@@ -259,7 +259,9 @@ See `linked-buffer-init' for details."
   (add-hook 'after-change-functions
             'linked-buffer-after-change-function)
   (add-hook 'before-change-functions
-            'linked-buffer-before-change-function))
+            'linked-buffer-before-change-function)
+  (add-hook 'after-save-hook
+            'linked-buffer-after-save-hook))
 
 (defvar linked-buffer-log t)
 (defmacro linked-buffer-log (&rest rest)
@@ -286,6 +288,18 @@ See `linked-buffer-init' for details."
   (interactive)
   (setq linked-buffer-emergency nil))
 
+(defvar linked-buffer-saving-p nil)
+
+(defun linked-buffer-after-save-hook ()
+  (linked-buffer-when-linked
+   ;; don't want to recurse!
+   (when (not linked-buffer-saving-p)
+     (let ((linked-buffer-saving-p t))
+       (with-current-buffer
+           (linked-buffer-that linked-buffer-config)
+         (when (buffer-file-name)
+           (save-buffer)))))))
+
 (defun linked-buffer-post-command-hook ()
   "Update point according to config, with error handling."
   ;;(message "Entering post-command-hook")



reply via email to

[Prev in Thread] Current Thread [Next in Thread]