Как получить столбец индекса строки в режиме Emacs Org, используя правило столбца Calc - PullRequest
13 голосов
/ 13 февраля 2012

Я хотел бы иметь столбец в таблице режима org, который представляет собой простое монотонно возрастающее значение, то есть номер строки, такой, что когда я вставляю и удаляю случайные строки, значение индекса корректируется автоматически.Я подозреваю, что это должно быть просто, но, похоже, я делаю это слишком сложно.Напоминаю, я новичок в использовании Emacs и режима org для создания электронных таблиц.Так что простой пример электронной таблицы, в которой есть два столбца, один со значением индекса строки, а другой с некоторым фиксированным значением, был бы идеальным ответом.

Ответы [ 2 ]

14 голосов
/ 14 февраля 2012

В этом примере используется @# для получения номера строки. Аналогично, $# возвращает номер столбца.

| row | data |
|-----+------|
| 2   | 0303 |
| 3   | 5123 |
| 4   | 41   |
| 5   | 4234 |
#+TBLFM: $1=@#
7 голосов
/ 07 сентября 2015

Часто необходимо, например, с описательными строками, начинать считать строки только с определенных горизонтальных линий с 1, ниже для первой горизонтальной линии: #+TBLFM: $1=vlen(@I..0).Это означает вычисление длины диапазона строк от первой строки @I (второй будет @II, ...) до текущей строки (0).

|bla|blabla|
|---+------|
|1  | bla  |
|2  | bla  |
#+TBLFM: $1=vlen(@I..0)

или,для приведенного выше примера также просто #+TBLFM: $1=@#-1: -)

...