Преобразование списка отступов с вкладками в вложенный список с помощью Org-Mode?
Я работаю с Org-Mode, чтобы управлять рефакторингом базы данных, и отчасти мне потребовалось преобразовать текущую схему в текст, чтобы я мог все исправить. Я написал запрос, который выводит данные следующим образом:
| table | |
| | column |
| | column |
| | column |
| | column |
| table | |
| | column |
| | column |
Я могу скопировать и вставить это в Emacs, а пустые поля преобразовать во вкладки. Все хорошо, но есть ли способ заставить Org-Mode преобразовать список с отступом в список с подсписками?
Лучшее, что я смог сделать, это взломать запрос на вывод:
| + table | |
| | - column |
Чтобы эффективно "обмануть" Org-Mode, заставив его думать, что это был уже правильно отформатированный список.
1 ответ
Если вы получаете данные, как показано в вашем кодовом поле, включая | для столов:
With the point preceeding the table:
M-x replace-regexp <RET> " ?| \{0,4\}" <RET><RET>
M-x replace-regexp <RET> " *$" <RET><RET>
Это удалит форматирование таблицы, а также пробелы в конце строк (где отсутствует "столбец"). В моем случае вкладки конвертируются в пробелы (что также упрощает удаление пробелов). Возможно, вам придется настроить {0,4}, если он сохраняет их в виде вкладок. Может быть способ создать регулярное выражение, которое удалит пробелы или символы табуляции, но я не знаю достаточно о регулярном выражении, чтобы сделать это.
Если вы уже удалили | которые помечают контент как орг-таблицу, вам просто нужно следовать нижеприведенному ниже.
Затем, чтобы преобразовать в набор списков, отметьте весь регион, который вы хотите преобразовать, и используйте следующее в соответствии с Руководством по организации: http://orgmode.org/org.html#Plain-lists
C-u C-c -
or
C-u M-x org-toggle-item
Результат выглядит следующим образом:
- table
- column
- column
- column
- column
- table
- column
- column