diff lisp/egg/egg.el @ 138:6608ceec7cf8 r20-2b3

Import from CVS: tag r20-2b3
author cvs
date Mon, 13 Aug 2007 09:31:46 +0200
parents 34a5b81f86ba
children 585fb297b004
line wrap: on
line diff
--- a/lisp/egg/egg.el	Mon Aug 13 09:31:13 2007 +0200
+++ b/lisp/egg/egg.el	Mon Aug 13 09:31:46 2007 +0200
@@ -2724,6 +2724,16 @@
 (if (boundp 'mouse-track-cleanup-hook)
     (add-hook 'mouse-track-cleanup-hook 'fence-mouse-protect))
 
+(defun egg-lang-switch-callback ()
+  "Do whatever processing is necessary when the language-environment changes."
+  (if egg:*in-fence-mode*
+      (progn
+	(its:reset-input)
+	(fence-cancel-input)))
+  (let ((func (get current-language-environment 'set-egg-environ)))
+    (if (not (null func))
+      (funcall func))))
+
 (defun fence-mode-help-command ()
   "Display documentation for fence-mode."
   (interactive)
@@ -2834,9 +2844,13 @@
 
 (define-key global-map "\C-^"  'special-symbol-input)
 
-(autoload 'busyu-input "busyu" nil t)	;92.10.18 by K.Handa
-(autoload 'kakusuu-input "busyu" nil t)	;92.10.18 by K.Handa
+(autoload 'busyu-input "egg-busyu" nil t)
+(autoload 'kakusuu-input "egg-busyu" nil t)
 
 (provide 'egg)
 
+;; if set-lang-environment has already been called, call egg-lang-switch-callback
+(if (not (null current-language-environment))
+    (egg-lang-switch-callback))
+
 ;;; egg.el ends here