在 emacs 中使用 org-mode 表使用 calc 转换单位

Posted

技术标签:

【中文标题】在 emacs 中使用 org-mode 表使用 calc 转换单位【英文标题】:Using an org-mode table in emacs to convert units using calc 【发布时间】:2011-04-15 17:36:00 【问题描述】:

有没有办法使用组织模式表进行自动单位转换?

我无法让它工作。我想做的是使用一个简单的表格,我可以在其中输入一些以盎司为单位的重量,然后让 emacs 将它们转换为克。

|---------+---------------|
| 100oz   |  ??g          |
| 50oz    |  ??g          |
|---------+---------------|
#+TBLFM: $2='(calc-eval ?????)

我没有找到要在 calc-eval 中添加什么,在 calc 模式下我会通过输入 f.i 来进行转换。 100g,然后按 uc 表示“单位”,然后输入 g 表示“gramm”。

非常感谢。

【问题讨论】:

【参考方案1】:

u c 运行calc-convert-units,它以一种特殊的方式(即不是从堆栈中)获取目标单元。底层函数是math-convert-units,我们可以使用calc-eval在字符串和计算对象之间进行转换。

|---+-------+-----------------|
| # | 100oz | 2834.9523125 g  |
| # | 50oz  | 1417.47615625 g |
|---+-------+-----------------|
#+TBLFM: $3='(calc-eval (math-convert-units (calc-eval $2 'raw) (calc-eval "g" 'raw)))

【讨论】:

如何在此公式之上添加所有计算克数的总和?或者,不能同时进行两个计算?【参考方案2】:

这听起来更像是 Simple Emacs Spreadsheet aka ses.el 的工作,请参阅 emacs wiki page 它包含在 Gnu Emacs 23 中。

【讨论】:

以上是关于在 emacs 中使用 org-mode 表使用 calc 转换单位的主要内容,如果未能解决你的问题,请参考以下文章

使用emacs org-mode,如何在项目中发布未更改的文件?

用Org-mode管理emacs配置

在 emacs 中混合 org-mode 和 c-mode

emacs 控制台模式 Org-mode 删除线未按预期显示

Emacs,org-mode,evil-mode - TAB键不起作用

Emacs org-mode latex - 只需在pdflatex,xelatex和lualatex之间切换