id をモードラインに反映

ふむふむ。たしか、cc-mode は auto-newline なんかでモードラインがかわるはず。ということで、

M-x find-function RET c-toggle-auto-newline RET

とかすると、c-update-modeline がそれっぽい。ので、さらに

M-x find-function RET c-update-modeline RET

として、それを参考に改造。

Index: simple-hatena-mode.el
===================================================================
--- simple-hatena-mode.el	(revision 961)
+++ simple-hatena-mode.el	(working copy)
@@ -221,7 +221,8 @@
         (setq simple-hatena-local-current-buffer-month
               (match-string 5 (buffer-file-name)))
         (setq simple-hatena-local-current-buffer-day
-              (match-string 6 (buffer-file-name))))
+              (match-string 6 (buffer-file-name)))
+        (simple-hatena-update-modeline))
     (error "Current buffer isn't related to Hatena::Diary Writer data file"))
 
   ;; フォントロック
@@ -521,6 +522,17 @@
       (car list)
     (concat (car list) sep (simple-hatena-internal-join sep (cdr list)))))
 
+(defun simple-hatena-update-modeline ()
+  "モードラインの表示を更新する"
+  (let ((id
+         (concat
+          (if simple-hatena-local-current-buffer-group-name
+              (format "g:%s:" simple-hatena-local-current-buffer-name)
+            "")
+          (format "id:%s" simple-hatena-local-current-buffer-id))))
+    (setq mode-name (format "Simple Hatena [%s]" id))
+    (force-mode-line-update)))
+
 (provide 'simple-hatena-mode)
 
 ;;; simple-hatena-mode.el ends here

以上、10分ハッキング。