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

[mhc:02121] diff of mhc.el (mhc-delete() 実行後の hook 追加)



野口です

最近、mhc -> (outlook) -> iPaq へのExport を行なうようになりましたが、

  mhc でスケジュール登録 
    ↓
  cygwin ターミナルに移動して mhc2ol 実行

という Window 間に跨がる作業は面倒で、たまに export し忘れることがあり
ます。

そこで、~/.emacs.el 内で以下のような hook を仕掛けてみました。

(add-hook 'mhc-draft-finish-hook
	    (lambda ()
	        (shell-command "/usr/bin/ruby /usr/bin/mhc2ol -i -H")))

これで、登録・編集時は自動的に export できるようになったのですが、逆の
「キャンセルとなったスケジュール」を削除する際(C-c . d) の場合も同様に
export させたいと思うようになりました。

そこで、添付のような修正で、mhc-delete() 実施後に hook をしかけられる
ようにしてみました。

これと、.emacs.el 中で設定した

(add-hook 'mhc-delete-after-hook
	    (lambda ()
	        (shell-command "/usr/bin/ruby /usr/bin/mhc2ol -i -H")))

で希望通りの動きをしてくれています。
以上、ご検討いただければ幸いです。

また、このような hook を新設せずとも「.emacs.el 内で頑張れば同様のこと
が実現できる手法」などありましたら教えてくださいませ。

-- 
NOGUCHI Yusuke <nogunogu@xxxxxxxxxxxxxxxxx>


*** mhc.el.org5	Mon Apr 11 12:14:17 2005
--- mhc.el	Fri May 13 13:48:00 2005
***************
*** 833,842 ****
      ;; failed.
      (mhc-window-pop)))
  
  (defun mhc-delete ()
    "Delete the current schedule."
    (interactive)
!   (mhc-delete-file (mhc-summary-record)))
  
  (defun mhc-delete-file (record)
    (interactive)
--- 833,848 ----
      ;; failed.
      (mhc-window-pop)))
  
+ (defcustom mhc-delete-after-hook nil
+   "Run hook after mhc-delete."
+   :group 'mhc
+   :type 'hook)
+ 
  (defun mhc-delete ()
    "Delete the current schedule."
    (interactive)
!   (mhc-delete-file (mhc-summary-record))
!   (run-hooks 'mhc-delete-after-hook))
  
  (defun mhc-delete-file (record)
    (interactive)