Для тех из вас, кто хочет сделать это для более сложных сценариев и хочет сделать это без установки нового модуля, пожалуйста, читайте дальше. (Это возможно в Emacs без установки MarkMultiple, хотя я лично использую и люблю MarkMultiple)
Недавно мне пришлось ВЫХОДИТЬ запрос SQL к файлу, а затем отформатировать его в запрос MYSQL INSERT. Вот как Emacs сделал мою жизнь проще ...
Файл выглядит так:
1 I am a random text
2 I am not
3 G, you've gone mad
4 Click on this link
5 Transfer in progress (we've started the transfer process)
6 But transfer happend yesterday
7 No you are
8 Oh please! this is getting too much!
9 I love emacs
10 I cant be bothered with this any more
11 its time to raise the bar
12 show me how to expand my territory
И я хочу, чтобы это выглядело так:
(1, ,'I am a random text'),
(2, ,'I am not'),
(3, ,'G, youve gone mad'),
(4, ,'Click on this link'),
(5, ,'Transfer in progress (weve started the transfer process)'),
(6, ,'But transfer happend yesterday'),
(7, ,'No you are'),
(8, ,'Oh please! this is getting too much!'),
(9, ,'I love emacs'),
(10, ,'I cant be bothered with this any more'),
(11, ,'its time to raise the bar'),
(12, ,'show me how to expand my territory'),
- Поместить курсор на первую строку
- Нажмите
C-x (
, чтобы начать запись макроса
[На данный момент все ваши ключевые входы записываются
поэтому, пожалуйста, внимательно следуйте инструкциям]
- Нажмите
C-a
, чтобы перейти к началу строки
- Введите "(", затем
M-f
для перемещения вперед по слову и затем введите ","
C-n
для перехода к следующей строке, затем C-x )
для завершения макроса
C-u 11 C-x e
повторить макрос n (в нашем случае 11) раз
Эврика! Теперь, если вы не ошиблись, вы получите что-то похожее на это:
(1, I am a random text
(2, I am not
(3, G, youve gone mad
(4, Click on this link
(5, Transfer in progress (weve started the transfer process)
(6, But transfer happend yesterday
(7, No you are
(8, Oh please! this is getting too much!
(9, I love emacs
(10, I cant be bothered with this any more
(11, its time to raise the bar
(12, show me how to expand my territory
В этот момент я собираюсь оставить вас, чтобы выяснить все остальное. Но прежде чем я уйду, я хотел бы упомянуть, что есть немало способов достижения такого рода вещей. Это только один из тех способов, и это мой любимый способ.
Надеюсь, вы нашли это полезным;)