Vim имеет аккуратный плагин Tabular, который позволяет быстро выровнять текст. Я часто использую его для выравнивания блоков кода по определенному символу (в основном такие вещи, как =
и =>
). Но это также делает очень хорошую работу за специальными столами. Учитывая что-то вроде
|Name|Rank|No.|
|Stan Ridgway|Private First Class|8797|
|John Rambo|Private|889897|
|George S. Patton|General|0879797|
это легко сделать так:
| Name | Rank | No. |
| Stan Ridgway | Private First Class | 8797 |
| John Rambo | Private | 889897 |
| George S. Patton | General | 0879797 |
Выберите его (или просто поместите курсор на первую строку), затем выполните :Tabularize /|
,
В настоящее время я пытаюсь немного перекрестно опылять Emacs и Vi, воровать с обеих сторон, искать подходящие плагины и т.д., Я бы хотел сделать то же самое в Emacs. Теперь, для вышеупомянутого материала =
/=>
align
работает очень хорошо, и даже делает большинство вещей довольно автоматически.
А для более сложных вещей есть align-regexp
. Я бы осмелился предположить, что, вероятно, дело только в том, чтобы получить правильное регулярное выражение для подачи на него (вероятно, в расширенной версии с префиксом C-u
).
Есть предложения в этом направлении или другие функции / пакеты?