Какая элисп или макромагия может сделать это преобразование текста? - PullRequest
3 голосов
/ 02 марта 2010

У меня есть набор операторов SQL, отформатированных так:

INSERT INTO reports.workload (workload_id,event_time,event_type_id,agent_id) VALUES 
                             (-42000,'2010-02-23 07:30:38.941436',1,NULL);

Сейчас кортеж VALUES в начале выравнивается по кортежу с именем столбца. Однако, я хочу, чтобы элементы кортежа также были выровнены, например:

INSERT INTO reports.workload (workload_id,event_time,                  event_type_id,agent_id) VALUES 
                             (-42000,     '2010-02-23 07:30:38.941436',1            ,NULL);

Мои elisp-fu и regexp-fu умеренные, но не достаточные для этой задачи. Как я могу это сделать?

1 Ответ

5 голосов
/ 02 марта 2010

Выберите регион, который вы хотите выровнять, и введите C-u C-x \ (это сокращение для align-regexp). Выберите \(,\) в качестве шаблона регулярного выражения и повторите его по всей строке.

Подробнее о выравнивании текста см. Главу AlignCommands в EmacsWiki.

...