View Single Post
Old 09-08-2014, 08:31 AM   #3
Doitsu
Grand Sorcerer
Doitsu ought to be getting tired of karma fortunes by now.Doitsu ought to be getting tired of karma fortunes by now.Doitsu ought to be getting tired of karma fortunes by now.Doitsu ought to be getting tired of karma fortunes by now.Doitsu ought to be getting tired of karma fortunes by now.Doitsu ought to be getting tired of karma fortunes by now.Doitsu ought to be getting tired of karma fortunes by now.Doitsu ought to be getting tired of karma fortunes by now.Doitsu ought to be getting tired of karma fortunes by now.Doitsu ought to be getting tired of karma fortunes by now.Doitsu ought to be getting tired of karma fortunes by now.
 
Doitsu's Avatar
 
Posts: 5,734
Karma: 24031401
Join Date: Dec 2010
Device: Kindle PW2
Wenn Du einen einfachen (einstufigen) HTML-TOC in Sigil erstellt hast, würde ich erst bei jedem TOC-Eintrag mit Regex-Suche die Zeilenumbrüche entfernen:

Find:<div class="(.*?)">\n\s*<a href="(.*?)">(.*?)</a>\n</div>
Replace:<div class="\1"><a href="\2">\3</a></div>

Anschließend würde ich die so umformatierten Einträge in die zweite Spalte einer Excel-Datei kopieren und mit einem zweiten Regex-Ausdruck den Text extrahieren, der zum Sortieren verwendet werden soll:

Find:<div class="(.*?)"><a href="(.*?)">(.*?)</a></div>
Replace:\3

Anschließend musst Du nur die Kapiteltitel in die erste Spalte der Excel-Tabelle kopieren, die Tabelle nach der ersten Spalte sortieren und danach die sortierten Einträge aus der zweiten Spalte wieder in Sigil einfügen. (Sigil fügt die fehlenden Seitenumbrüche automatisch ein, wenn Du die Option "Pretty Print" oder "Clean Source" aktiviert hast.)

Bei mehrstufigen TOC-Einträgen funktionieren die Regex-Ausdrücke natürlich nicht. Der erste Ausdruck sucht nach einem TOC-Eintrag nach dem Muster:

Code:
<div class="sgc-toc-level-1">
  <a href="../Text/frontmatter001.html">Vorwort</a>
</div>
wandelt ihn um in:

Code:
<div class="sgc-toc-level-1"><a href="../Text/frontmatter001.html">Vorwort</a></div>
und letztendlich in:

Code:
Vorwort
Doitsu is offline   Reply With Quote