[GastForen

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste
Forenindex -- Lesezeichen

2 Lesezeichen für fehlermeldung

ID CS5 und CS5.5: Deutsche Wörterbücher in alten Dateien aus CS3
Hallo,

abschließend eine Zusammenfassung, wie das Problem gelöst wurde. Ich bin dem Vorschlag von Martin aus #35 gefolgt:

1. neue (leere) CS5-Datei mit gewünschtem Größe anlegen, neue Musterseite einrichten (Satzspiegel, Kopf-/Fußzeile); die Datei sollte nur die Absatz- und Zeichenformate enthalten, die tatsächlich in der Vorlage benötigt werden, Rest ggf. löschen!
Script „SpracheWechseln“ mit Einstellung „Rechtschreibung 2006“ laufen lassen
2. (leere) Vorlage-Datei mehrfach duplizieren
3. jeweils eine korrupte Datei und eine Vorlage-Datei (= neues Dokument) öffnen
4. in der korrupten Datei in der Seitenpalette alle Seiten markieren
5. Seitenpalette > Seiten verschieben. neues Dokument auswählen > die Seiten werden in das neue Dokument kopiert
6. korrupte Datei schließen
7. im neuen Dokument alte Mustervorlage löschen (eingeschleppt beim Seiten verschieben) und den Seiten die neue Mustervorlage zuweisen
8. Script „SpracheWechseln“ mit Einstellung „Rechtschreibung 2006“ laufen lassen
9. aus den Einzeldateien neues Buch zusammenstellen
10. händisch nachpflegen:
  • Querverweise: Querverweise zwischen zwei Dokumenten müssen aktualisiert werden, Querverweise innerhalb eines Dokuments bleiben korrekt erhalten

  • Index: Indexeinträge gehen nicht verloren außer Querverweise mit „siehe“ bzw. „siehe auch“, diese müssen neu angelegt werden; Index neu generieren

  • IHV: Vorgaben für Erstellung IHV müssen neu eingerichtet werden; IHV neu generieren

Die Fehlermeldung taucht nicht mehr auf. Die Performance in dem neuen Buch ist nach wie vor nicht gut, aber wenigstens akzeptabel. Wobei man differenzieren muss: Änderungen in den Dateien werden in brauchbarem Tempo umgesetzt. Im Hintergrund automatisch ablaufende (?) und manuell veranlasste Speichervorgänge (Strg+S) bremsen die Bearbeitung aus.
Manchmal habe ich den Verdacht, ID sucht noch immer heimlich nach dem ollen Wörterbuch …

Gruß
Silke
...
silkeF
4. Nov 2011, 10:49
Suche Skripte... gerne auch für Geld :-)
Hallo Bernd,

kannst Du mal das folgende Skript testen.

Es erstellt ein neues Dokument, löscht dort alle störenden Formate (außer den Basisformaten) und importiert alle Absatz- und Zeichenformate, sowie Tabellen- und Zellenstile aus den Dokumenten eines Buchs.

Voraussetzung: es muss vor Ausführung des Skripts genau ein Buch geöffnet sein.

Scheitert das Skript beim Import der Formate in einem Dokument des Buchs (z.B. weil nicht mehr vorhanden), merkt es sich dies, macht weiter und gibt am Ende eine Fehlermeldung mit der Liste der problematischen Dokumente aus.

An und für sich war auch der Import von Objektstilen vorgesehen (derselbe Befehl wie bei den anderen Formaten).
Aber InDesign CS3 macht da nicht mit.
Tut nix.
Importiert nix und gibt keine Fehlermeldung.
(edit: bei manchen Bücher geht es doch; im Moment ist noch nicht raus, wovon der Erfolg hier abhängt)

Die Bereinigung des neuen Dokuments (Löschen der überflüssigen Stile vor dem Import) habe ich in eine try-catch Klammer gepackt, weil es hier eventuell Probleme geben kann bei Vorhandensein des 'NormalParagraphStyle' (ein Abkömmling des AF '[Einfacher Absatz]'.

Code
// stylesOfDocsOfBook.jsx 

// DESCRIPTION:Importiert alle Absatz- und Zeichenformate, sowie Tabellen- und Zellenstile aus den Dokumenten eines Buchs
// DATE: 06/2009
// AUTHOR: Martin Fischer

if (app.books.length != 1)
exit();

var myErrors = new Array;
var myBook = app.books.firstItem();


// neues Dokument anlegen
var myStyleDoc = app.documents.add();

// überflüssige Formate im neuen Dokument löschen
try {
if (myStyleDoc.characterStyles.count() > 1)
myStyleDoc.characterStyles.itemByRange(1, myStyleDoc.characterStyles.count()-1).remove();
if (myStyleDoc.objectStyles.count() > 3)
myStyleDoc.objectStyles.itemByRange(3, myStyleDoc.objectStyles.count()-1).remove();
if (myStyleDoc.tableStyles.count() > 1)
myStyleDoc.tableStyles.itemByRange(2, myStyleDoc.tableStyles.count()-1).remove();
if (myStyleDoc.cellStyles.count() > 1)
myStyleDoc.cellStyles.itemByRange(1, myStyleDoc.cellStyles.count()-1).remove();
if (myStyleDoc.paragraphStyles.count() > 2)
myStyleDoc.paragraphStyles.itemByRange(2, myStyleDoc.paragraphStyles.count()-1).remove();
} catch(e) { myErrors.push(e)}

// Formate importieren
for ( var i = 0; i < myBook.bookContents.count(); i++ )
{
try
{
// myStyleDoc.importStyles(ImportFormat.CHARACTER_STYLES_FORMAT, myBook.bookContents.item(i).fullName, GlobalClashResolutionStrategy.LOAD_ALL_WITH_OVERWRITE);
// myStyleDoc.importStyles(ImportFormat.PARAGRAPH_STYLES_FORMAT, myBook.bookContents.item(i).fullName, GlobalClashResolutionStrategy.LOAD_ALL_WITH_OVERWRITE);
myStyleDoc.importStyles(ImportFormat.TEXT_STYLES_FORMAT, myBook.bookContents.item(i).fullName, GlobalClashResolutionStrategy.LOAD_ALL_WITH_OVERWRITE);
myStyleDoc.importStyles(ImportFormat.OBJECT_STYLES_FORMAT, myBook.bookContents.item(i).fullName, GlobalClashResolutionStrategy.LOAD_ALL_WITH_OVERWRITE);
// myStyleDoc.importStyles(ImportFormat.TABLE_STYLES_FORMAT, myBook.bookContents.item(i).fullName, GlobalClashResolutionStrategy.LOAD_ALL_WITH_OVERWRITE);
// myStyleDoc.importStyles(ImportFormat.CELL_STYLES_FORMAT, myBook.bookContents.item(i).fullName, GlobalClashResolutionStrategy.LOAD_ALL_WITH_OVERWRITE);
myStyleDoc.importStyles(ImportFormat.TABLE_AND_CELL_STYLES_FORMAT, myBook.bookContents.item(i).fullName, GlobalClashResolutionStrategy.LOAD_ALL_WITH_OVERWRITE);
} catch(e) { myErrors.push(myBook.bookContents.item(i).fullName)}
}


if (myErrors.length > 0)
alert('Importfehler bei:\r' + myErrors.join('\r'));


Wenn's was taugt, stell ich's ins Archiv.
Wenn's dort nicht erscheint, taugt's nicht.
...
Martin Fischer
17. Jun 2009, 17:21