自動的にタイムスタンプを挿入する
なるほど、その手があったか。
(defun simple-hatena-electric-asterisk (arg) "Insert an asterisk. If current point is positioned at beginning of line, timestamp is also inserted. " (interactive "*p") (if (zerop (current-column)) (simple-hatena-timestamp) (self-insert-command arg))) (define-key simple-hatena-mode-map "*" 'simple-hatena-electric-asterisk)
いま適当に作ったけど割りとよさげ。
追記
よく考えたら自分でラベルを入力するひともいるんだから、適当にカスタマイズできたほうがいいな。
(defcustom simple-hatena-auto-insert-timestamp-flag nil "行頭で * が入力されたときに自動でタイムスタンプを挿入する" :type 'boolean :group 'simple-hatena) (defun simple-hatena-electric-asterisk (arg) "Insert an asterisk. If current point is positioned at beginning of line, timestamp is also inserted. " (interactive "*p") (if (and simple-hatena-auto-insert-timestamp-flag (zerop (current-column))) (simple-hatena-timestamp) (self-insert-command arg))) (define-key simple-hatena-mode-map "*" 'simple-hatena-electric-asterisk)
ところで、simple-hatena-mode は defvar じゃなく、defcustom を使っているけど、type や group を設定しないとあまり意味がない気がする。