emacs组织模式:我如何引用当前行号?

时间:2014-05-22 21:36:19

标签: org-mode

我想在单元格计算中使用我的org表的当前行号,无论是与整个表格相关还是与hline相关。

如果我有下表:

|---+---+---|
| x | y | z |
|---+---+---|
| 2 | 4 | 8 |
| 2 | 4 | 8 |
| 2 | 4 | 8 |
| 2 | 4 | 8 |
| 2 | 4 | 8 |
| 2 | 4 | 8 |
| 2 | 4 | 8 |
| 2 | 4 | 8 |
| 2 | 4 | 8 |
|---+---+---|
#+TBLFM: @II..@III$1=2::$2=4::$3=$1*$2

如何更改它,以便y列中的每个单元格等于其表格行号,如果在org中打开网格模式,如图所示?结果表看起来像:

|---+----+----|
| x |  y |  z |
|---+----+----|
| 2 |  2 |  4 |
| 2 |  3 |  6 |
| 2 |  4 |  8 |
| 2 |  5 | 10 |
| 2 |  6 | 12 |
| 2 |  7 | 14 |
| 2 |  8 | 16 |
| 2 |  9 | 18 |
| 2 | 10 | 20 |
|---+----+----|

1 个答案:

答案 0 :(得分:2)

(defmath passIndex (x)
  x
)

数字行:

| 1 |
| 2 |
| 3 |
| 4 |
| 5 |
#+TBLFM: $1=passIndex(@#)

数字列:

| 1 | 2 | 3 | 4 | 5 |
#+TBLFM: @1=passIndex($#)

带标题行的数字行:

| header |
|--------|
|      2 |
|      3 |
|      4 |
|      5 |
#+TBLFM: $1=passIndex(@#)