X-Git-Url: https://cgit.sxemacs.org/?p=riece;a=blobdiff_plain;f=lisp%2Friece-log.el;h=a905e73d973050a449e509721bd656341f23e01b;hp=c7684642a708311f1ff9fe48c023b909e3d0b087;hb=aecc300ba138d93dfa739c8e2accee7525490e04;hpb=882acdc3888c53dea8bb0bd961b00d763f1eeced diff --git a/lisp/riece-log.el b/lisp/riece-log.el index c768464..a905e73 100644 --- a/lisp/riece-log.el +++ b/lisp/riece-log.el @@ -89,6 +89,10 @@ If integer, flash back only this line numbers. t means all lines." :group 'riece-highlight-faces) (defvar riece-log-date-face 'riece-log-date-face) +(defvar riece-log-lock-file nil + "Lock file for riece-log. +It is created if there is at least one instance of Emacs running riece-log.") + (defvar riece-log-enabled nil) (defconst riece-log-description @@ -104,7 +108,8 @@ If integer, flash back only this line numbers. t means all lines." (make-directory (file-name-directory file) t)) (write-region (concat (format-time-string "%H:%M") " " (riece-format-message message)) - nil file t 0)))) + nil file t 0 + riece-log-lock-file)))) (defun riece-log-get-file (identity) (expand-file-name @@ -248,6 +253,13 @@ If LINES is t, insert today's logs entirely." '(riece-button))) (defun riece-log-insinuate () + (make-directory riece-log-directory t) + (setq riece-log-lock-file + (expand-file-name (format "!%s-%d-%d" + (riece-log-encode-file-name (system-name)) + (user-uid) + (emacs-pid)) + riece-log-directory)) ;; FIXME: Use `riece-after-insert-functions' for trapping change, ;; notice, wallops and so on. But must add argument. (add-hook 'riece-after-display-message-functions