Die Lösung lag in einem Werkzeug, an das ich nicht ernsthaft nachgedacht habe - awk
awk 'BEGIN { FS="\\\\par" } ; /^ / /^[^ ]/ '
Dies geht über die Datei mit \ par als Feldseparator und druckt ein \ par vor jeder Zeile, die mit 4 Leerzeichen beginnt (was den Anfang eines neuen Absatzes markiert), und entfernt (oder druckt nicht). Wenn es mit etwas anderem als einem Leerzeichen beginnt.
Was wir jetzt haben, ist eine Datei mit \ par, wo rechtliche Zeilenumbrüche sein sollten. Der nächste Schritt wäre, alle Zeilenumbrüche zu entfernen, um unerwünschte Zeilenumbrüche zu beseitigen:
tr -d '\r\n'
Fügen Sie das Ergebnis dann in sed ein, um \ par durch \ par \ r \ n zu ersetzen, und fügen Sie praktisch eine neue Zeile hinzu, in der ein \ par steht.
sed 's/\\par/\\par\r\n/g'
Und fertig.
Das einzige wirkliche Problem, das ich mit dieser Methode gefunden habe, ist, dass der RTF-Header ruiniert wurde. Kein Problem, ich habe gerade den Header von der Originaldatei übernommen.
Ein weiteres kleineres Problem war, dass Kapiteltitel mit vorherigen Absätzen inline gedruckt wurden. Dies liegt daran, dass Kapitelüberschriften noch nicht mit einem Leerzeichen beginnen und dennoch als Absatz betrachtet werden sollten. In meinem Fall waren Kapitel wie folgt gekennzeichnet:
Kapitel zweiundzwanzig
Kapitel Name
So kümmerte sich ein schneller Sed um sie:
sed 's/\s*\(CHAPTER [[:upper:]-]* \)\(.*\\par\)/\\par\r\n\\par\r\n\\par\r\n\1\\par\r\n\2\\par\r\n/'
Ich habe mein Buch jetzt im richtigen Format, sodass es auch auf anderen Geräten (z. B. meinem iPod) lesbar ist.