52 votes

Par Emacs, comment joindre deux lignes en une seule?

Je suis une main verte pour Emacs. J'ai googlé ceci mais aucune bonne réponse là-bas. L'un d'eux est Ctrl-n Ctr-a Backspace Cela fonctionne mais est stupide. Existe-t-il un moyen simple et rapide de joindre un bloc de lignes en un seul?

En fait, je peux utiliser Esc-q pour remplir automatiquement un paragraphe maintenant, mais comment pourrais-je le faire revenir sans annuler?

190voto

Ray Vega Points 30187

Placez le point n'importe où sur la dernière ligne du groupe de lignes à joindre et appelez

 M-^
 

jusqu'à ce que toutes les lignes soient fusionnées.

Remarque: Il laisse un espace entre toutes les lignes maintenant jointes.

35voto

pgs Points 3453

M-x join-line joindra deux lignes. Il suffit de le lier à une frappe pratique.

8voto

Tal Pressman Points 4120

Remplacez simplement les nouvelles lignes par rien.

5voto

Mark Points 21

J'aime la façon dont le texte sublime rejoint la ligne avec la commande J, donc je le fais de cette façon:

 (defun join-lines (arg)
  (interactive "p")
  (end-of-line)
  (delete-char 1)
  (delete-horizontal-space)
  (insert " "))
 

4voto

Ralph Points 2537

Vous pouvez définir une nouvelle commande pour cela, en ajustant temporairement la largeur de remplissage avant d'utiliser la commande Esc-q:

 ;; -- define a new command to join multiple lines together --
(defun join-lines () (interactive)
 (setq fill-column 100000)
 (fill-paragraph nil)
 (setq fill-column 78)
)
 

Évidemment, cela ne fonctionne que si votre paragraphe contient moins de 100 000 caractères.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X