前不久在这个帖子里知道了literate-calc-mode.
这段时间用下来,非常的好用,是在emacs里面用着最舒服的日常计算工具了。使用方式非常符合直觉。
如何限制某个变量仅在某一区域内而不是整个buffer生效?
比如说一个文件内会出现多次“交通费”变量,用org-babel的elisp来计算,每个区域的变量都是独立的。好像这个插件设置的变量是全局的。
这个就当一个计算器用,重点就是简单,方便,再分区域就太复杂了吧。
每个计算可以单独创建一个文件。
刚刚试了一下,你这个情况可以把计算放到src block内部,然后使用C-c '
在单独的buffer中编辑,然后在这个buffer中开启literate-calc-minor-mode
org mode中用calc和maxima,两者各有何优缺点?
Calc 最大的优点是支持十进制浮点数,maxima 只有二进制浮点数。
(%i3) (1.3-1.2)-0.1;
(%o3) 8.326672684688674E-17
Calc quick mode 里
Result: 1.3 - 1.2 - 0.1 => 0.
其它功能都是 Maxima 强。
其它支持十进制浮点数的开源 CAS 我连见都没见过。一般只有计算器才会用十进制浮点。