=================================================================== RCS file: /home/cvs/OpenXM/src/kxx/init-openxm.scm,v retrieving revision 1.6 retrieving revision 1.12 diff -u -p -r1.6 -r1.12 --- OpenXM/src/kxx/init-openxm.scm 2004/03/12 02:22:27 1.6 +++ OpenXM/src/kxx/init-openxm.scm 2004/03/25 01:05:34 1.12 @@ -1,24 +1,36 @@ -; $OpenXM: OpenXM/src/kxx/init-openxm.scm,v 1.5 2004/03/11 18:25:57 ohara Exp $ +; $OpenXM: OpenXM/src/kxx/init-openxm.scm,v 1.11 2004/03/19 07:53:43 ohara Exp $ -(define (openxm-plugin-eval t) +(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-plugin-eval-paste t) - (insert-tree (object->tree (openxm-plugin-eval 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")) - (local-path (string-append openxm-home "/" t)) - (web-prefix "http://www.math.kobe-u.ac.jp/OpenXM/Current/") - (web-path (string-append web-prefix t))) + (local-path (string-append openxm-home "/" t)) + (web-prefix "http://www.math.kobe-u.ac.jp/OpenXM/Current/") + (web-path (string-append web-prefix t))) (if (url-exists? local-path) local-path web-path)))) +(define w3m-cmd + (cond + ((url-exists-in-path? "w3m") + (cond ((url-exists-in-path? "rxvt") "rxvt -g 100x50 -e w3m") + ((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? "mozilla" ) "mozilla" ) + ((url-exists-in-path? "netscape") "netscape") + ((url-exists-in-path? "iexplore") "iexplore") + (else #f))) + (define (w3m t) - (if (string? t) - (system (string-append "rxvt -g 100x50 -e w3m " t "&")))) + (if (and (string? t) w3m-cmd) + (system (string-append w3m-cmd " " t " &")))) (define (w3m-search t) (w3m (openxm-path t))) @@ -35,9 +47,25 @@ (-> "Select engines" ("Risa/Asir" (insert-string "!asir;")) ("Kan/sm1" (insert-string "!sm1;"))) - (-> "Output format" - ("LaTeX" (openxm-plugin-eval "!latex;")) - ("verbatim" (openxm-plugin-eval "!verbatim;"))) + (-> "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" @@ -45,12 +73,21 @@ ("Asir-contrib manual" (w3m-search "doc/asir-contrib/html-ja/cman-ja_toc.html"))) (-> "Web" - ("The OpenXM Project" (w3m "http://www.math.kobe-u.ac.jp/OpenXM/"))) + ("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 (texmacs plugin plugin-cmd)) + (with u (pre-serialize lan t) + (with s (texmacs->verbatim (object->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]"))