GNU Calc - 貧乏人の Mathmatica の履歴(No.1)
更新高度な数学的計算を行えるフリーソフトです†
- 非常に高い精度での数値計算
- 数式計算
- 行列計算
などなど、非常に多機能なソフトがフリーで使えます。
Emacs というエディタ上で走るソフトです†
emacs は、主に unix 系の os で広く使われている高機能エディタです。
calc は emacs 上で動きます。
GNU Emacs FAQ 日本語訳:
http://www.bookshelf.jp/texi/emacs-faq/emacs-faq.html
GNU Calc に関する情報†
GNU Emacs Calc 2.02 マニュアル(日本語訳):
http://www.biwa.ne.jp/~tanaka/Calc/Texinfo/Texi2html/calc-jp_toc.html
Debian (lenny) へのインストール†
etch までは Debian のディストリビューションに含まれていたのだけれど、 lenny には含まれていないので、手作業でインストールすることになる。
まず、emacs がまだインストールされていなければインストールする。
次に、Debian -- etch の calc パッケージに関する詳細:
http://packages.debian.org/ja/etch/calc
の右の部分から
- calc_2.02f.orig.tar.gz
- calc_2.02f-28.diff.gz
を適当なフォルダにダウンロードし、解凍し、パッチを当てて、make install する。
途中、default というファイルが見つからないと言われる場合には、 空の /usr/share/emacs/site-lisp/default を作成してやる必要がある。
LANGUAGE:Console > sudo aptitude install emacs > cd > mkdir calc > wget http://ftp.de.debian.org/debian/pool/main/c/calc/calc_2.02f.orig.tar.gz > wget http://ftp.de.debian.org/debian/pool/main/c/calc/calc_2.02f-28.diff.gz > ls calc_2.02f-28.diff.gz calc_2.02f.orig.tar.gz > tar fxz calc_2.02f.orig.tar.gz > ls calc-2.02f.orig/ calc_2.02f-28.diff.gz calc_2.02f.orig.tar.gz > cd calc-2.02f.orig > gunzip -c ../calc_2.02f-28.diff.gz > patch -p1 > sudo make install error: the file "default" not found > ls /usr/share/emacs/site-lisp/default > sudo touch /usr/share/emacs/site-lisp/default > ls /usr/share/emacs/site-lisp/default /usr/share/emacs/site-lisp/default > sudo make install
起動†
LANGUAGE:Console > emacs
として emacs を起動してから、書き込み可能なバッファ上で Esc => # を入力する。 (Esc キーを押して、離してから # を入力)そして、c を入力。
これで、もっとも一般的なインターフェースで Calc が立ち上がる。
Calc から抜けるには q を押す。
emacs から抜けるには Ctrl+X C。
その他の基本的なキーをまとめておく。
M-# c | Calc の起動 |
q | Calc の終了 |
C-xc | emacs の終了 |
C-g | コマンド入力途中や、引数入力中にコマンド入力を取り消す |
U | アンドゥー |
D | リドゥー |
TAB | スタック上の2つを入れ替え |
M-TAB | スタック上の3つを入れ替え |
d [ | スタックの中での移動 |
d ] | スタックの中での移動 |
` | スタック先頭の書き換え |
BS | スタック先頭を削除 |
RET | スタック先頭の複製 |
? ? | 利用可能なコマンドの一覧を表示する(続けて ? を押すことで次ページへ) |
文字 ? | "文字"から始まるコマンドについて一覧を表示する(続けて ? を押すことで次ページへ) |
s 数字 | 数字で識別される一時変数(q1など)にスタック先頭を格納 |
r 数字 | 数字で識別される一時変数(q1など)から値を取り出す |
s s 文字列 | 文字列で識別される変数にスタック先頭を格納(式でも使える) |
s r 文字列 | 文字列で識別される変数から値を取り出す |