Pour ceux d'entre vous qui veulent faire cela pour des scénarios plus compliqués et qui veulent le faire sans installer un nouveau module, veuillez lire la suite. (Ceci est possible dans Emacs sans installer MarkMultiple, bien que j'utilise et aime personnellement MarkMultiple).
J'ai récemment dû sortie une requête SQL dans un fichier, puis la formater en une requête 'MYSQL INSERT'. Voici comment Emacs m'a rendu la vie facile....
Le fichier ressemble à :
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 happened yesterday
7 No you are
8 Oh please! This is getting too much!
9 I love Emacs
10 I can't be bothered with this any more
11 it's time to raise the bar
12 show me how to expand my territory
Et je veux que ça ait l'air :
(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 happened 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'),
- Placez le curseur à la première ligne
- Appuyez sur
C-x (
pour commencer l'enregistrement d'une macro (à ce stade, toutes vos entrées de touche sont enregistrées). veuillez donc suivre attentivement les instructions)
- Appuyez sur
C-a
pour aller au début de la ligne
- Tapez "(" suivi de
M-f
pour avancer d'un mot, puis tapez ",".
-
C-n
pour passer à la ligne suivante, suivi de C-x )
pour terminer la macro
-
C-u 11 C-x e
répéter la macro n (11 dans ce cas) fois
Eurêka ! Si vous n'avez pas encore échoué, vous obtiendrez quelque chose qui ressemble à ceci :
(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 happened 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
A ce stade, je vais vous laisser découvrir le reste. Mais, avant de partir, je tiens à préciser qu'il existe plusieurs façons de réaliser ce genre de choses. Cette méthode est l'une d'entre elles et c'est celle que je préfère.
0 votes
Vous devriez essayer ceci : github.com/magnars/mark-multiple.el démo : youtube.com/watch?v=r2o9HYi7DOY
0 votes
Si vous relisez le notes d'aide pour cela vous verrez que, depuis qu'il a été posté à l'origine, il a été remplacé par multiple-cursors.el
0 votes
Oui, @phils, multiple-cursors.el est génial.
0 votes
Voir aussi : stackoverflow.com/questions/29719274