(defun wnn-start-conversion (yomi &optional language dic-set reverse)
"Convert YOMI string to kanji, and enter conversion mode.
Return the list of bunsetsu."
- (let* ((server-info (wnn-server-get-info language))
- (env (wnn-get-environment server-info dic-set reverse))
- (result (wnnrpc-renbunsetsu-conversion env yomi
- (WNN-const BUN_SENTOU) "")))
- (wnnenv-set-daibunsetsu-info env (car result))
- (cdr result)))
+ (let ((server-info (wnn-server-get-info language)))
+ (if server-info
+ (let* ((env (wnn-get-environment server-info dic-set reverse))
+ (result (wnnrpc-renbunsetsu-conversion env yomi
+ (WNN-const BUN_SENTOU) "")))
+ (wnnenv-set-daibunsetsu-info env (car result))
+ (cdr result))
+ (signal 'lang-not-supported))))
(defun wnn-start-reverse-conversion (yomi &optional language dic-set)
(wnn-start-conversion yomi language dic-set t))
,@body)
(setq env-list (cdr env-list))))))
-(defun wnn-fini (lang &optional save-only)
+(defun wnn-fini ()
+ (let ((l wnn-support-languages))
+ (while l
+ (wnn-fini-lang (car l))
+ (setq l (cdr l)))))
+
+(defun wnn-fini-lang (lang &optional save-only)
(let* ((server-info (wnn-server-get-info lang))
(server-type (wnn-server-type server-info))
(l wnn-environments)
(or (listp lang)
(setq lang (list lang)))
(while lang
- (wnn-fini (car lang))
+ (wnn-fini-lang (car lang))
(setq lang (cdr lang))))
(defun wnn-dictionary-save (lang)
(or (listp lang)
(setq lang (list lang)))
(while lang
- (wnn-fini (car lang) t)
+ (wnn-fini-lang (car lang) t)
(setq lang (cdr lang))))
(defun wnn-read-active-lang ()
;;; setup
(require 'egg)
-(load "egg/wnnrpc")
;;;###autoload
(defun egg-activate-wnn (&rest arg)
"Activate Wnn backend of Tamagotchy."
- (egg-set-support-languages wnn-support-languages)
- (egg-set-conversion-backend wnn-conversion-backend
- wnn-support-languages)
+ (setq egg-conversion-backend wnn-conversion-backend)
+ (if (not (fboundp 'wnnrpc-open))
+ (load-library "egg/wnnrpc"))
(apply 'egg-mode arg))
;;; egg/wnn.el ends here.