[GastForen Programme Print/Bildbearbeitung Adobe InDesign Indexhilfe gewünscht

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste
Print/Bildbearbeitung - Photos, Layout, Design
Themen
Beiträge
Moderatoren
Letzter Beitrag

Indexhilfe gewünscht

suppel
Beiträge gesamt: 203

16. Nov 2007, 22:07
Beitrag # 1 von 6
Bewertung:
(9639 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Forum,
bin gerade dabei einen Index von Buchtiteln zu erstellen. Benutze auch dafür das Java-Script "IndexfromList".
In meiner Liste stehen Begriffe wie "Herr der Ringe"; "Die Simpson";
Als Ergebnis erhalte ich dann aber für jedes Wort die Seitenzahlhinweise.
Also: Herr 1,2,3,4,5
der 1,2,3,4,5,6
Ringe 1,2,3,4,5
Da es sich um eine große Zahl von Titeln handelt, wäre es sehr mühsam, alle aufzusuchen und entsprechend zu makieren.
Gibt es einen Trick, z.B bestimmte Zeilenschaltung in der Textdatei oder einen Workaround um dieses Problem zu lösen?

Danke für Tipps!

gruss suppel
X

Indexhilfe gewünscht

Martin Fischer
  
Beiträge gesamt: 12626

16. Nov 2007, 22:19
Beitrag # 2 von 6
Beitrag ID: #322811
Bewertung:
(9619 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Suppel,

ich glaub, der Hans hat mal was gemacht:
http://www.hilfdirselbst.ch/...i?post=200208#200208

Weiß aber nicht, ob das Skript mal veröffentlicht wurde.

Viele Grüße
Martin




als Antwort auf: [#322808]

Indexhilfe gewünscht

suppel
Beiträge gesamt: 203

16. Nov 2007, 22:32
Beitrag # 3 von 6
Beitrag ID: #322812
Bewertung:
(9607 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Martin,
vielen Dank für die Antwort.
Mir geht es nicht um die Zahlen, sondern vielmehr um die Begriffe bzw Titel.
Weil die Wörter "Herr", "der" oder "Ringe" auch in anderen Kombinationen stehen, ist das resultierende Ergebnis nicht zuverlässig.
Kann ich denn nicht über Greb die Suchbegriffe (Wortkombinationen) mit der Indexmarke markieren?

Gruß suppel


als Antwort auf: [#322811]

Indexhilfe gewünscht

Martin Fischer
  
Beiträge gesamt: 12626

16. Nov 2007, 22:58
Beitrag # 4 von 6
Beitrag ID: #322817
Bewertung:
(9603 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Oh Suppel,

sorry!
Ich habe einen Haufen Zahlen gesehen, "Index" gelesen und daraus eine mögliche Frage formuliert, die ich auf dem schnellsten Weg beantworten konnte. Dabei ist mir Deine eigentliche Frage untergegangen. ;-)

In dem Skript findest Du folgende Zeilen:
Code
// löschen von Leerzeichen am Ende der Zeile + löschen von leeren Zeilen  
aText = aText.replace(/ +\n/g, '\n').replace(/\n+/g, '\n');
// ersetzen von mehrfach aufeinander folgende Leerzeichen aller Art und von RETURNs durch RETURNs
aText = aText.replace(/\s+/g, '\n');


Kommentiere die Zeilen, die mit "aText" beginnen, kurzfristig folgendermaßen aus und mach einen Test.
Code
// löschen von Leerzeichen am Ende der Zeile + löschen von leeren Zeilen  
//aText = aText.replace(/ +\n/g, '\n').replace(/\n+/g, '\n');
// ersetzen von mehrfach aufeinander folgende Leerzeichen aller Art und von RETURNs durch RETURNs
//aText = aText.replace(/\s+/g, '\n');


Bei genauerem Hinsehen stelle ich fest, daß der Code für Deinen Zweck besser folgendermaßen angepaßt werden könnte:

Code
// löschen von Leerzeichen am Ende der Zeile + löschen von leeren Zeilen  
aText = aText.replace(/ +\n/g, '\n').replace(/\n+/g, '\n');
// ersetzen von mehrfach aufeinander folgende Leerzeichen aller Art durch ein Leerzeichen
aText = aText.replace(/ +/g, ' ');


Viele Grüße
Martin




als Antwort auf: [#322812]
(Dieser Beitrag wurde von Martin Fischer am 16. Nov 2007, 23:26 geändert)

Indexhilfe gewünscht

suppel
Beiträge gesamt: 203

16. Nov 2007, 23:28
Beitrag # 5 von 6
Beitrag ID: #322820
Bewertung:
(9594 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Martin,
no worries,
habe deine Anmerkung schon in anderem Thread gelesen, aber nicht ganz verstanden, warum man die Zeilen auskommentieren muss.
Aber jetzt läuft es prima und Danke für die nächtlich Hilfe.

gruss suppel


als Antwort auf: [#322817]

Indexhilfe gewünscht

Martin Fischer
  
Beiträge gesamt: 12626

16. Nov 2007, 23:41
Beitrag # 6 von 6
Beitrag ID: #322822
Bewertung:
(9588 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
> aber nicht ganz verstanden, warum man die Zeilen auskommentieren muss.

Diese Zeilen sollten eigentlich einer Fehlerkorrektur dienen.
Das Skript war dazu gedacht, nur einzelne Wörter zu indexieren.
Deshalb wurde nicht nur die Zeilenschaltung als Begriffsgrenze gehandhabt, sondern auch ein Leerzeichen zwischen Wörtern.
Damit sind Peter und ich aber über das Ziel hinausgeschossen.

Richtig ist m.E. die Prüfung und Korrektur von mehreren aufeinanderfolgenden Leerzeichen.
Du bist aber mit der Wortreihe "Herr der Ringe" dem übertriebenen Kontrollbedürfnis eines Skripters mit verwegenen Unterstellungen zum Opfer gefallen. Skripter haben eben ihre eigenen Vorstellungen von den Vorstellungen der Anwender und den möglichen Fehlern, die sie machen könnten. ;-)

Hier das ganze Skript:
Code
// IndexFromList_1.jsx   
//DESCRIPTION: Erzeugt Indexeinträge anhand einer externen Konkordanzdatei, die über einen Dialog ausgewählt wird.

var myDoc = app.activeDocument;
var myList = File.openDialog ("Liste mit Indexbegriffen");
if (!myList) exit();

var myWords = getWords(myList);
proceedWithList(myWords);
alert("Erledigt!");

// Konkordanzliste einlesen
function getWords (aFile) {
if (aFile.exists) {
aFile.open ('r', undefined, undefined);
var aText = aFile.read()+'\n';
// löschen von Leerzeichen am Ende der Zeile + löschen von leeren Zeilen
aText = aText.replace(/ +\n/g, '\n').replace(/\n+/g, '\n');
// ersetzen von zwei und mehr aufeinander folgenden Leerzeichen durch ein Leerzeichen
aText = aText.replace(/ {2,}/g, ' ');

var words = aText.split('\n');
aFile.close();
return words;
}
else {
exit();
}
}

// Begriffsliste abarbeiten
function proceedWithList (w) {
// bei Bedarf wird ein neuer Index erzeugt
if (myDoc.indexes.length == 0)
myDoc.indexes.add();

app.findPreferences = app.changePreferences = null;

for (var i = 0; i < w.length; i++)
if (w[i] != "")
makeEntry(w[i]);

// Aktualisieurng des Index
myDoc.indexes[0].update();
}

// Indexeintrag erzeugen
function makeEntry(oneWord) {
var myResult = myDoc.search(oneWord, true, true, undefined);
for (var oneEntry = myResult.length-1; oneEntry >=0; oneEntry--) {
// Fehler abfangen, z.B. Fußnoten ausnehmen
try {
// Hinzufügen des Themas
myDoc.indexes[0].topics.add(oneWord);
// Hinzufügen der Referenz
myDoc.indexes[0].topics.item(myResult[oneEntry].contents).pageReferences.add(myResult[oneEntry], PageReferenceType.currentPage);
}
catch(e) {}
}
}


Viele Grüße
Martin




als Antwort auf: [#322820]
X

Aktuell

PDF / Print
300_PDF20

Veranstaltungskalender

Hier können Sie Ihre Anlässe eintragen, welche einen Zusammenhang mit den Angeboten von HilfDirSelbst.ch wie z.B. Adobe InDesign, Photoshop, Illustrator, PDF, Pitstop, Affinity, Marketing, SEO, Büro- und Rechtsthemen etc. haben. Die Einträge werden moderiert freigeschaltet. Dies wird werktags üblicherweise innert 24 Stunden erfolgen.

pdf-icon Hier eine kleine Anleitung hinsichtlich Bedeutung der auszufüllenden Formularfelder.

Veranstaltungen
08.11.2022

Frankfurt, Fraport Conference Center
Dienstag, 08. Nov. 2022, 13.30 - 18.00 Uhr

Seminar

Auf der Enfocus World Tour stellen wir Ihnen gemeinsam mit Enfocus die aktuellen Highlights von Enfocus Switch und dem Impressed Workflow Server (IWS) vor. Wir präsentieren Ihnen anhand typischer Aufgabenstellungen in einem modernen Produktionsbetrieb die Möglichkeiten, die Enfocus Switch für die Automatisierung und Standardisierung von Abläufen bietet. Wir haben sowohl für Produktionsverantwortliche als auch technisch Interessierte ein spannendes Programm vorbereitet, bei dem Sie sicherlich viel Neues erfahren werden, welches Sie in Ihrem eigenen Betrieb umsetzen können. Die Veranstaltung bietet darüber hinaus eine hervorragende Möglichkeit, sich mit anderen Anwendern und Workflow-Spezialisten auszutauschen und Antworten auf konkrete Aufgabenstellungen zu erhalten, welche Sie mit Hilfe von Enfocus Switch/IWS umsetzen möchten.

Wir sind jeweils an 2 Tagen in Frankfurt, Hamburg und München vor Ort. Der erste (halbe) Tag richtet sich in erster Linie an Betriebsleiter und Produktionsverantwortliche in Druckereien - ist also weniger technisch orientiert - sondern gibt einen Überblick zu den heutigen Möglichkeiten einer automatisierten Produktion.

Der zweite Tag (Switch Anwender-Treffen) richtet sich an bestehende Switch-Anwender und Administratoren.

Anmeldung und weitere Infos: https://www.impressed.de/schulung.php?c=sDetail&sid=310

Ja

Organisator: Enfocus/Impressed

Kontaktinformation: Silvia Noack, E-Mailsnoack AT impressed DOT de

https://www.impressed.de/schulung.php?c=sDetail&sid=310

Enfocus World Tour 2022
Veranstaltungen
08.11.2022

Frankfurt, Fraport Conference Center
Dienstag, 08. Nov. 2022, 13.30 - 18.00 Uhr

Seminar

Auf der Enfocus World Tour stellen wir Ihnen gemeinsam mit Enfocus die aktuellen Highlights von Enfocus Switch und dem Impressed Workflow Server (IWS) vor. Wir präsentieren Ihnen anhand typischer Aufgabenstellungen in einem modernen Produktionsbetrieb die Möglichkeiten, die Enfocus Switch für die Automatisierung und Standardisierung von Abläufen bietet. Wir haben sowohl für Produktionsverantwortliche als auch technisch Interessierte ein spannendes Programm vorbereitet, bei dem Sie sicherlich viel Neues erfahren werden, welches Sie in Ihrem eigenen Betrieb umsetzen können. Die Veranstaltung bietet darüber hinaus eine hervorragende Möglichkeit, sich mit anderen Anwendern und Workflow-Spezialisten auszutauschen und Antworten auf konkrete Aufgabenstellungen zu erhalten, welche Sie mit Hilfe von Enfocus Switch/IWS umsetzen möchten.

Wir sind jeweils an 2 Tagen in Frankfurt, Hamburg und München vor Ort. Der erste (halbe) Tag richtet sich in erster Linie an Betriebsleiter und Produktionsverantwortliche in Druckereien - ist also weniger technisch orientiert - sondern gibt einen Überblick zu den heutigen Möglichkeiten einer automatisierten Produktion.

Der zweite Tag (Switch Anwender-Treffen) richtet sich an bestehende Switch-Anwender und Administratoren.

Anmeldung und weitere Infos: https://www.impressed.de/schulung.php?c=sDetail&sid=310

Ja

Organisator: Enfocus/Impressed

Kontaktinformation: Silvia Noack, E-Mailsnoack AT impressed DOT de

https://www.impressed.de/schulung.php?c=sDetail&sid=310

Enfocus World Tour 2022