=================================================================== RCS file: /home/cvs/OpenXM/src/kxx/init-openxm.scm,v retrieving revision 1.11 retrieving revision 1.19 diff -u -p -r1.11 -r1.19 --- OpenXM/src/kxx/init-openxm.scm 2004/03/19 07:53:43 1.11 +++ OpenXM/src/kxx/init-openxm.scm 2009/02/22 17:30:03 1.19 @@ -1,13 +1,26 @@ -; $OpenXM: OpenXM/src/kxx/init-openxm.scm,v 1.10 2004/03/17 13:28:38 ohara Exp $ +; $OpenXM: OpenXM/src/kxx/init-openxm.scm,v 1.18 2006/02/13 12:30:08 ohara Exp $ -(define (openxm-eval t) - (import-from (texmacs plugin plugin-cmd)) - (import-from (texmacs plugin plugin-convert)) - (plugin-eval "openxm" "default" (object->tree t))) +(define (alist-search alist) + (let* ((lang (or (getenv "LANG") "C")) + (ent (assoc (substring lang 0 (min (string-length lang) 2)) alist))) + (if ent (cdr ent) (cdr (assoc "C" alist))))) -(define (openxm-eval-paste t) - (insert-tree (object->tree (openxm-eval t)))) +(define manual-asir2000 + (alist-search + '(("C" . "doc/asir2000/html-en/man_toc.html") ("ja" . "doc/asir2000/html-ja/man_toc.html")))) +(define manual-asir-contrib + (alist-search + '(("C" . "doc/asir-contrib/html-en/cman-en_toc.html") ("ja" . "doc/asir-contrib/html-ja/cman-ja_toc.html")))) + +; (define (openxm-eval t) +; (import-from (texmacs plugin plugin-cmd)) +; (import-from (texmacs plugin plugin-convert)) +; (plugin-eval "openxm" "default" (object->tree t))) + +; (define (openxm-eval-paste t) +; (insert-tree (object->tree (openxm-eval t)))) + (define (openxm-path t) (if (string? t) (let* ((openxm-home (or (getenv "OpenXM_HOME") "/usr/local/OpenXM")) @@ -23,6 +36,7 @@ ((url-exists-in-path? "kterm") "kterm -g 100x50 -e w3m") ((url-exists-in-path? "xterm") "xterm -g 100x50 -e w3m") (else #f))) + ((url-exists-in-path? "firefox" ) "firefox" ) ((url-exists-in-path? "mozilla" ) "mozilla" ) ((url-exists-in-path? "netscape") "netscape") ((url-exists-in-path? "iexplore") "iexplore") @@ -36,50 +50,58 @@ (w3m (openxm-path t))) (define (openxm-initialize) - (menu-extend texmacs-session-help-icons - (if (in-openxm?) - | - ((balloon (icon "tm_help.xpm") "Risa/Asir manual") - (w3m-search "doc/asir2000/html-jp/man_toc.html")))) +; (menu-extend texmacs-session-help-icons +; (if (in-openxm?) +; | +; ((balloon (icon "tm_help.xpm") "Risa/Asir manual") +; (w3m-search manual-asir2000)))) (menu-extend texmacs-extra-menu (if (in-openxm?) (=> "OpenXM" - (-> "Select engines" - ("Risa/Asir" (insert-string "!asir;")) - ("Kan/sm1" (insert-string "!sm1;"))) - (-> "Select display style" - ("LaTeX" (openxm-eval "!latex;")) - ("verbatim" (openxm-eval "!verbatim;"))) - (-> "Load Modules (Asir)" - ("ccurve" (openxm-eval "load(\"ccurve.rr\");")) - ("dsolv" (openxm-eval "load(\"dsolv\");")) - ("ratint" (openxm-eval "load(\"ratint\");")) - ("solv" (openxm-eval "load(\"solv\");")) - ("sp" (openxm-eval "load(\"sp\");")) - ("sturm" (openxm-eval "load(\"sturm\");")) - ("sym" (openxm-eval "load(\"sym\");")) - ("weight" (openxm-eval "load(\"weight\");")) - ("yang" (openxm-eval "load(\"yang.rr\");")) - ) - (-> "Display Configuration (Asir)" - ("Load default" (openxm-eval "noro_print_env(0);")) - ("Weyl algebra" (openxm-eval "noro_print_env(\"weyl\");")) - ("Euler OPs" (openxm-eval "noro_print_env(\"yang\");")) - ) - --- +; (-> "Select engines" +; ("Risa/Asir" (insert-string "!asir;")) +; ("Kan/sm1" (insert-string "!sm1;"))) +; (-> "Select display style" +; ("LaTeX" (openxm-eval "!latex;")) +; ("verbatim" (openxm-eval "!verbatim;"))) +; (-> "Load Modules (Asir)" +; ("ccurve" (openxm-eval "load(\"ccurve.rr\");")) +; ("dsolv" (openxm-eval "load(\"dsolv\");")) +; ("ratint" (openxm-eval "load(\"ratint\");")) +; ("solv" (openxm-eval "load(\"solv\");")) +; ("sp" (openxm-eval "load(\"sp\");")) +; ("sturm" (openxm-eval "load(\"sturm\");")) +; ("sym" (openxm-eval "load(\"sym\");")) +; ("weight" (openxm-eval "load(\"weight\");")) +; ("yang" (openxm-eval "load(\"yang.rr\");")) +; ) +; (-> "Display Configuration (Asir)" +; ("Load default" (openxm-eval "noro_print_env(0);")) +; ("Weyl algebra" (openxm-eval "noro_print_env(\"weyl\");")) +; ("Euler OPs" (openxm-eval "noro_print_env(\"yang\");")) +; ) +; --- (-> "Manuals" ("Risa/Asir manual" - (w3m-search "doc/asir2000/html-jp/man_toc.html")) + (w3m-search manual-asir2000)) ("Asir-contrib manual" - (w3m-search "doc/asir-contrib/html-ja/cman-ja_toc.html"))) + (w3m-search manual-asir-contrib))) (-> "Web" ("The OpenXM Project" (w3m "http://www.math.kobe-u.ac.jp/OpenXM/")) ("Risa/Asir web page" (w3m "http://www.math.kobe-u.ac.jp/Asir/index-ja.html"))) ))) ) +(define (openxm-serialize lan t) + (import-from (utils plugins plugin-cmd)) + (with u (pre-serialize lan t) + (with s (texmacs->verbatim (stree->tree u)) + (string-append (string-replace s "\n" "\v") "\n") + ))) + (plugin-configure openxm (:require (url-exists-in-path? "openxm")) (:initialize (openxm-initialize)) + (:serializer ,openxm-serialize) (:launch "exec openxm ox_texmacs") (:session "OpenXM[asir,sm1]"))