Ich möchte in der Lage sein, einen Textbereich aus Emacs einfach auszuwählen und ihn dann in eine andere App oder einen anderen Browser einzufügen - wobei alle zusätzlichen Zeilenumbrüche zum Füllen von Absätzen entfernt werden, damit die Absatzanzeige in der anderen App ordnungsgemäß funktioniert.
Die unfill-region
Funktion im unfill
Paket scheint dafür in Ordnung zu sein, aber es sind weitere Arbeiten erforderlich, um dies richtig zu automatisieren. Existiert das schon, bevor ich das mache?
Wenn Sie nur Zeilenumbrüche entfernen möchten, verwenden Sie
replace-regexp-in-string
das Ergebnis vonbuffer-substring
, um sie zu entfernen.Wenn Sie alle zusätzlichen (normalerweise "unbedeutenden") Leerzeichen entfernen möchten, versuchen Sie es mit der Funktion
ni-buffer-substring-collapsed-visible
aus der Bibliotheknarrow-indirect.el
.Es gibt den Pufferinhalt zwischen zwei Positionen zurück, wobei jedoch Leerzeichen reduziert sind (zusätzliche Leerzeichen wurden entfernt, einschließlich Zeilenumbrüche).
Und wenn Sie auch die Bibliothek "subr + .el" verwenden, wird auch unsichtbarer Text entfernt.
quelle
Zu diesem Zweck gibt es ein Paket namens "unfill.el": https://github.com/purcell/unfill
Es kommt mit einem
unfill-toggle
undunfill-region
Befehl.Jemand hat auch Code gepostet, um einen Absatz im EmacsWiki zu "entfüllen": https://www.emacswiki.org/emacs/UnfillParagraph
quelle