「Imaxima」の版間の差分

提供: MacWiki
移動: 案内検索
(imaxima-maxima-options)
行160: 行160:
 
== その他 ==
 
== その他 ==
  
*本田康晃さん(漢字合っているでしょうか?)が Jesper Harder さんから Imaxima の開発を引き継がれたそうです。(2005/08/01)
+
*本田康晃さんが Jesper Harder さんから Imaxima の開発を引き継がれたそうです。(2005/08/01)
 
**http://www.math.utexas.edu/pipermail/maxima/2005/010634.html
 
**http://www.math.utexas.edu/pipermail/maxima/2005/010634.html
  

2008年5月15日 (木) 02:13時点における版

Imaxima とは?

Maxima の出力結果を美しく表示するための Emacs Lisp。インライン画像表示対応版 emacs の他、TeX と Ghostscript が必要です。

インストール方法

CarbonEmacsPackage には imaxima.el が同梱されているので、インストール (2/3) (3/3) の手順は不要になります。 また、MacOSX_WorkShop では Maxima なども含めた全ファイルを一括してインストール出来るようです。

インストール(1/3)...breqn

breqn.tgz(breqn094.tgz)を展開して、適当なディレクトリに置き、mktexlsr を実行。MacPorts の場合は、

$ cd
$ curl -O --disable-epsv ftp://ftp.ams.org/pub/tex/breqn094.tgz
$ tar xvfz breqn094.tgz
$ sudo install -m 0755 -d /opt/local/share/texmf-local/tex/latex/breqn
$ sudo install -m 0644 breqn094/* /opt/local/share/texmf-local/tex/latex/breqn

$ sudo mktexlsr
  • breqn.sty は、ライセンス関連のドキュメントが整備される前に作者の Michael J Downes さんが他界なさったという事情があり、TeX関連のパッケージに収録されていないことが多いです。

kpsewhich を実行して、TeX に認識されているかどうかを確認した方がよいでしょう。

$ kpsewhich breqn.sty
/opt/local/share/texmf-local/tex/latex/breqn/breqn.sty

インストール(2/3)...imaxima

imaxima-imath-0.97.tar.gz を適当なディレクトリに展開。

$ cd
$ curl -O http://members3.jcom.home.ne.jp/imaxima/Site/Download%20and%20Install_files/imaxima-imath-0.97.tar.gz
$ tar xvfz imaxima-imath-0.97.tar.gz
$ cd imaxima-imath-0.97/

CarbonEmacs を Applications フォルダにインストールした場合。

$ env EMACS=/Applications/Emacs.app/Contents/MacOS/Emacs \
  ./configure --with-lispdir=/Applications/Emacs.app/Contents/Resources/site-lisp/imaxima \
  --infodir=/Applications/Emacs.app/Contents/Resources/info
$ make
$ make install

インストールされるファイルの一覧。

/Applications/Emacs.app/Contents/Resources/info/imaxima.info
/Applications/Emacs.app/Contents/Resources/site-lisp/imaxima/imaxima.el
/Applications/Emacs.app/Contents/Resources/site-lisp/imaxima/imaxima.elc
/Applications/Emacs.app/Contents/Resources/site-lisp/imaxima/imath.el
/Applications/Emacs.app/Contents/Resources/site-lisp/imaxima/imath.elc
/Applications/Emacs.app/Contents/Resources/site-lisp/imaxima/imaxima.lisp
/Applications/Emacs.app/Contents/Resources/site-lisp/imaxima/imaxima-autoconf-variables.el
/Applications/Emacs.app/Contents/Resources/site-lisp/imaxima/imaxima-autoconf-variables.elc

インストール(3/3)...~/.emacs.el

ホームディレクトリの .emacs ファイルに以下のような行を追加。

(setq exec-path (cons "/opt/local/bin" exec-path))
(autoload 'imaxima "imaxima" "Image support for Maxima." t)

起動方法

M-x imaxima で起動します。下の図は CarbonEmacsPackage 2005/2/16 版で cmucl + Maxima を使っているところです。なお、テキストベースに変更するには、変数 display2d に maxima を代入します。デフォルトは display2d:imaxima です。

imaxima.png

各種設定

普通は必要ありませんが、マニュアルに書いてある設定のうち、主なものをまとめておきます。

imaxima-fnt-size

LaTeX の命令に準拠した名前(tiny から Huge まで)で、フォントの大きさを設定します。

(setq imaxima-fnt-size "large")

imaxima-latex-preamble

Imaxima が出力画像を生成する際に利用する LaTeX 文書のプリアンブルを設定します。

(setq imaxima-latex-preamble "\\usepackage{concrete}")

ただし、数学記号(インテグラルとか)は変更されないようです。pxfonts や txfonts の場合は、brenq.sty の最初の方に

\RequirePackage{pxfonts}\relax

などと書き込んでしまえば一応機能するようです。

imaxima-image-type

画像形式(png、tiff、jpeg)を指定します。ただし、jpeg だとあまり美しくないようです。

(setq imaxima-image-type 'tiff)

imaxima-maxima-options

maxima に渡すオプション引数を指定します。例えば、複数の lisp を共存させている場合に、利用する lisp を指定することが出来ます。

(setq imaxima-maxima-options "--lisp=clisp")

複数のcommon lisp 処理利用して切り替えを行いたい時は~/.emacsの(require 'imaxima)の後に

(setq imaxima-lisp-file imaxima-maxima-options)
(defmacro defmaxima-exec (name lisp-options)
  `(defun ,name ()
     (interactive)
  (setq imaxima-maxima-options
	(concatenate 'string imaxima-lisp-file " " ,lisp-options))
  (let ((maxima-buf (get-buffer "*imaxima*")))
    (if (bufferp maxima-buf)
	(let ((maxima-proc (get-process "imaxima")))
	  (if maxima-proc
	    (message "imaxima is working now")  
	    (progn
	      (kill-buffer maxima-buf)
	      (imaxima))))
         (imaxima)))))
(defmaxima-exec imaxima-sbcl "-l sbcl")
(defmaxima-exec imaxima-cmucl "-l cmucl")

と付け加えてください。(defmaxima-exec 関数名 オプション(文字列) )となっています。clispも同様に記述できます。これでimaxima-sbclでsbclを使ったimaxima , imaxima-cmuclでcmuclをつかったimaximaが起動します。他のimaximaが起動している時は動かないようになっています。また、処理系に関係ないデフォルトのオプションは imaxima-lisp-fileに記述すればいいです。(ここではデフォルトのimaxima-maxima-optionsに割り当てています。(imaxima.lispを最初に読み込むようにオプションが設定されているようです。)

各種色の設定

(setq imaxima-bg-color "PaleGreen4")
(setq imaxima-fg-color "LightGoldenrod1")
(setq imaxima-equation-color "DarkOrange1")
(setq imaxima-label-color "DarkOrange1")

数式イメージの拡大率

(setq imaxima-scale-factor 1.2)

トラブルシューティング

gs 8.15 + FreeType2

FreeType2 を有効にした gs 8.15 を使っている場合、正しく機能しないかもしれません。 その場合は、とりあえず imaxima.el の 476 行目を次のように変更すれば問題を回避できます。

修正前:(string-match "\\(GNU\\|ESP\\) Ghostscript 7.05"
修正後:(string-match "GPL Ghostscript 8.15"

注意 7.05 や素の 8.15 などを使っている場合は変更しないで下さい。

その他