X-Git-Url: http://cgit.sxemacs.org/?p=riece;a=blobdiff_plain;f=lisp%2Friece-kakasi.el;h=f51eb591ae602bf76669182a0a59b28e448eb94a;hp=d1fc3633c288baebcd3a141cb4cb35f06b231f93;hb=5a45c8b53ddb25f03bdab9f3491a92c064c47c7a;hpb=303cf9b3e8f8d052d7cada56d2c1004b84d908c0 diff --git a/lisp/riece-kakasi.el b/lisp/riece-kakasi.el index d1fc363..f51eb59 100644 --- a/lisp/riece-kakasi.el +++ b/lisp/riece-kakasi.el @@ -19,8 +19,8 @@ ;; You should have received a copy of the GNU General Public License ;; along with GNU Emacs; see the file COPYING. If not, write to the -;; Free Software Foundation, Inc., 59 Temple Place - Suite 330, -;; Boston, MA 02111-1307, USA. +;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, +;; Boston, MA 02110-1301, USA. ;;; Commentary: @@ -28,8 +28,6 @@ ;;; Code: -(defvar riece-kakasi-enabled nil) - (defconst riece-kakasi-description "Convert Japanese to roman string by KAKASI.") @@ -39,8 +37,7 @@ (defun riece-kakasi-convert-string (string) (process-send-string riece-kakasi-process (concat string "\n")) - (save-excursion - (set-buffer (process-buffer riece-kakasi-process)) + (with-current-buffer (process-buffer riece-kakasi-process) (while (progn (goto-char (point-min)) (not (search-forward "\n" nil t))) @@ -49,7 +46,7 @@ (delete-region (point-min) (point))))) (defun riece-kakasi-message-filter (message) - (if riece-kakasi-enabled + (if (get 'riece-kakasi 'riece-addon-enabled) (riece-message-set-text message (riece-kakasi-convert-string (riece-message-text message)))) @@ -58,18 +55,19 @@ (defun riece-kakasi-insinuate () (add-hook 'riece-message-filter-functions 'riece-kakasi-message-filter)) +(defun riece-kakasi-uninstall () + (remove-hook 'riece-message-filter-functions 'riece-kakasi-message-filter)) + (defun riece-kakasi-enable () (setq riece-kakasi-process (start-process "kakasi" (generate-new-buffer " *riece-kakasi*") "kakasi" "-Ha" "-Ka" "-Ja" "-Ea" "-ka")) (with-current-buffer (process-buffer riece-kakasi-process) (buffer-disable-undo) - (erase-buffer)) - (setq riece-kakasi-enabled t)) + (erase-buffer))) (defun riece-kakasi-disable () - (kill-buffer (process-buffer riece-kakasi-process)) - (setq riece-kakasi-enabled nil)) + (kill-buffer (process-buffer riece-kakasi-process))) (provide 'riece-kakasi)