Emacsスクラッチバッファで計算

Emacsの*scratch*バッファで計算するための備忘録

scratchバッファではEmacsで設定しているlisp式の評価などを行えますが、 各種計算が簡単にできるので重宝してます。

使い方: もちろんEmacsのscratch bufferの中で遊びましょう。

  1. 変数名やカッコの後ろでC-j(Controlキーとjを同時に押す)と、変数名や カッコ内が評価される。
  2. カッコの中に数式を書くと演算ができる。
  3. 除算する時は数値は実数(x.0)と書く。いわゆる整数演算すると小数点以 下が得られません。
  4. 演算子は最初に書く。

使い方例(;以降はコメントを示します)

  1. (+ 1 2) ;; 1+2のことです
  2. (* 3 4) ;; 3*4のことです。
  3. (/ 3 4) ;; 3/4のことです。このまま評価したら0になるので、どちらかを.0にしましょう。

関数を使う。

  1. (expt a b) ; a^b乗
  2. (sin (* (/ pi 180) 30)); 円周率にpiが使えます。 asin,acos,atanもあります。
  3. (/ 1e-6 2) ;10のべき乗が使えます。
  4. 16進数に変換 (format "%x" 255)
  5. 10進数に変換 ここだけカッコを使いません。

    #xff
    
    ?\xdd
    

    最後で評価すると10進数が得られます。

  6. 変数に代入 (setq hoge 10)
    hogeという変数名に10という数値を代入します。 setfもあるそうで、機能が異なるそうです。

ちょっとしたプログラム

1(progn
2(setq a 5)
3(/ (* 96 1e-6 ) 3.0  a (+ a 1))
4)

とすると、 aの値を変数扱い(a=5)として

1(96*10^-6)/3/a/(a+1)

の結果が得られます。

とっても簡単便利です。