- PVSM.RU - https://www.pvsm.ru -
На хабре уже есть посты про удивительные возможности org-mode — раз [1], два [2] и три [3]. В этом экскурсе я хочу рассказать ещё об одной возможности, с помощью которой можно пользоваться таблицами в текстовом редакторе (да, я про Emacs) без боли и унижения. А в org-mode таблицы достаточно просты и удобны:
| ip | description | users |
|--------------+----------------------+-------|
| 192.168.0.11 | Бухгалтерия | 2 |
| 192.168.0.12 | Касса1 | 1 |
| 192.168.0.13 | Касса2 | 1 |
| 192.168.0.14 | Приёмная | 2 |
|--------------+----------------------+-------|
| | Всего пользователе=> | 6 |
Итак, поехали: активируем org-mode выполнив M-x org-mode RET или открыв файл .org в emacs.
Таблицы создаются просто: C-c | (shift + в английской раскладке). Этой же комбинацией можно превратить выделенную область текста в таблицу.
На запрос 'Table size Columns x Rows [e.g. 5x2]:' в минибуфере выбираем размер таблицы — и emacs рисует нам симпатичную таблицу в ASCII:
| | | |
|---+---+---|
| | | |
| | | |
| | | |
Перемещение между ячейками — Tab, Shift+Tab, RET. Перерисовка и выравнивание таблицы происходит при каждом перемещении или по С-с. Заполненная таблица выглядит примерно так:
| ip | description | users |
|--------------+----------------------+-------|
| 192.168.0.11 | Бухгалтерия | 2 |
| 192.168.0.12 | Касса1 | 1 |
| 192.168.0.13 | Касса2 | 1 |
Emacs автоматически добавляет строку, если нажать Tab/RET в последней ячейке.
Добавление столбца выглядит интуитивно, если понимать добавление и удаление столбцов как расширение/сужение таблицы:
Удалить столбец — M-S-Left, добавить — M-S-Right
Удалить строку — M-S-Up, добавить — M-S-Down
Перемещение колонки влево/вправо — M-Left / M-Right. По аналогии, перемещение строки вверх/вниз: M-Up/ M-Down
Если в начале первой ячейки поставить минус, emacs дорисует горизонтальную линию:
| ip | description | users | | ip | description | users |
|--------------+-------------+-------| |--------------+-------------+-------|
| 192.168.0.11 | Бухгалтерия | 2 | | 192.168.0.11 | Бухгалтерия | 2 |
| 192.168.0.12 | Касса1 | 1 | | 192.168.0.12 | Касса1 | 1 |
| 192.168.0.12 | Касса1 | 1 | | 192.168.0.12 | Касса1 | 1 |
| 192.168.0.14 | Приёмная | 2 | | 192.168.0.14 | Приёмная | 2 |
|- | | | => |--------------+-------------+-------|
Выравнивание таблицы происходит автоматически, но можно и указать фиксированную ширину для столбца — задав число в треугольных скобках в любой ячейке этого столбца:
| ip | description | users | | ip | description | users |
|--------------+---------------------------------+-------| |--------------+----------------------+-------|
| 192.168.0.11 | Бухгалтерия | 2 | | 192.168.0.11 | Бухгалтерия | 2 |
| 192.168.0.12 | Касса1 | 1 | | 192.168.0.12 | Касса1 | 1 |
| 192.168.0.13 | Касса2 | 1 | | 192.168.0.13 | Касса2 | 1 |
| 192.168.0.14 | Приёмная | 2 | | 192.168.0.14 | Приёмная | 2 |
|--------------+---------------------------------+-------| |--------------+----------------------+-------|
| | Число пользователей компьютеров | | => | | Число пользователе=> | |
| | <20> | | | | <20> | |
Слишком длинные ячейки укорачиваются и помечаются знаком =>, такие ячейки можно редактировать по C-c ` в отдельном буфере, по окончании редактирования — нажать C-c.
Внимания заслуживает, пожалуй, только суммирование: C-x + суммирует все числа в колонке, а С-y вставляет результат в текущую ячейку:
| ip | description | users |
|--------------+----------------------+-------|
| 192.168.0.11 | Бухгалтерия | 2 |
| 192.168.0.12 | Касса1 | 1 |
| 192.168.0.13 | Касса2 | 1 |
| 192.168.0.14 | Приёмная | 2 |
|--------------+----------------------+-------|
| | Число пользователе=> | 6 |
| | <20> | |
Описанные возможности покрывают большинство базовых потребностей в таблицах. После данного экскурса можете смело удалять свой Calc/Excel и полностью пересаживаться на Emacs ;)
Ещё можно почитать по теме мануал по таблицам в org-mode [4].
Автор: reci
Источник [5]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/soft/70050
Ссылки в тексте:
[1] раз: http://habrahabr.ru/post/105300/
[2] два: http://habrahabr.ru/post/28098/
[3] три: http://habrahabr.ru/post/63424/
[4] мануал по таблицам в org-mode: http://orgmode.org/org.html#Tables
[5] Источник: http://habrahabr.ru/post/237619/
Нажмите здесь для печати.