[GastForen Programme Print/Bildbearbeitung Adobe InDesign RecordFindChange.jsx unter CS3

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

RecordFindChange.jsx unter CS3

Martin Fischer
  
Beiträge gesamt: 12783

26. Jun 2008, 17:56
Beitrag # 16 von 21
Beitrag ID: #355963
Bewertung:
(7554 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Die von Rübi erwähnte erweiterte Version RecordFindChange_CS3.jsx ist im Premium-Bereich unter [InDesign CS3 JS] Einstellungen des Suchen/Ersetzen-Dialogs in Textdatei speichern zu finden.

Das Skript zeichnet die aktuellen Einstellungen im Suchen/Ersetzen Dialog auf und schreibt sie in eine TXT-Datei.

Dabei sind zwei Darstellungen möglich:
1. Befehlszeilen für findChangeByList.jsx
2. Listendarstellung

In einem Voreinstellungsbereich können diese und andere Parameter den eigenen Bedürfnissen angepasst werden:
Code
// =================== Preferences / Voreinstellungen ================ 

// singleLine = true -> Befehlszeilen für findChangeByList.jsx
// singleLine = false -> Listendarstellung
var singleLine = true;

// fileSelect = true -> Ausgabedatei selbst bestimmen
// fileSelect = false -> Ausgabedatei: 'Schreibtisch/findChangeStrings.txt'
var fileSelect = false;

// TXT-Datei nach Ausführung des Skripts öffnen
var fileOpen = true;

// Schlussmeldung ausgeben
var finalMessage = true;

// findChangeTextOptions und findChangeGrepOptions aufzeichnen
var catchOptions = true;
// ===============================================================



als Antwort auf: [#355810]
X

RecordFindChange.jsx unter CS3

Quarz
Beiträge gesamt: 3555

26. Jun 2008, 18:05
Beitrag # 17 von 21
Beitrag ID: #355964
Bewertung:
(7548 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Ihr Lieben,

wer noch keinen Zugang zum Premium-Bereich hat, sollte
schnellstens seinen Obulus dafür leisten, um dieses Script
zu bekommen.
(Man kann auch eine Quittung anfordern.)

Es ist das beste, was jemand, der sich mit Scripts und
FindChangeByList beschäftigt, zur Zeit auf dem Markt findet.

Tausend Dank an Martin!!!

Gruß
Quarz

------------------------
WinXP | CS3


als Antwort auf: [#355963]

RecordFindChange.jsx unter CS3

Ralf Hobirk
Beiträge gesamt: 5961

23. Mai 2010, 17:09
Beitrag # 18 von 21
Beitrag ID: #442792
Bewertung:
(7248 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo zusammen,

nach knapp zwei Jahren greife ich diesen alten Thread mal wieder auf. Ich habe heute meinen ersten "ernsthaften" Job in CS5 angefangen und wollte einfache Text-Ersetzungen mit RecordFindChange_CS3.jsx aufnehmen. Es funktioniert grundsätzlich, aber im Gegensatz zur CS4 erhalte ich jetzt ganze Romane (siehe anliegende Beispieldatei).

Hat jemand schon ähnliche Erfahrungen mit InDesign CS5 gemacht?


als Antwort auf: [#355964]
Anhang:
findChangeStrings.txt (14.2 KB)

RecordFindChange.jsx unter CS5

Martin Fischer
  
Beiträge gesamt: 12783

30. Mai 2010, 15:32
Beitrag # 19 von 21
Beitrag ID: #443359
Bewertung:
(7156 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Ralf,

Du hast es schon getestet.

Zitat von Ralf Hobirk Ich habe das Script natürlich sofort mit Text & GREP S&E getestet und das aufgezeichnete Ergebnis mit FindChangeByList getestet. Läuft einwandfrei!


Wenn das gegenüber der CS3-Version etwas erweiterte Skript weitere Tests besteht, dann kommt es ins Skriptarchiv.

Code
//RecordFindChange_CS3-CS5.jsx  
//
//An InDesign CS3--CS5 JavaScript
//Writes the current find/change preferences to a text file so that you can copy/paste
//them into a find/change list file.


String.prototype.cleanProps = function ()
{
var s = this;
// split parameters
s = s.replace( /, /g, '\r' );
// delete breaks at start and end
s = s.replace( /^\({/, '' );
s = s.replace( /\}\)$/, '' );

// delete undefined
s = s.replace( /[\w]+:1851876449\r/g, '' );
s = s.replace( /[\w]+:\"\"\r/g, '' );
s = s.replace( /[\w]+:null\r/g, '' );
// delete some dirty or useless parameters
s = s.replace( /[^\r]+\/@find-[^\r]+\r+/g, '' );
s = s.replace( /[^\r]+\/@change-[^\r]+\r+/g, '' );
s = s.replace( /parent:resolve\(\"\/\"\)/g, '' );
s = s.replace(/\b\w+\b\:\(\{\}\)/g,'');

// column or single line
if ( _param.single_line == true )
{
s = s.replace( /\r\r*/g, ', ' );
s = '{' + s + '}';
s = s.replace( /, }/g, '}' );
}
else
s = s.replace( /\r\r+/g, '\r' );
return s;
}

// =================== Preferences / Voreinstellungen ================
var _param = get_param();
app.documents.firstItem().insertLabel('FindChangeByList', _param.toSource());
// ===============================================================


// ===============================================================
// main / Hauptprogramm
// ===============================================================
var myResult;
var myFindTextProperties = app.findTextPreferences.properties.toSource().cleanProps();
var myChangeTextProperties = app.changeTextPreferences.properties.toSource().cleanProps();
var myFindChangeTextOptions = ( _param.catch_options == true )
? app.findChangeTextOptions.properties.toSource().cleanProps()
: '{}';

var myFindGrepProperties = app.findGrepPreferences.properties.toSource().cleanProps();
var myChangeGrepProperties = app.changeGrepPreferences.properties.toSource().cleanProps();
var myFindChangeGrepOptions = ( _param.catch_options == true )
? app.findChangeGrepOptions.properties.toSource().cleanProps()
: '{}';

var myFile = myGetFileName();
var myData = collectData();
writeData ( myData );
if ( _param.final_message == true )
alert('Fertig!');

// ===============================================================
// functions / Funktionen
// ===============================================================
function myGetFileName()
{
if ( _param.file_2desk == true )
{
var myFile = new File( '~/Desktop/findChangeStrings.txt' )
}
else
{
if( File.fs != 'Macintosh' )
{
//Filter files by extension.
var myFile = File.saveDialog( 'Save Text File As:', 'Text Files:*.txt;All Files:*' )
}
else
{
var myFile = File.saveDialog( 'Save Text File As:' )
}
if ( myFile == null )
exit();
}
return myFile;
}

function collectData()
{
if ( _param.single_line == true )
{
if ( myFindTextProperties == '{}' && myChangeTextProperties == '{}' )
{
var myText = '';
}
else
{
var myText = 'text' + '\t' +
myFindTextProperties + '\t' +
myChangeTextProperties + '\t' +
myFindChangeTextOptions +
'\t//' + _param._comment + '\r';
}
if ( myFindGrepProperties != '{}' || myChangeGrepProperties != '{}' )
{
myText += 'grep' + '\t' +
myFindGrepProperties + '\t' +
myChangeGrepProperties + '\t' +
myFindChangeGrepOptions +
'\t//' + _param._comment + '\r';
}
}
else
{
var myText = '//' + _param._comment + '\r\r';
if ( myFindTextProperties != '' )
{
myText += '//FindTextProperties\r' +
myFindTextProperties + '\r\r' +
'//ChangeTextProperties\r' +
myChangeTextProperties + '\r\r' +
'//FindChangeTextOptions\r' +
myFindChangeTextOptions + '\r\r';
}
if ( myFindGrepProperties != '' || myChangeGrepProperties != '' )
{
myText += '//FindGrepProperties\r' +
myFindGrepProperties + '\r\r' +
'//ChangeGrepProperties\r' +
myChangeGrepProperties + '\r\r' +
'//FindChangeGrepOptions\r' +
myFindChangeGrepOptions;
}
}
return myText;
}

function writeData ( aData )
{
if( myFile!='' )
{
//Open the file for writing.
myResult = myFile.open( 'w', undefined, undefined );
}
if( myResult != false )
{
myFile.writeln( aData );
myFile.close();
if ( _param.file_open == true )
myFile.execute();
}
}

function get_param()
{
var _pref_string = app.documents.firstItem().extractLabel('FindChangeByList');
if (_pref_string == '')
_pref_string ="({single_line:true, catch_options:true, file_2desk:true, file_open:true, _comment:'Kommentar', final_message:true})";
var _pref = eval(_pref_string);
var _pref_rc = (_pref.single_line == true)
? true
: false;
var myDialog = app.dialogs.add({name:"Record FindChange Properties"});
var min_width = 300;
with(myDialog.dialogColumns.add()){
with(dialogRows.add()){
staticTexts.add( {staticLabel: "Ausgabe:"} );
}
with(dialogRows.add()){
var single_multi = radiobuttonGroups.add();
with(single_multi) {
radiobuttonControls.add({staticLabel: "einzeilig (für FindChangeByList.jsx)", checkedState: _pref_rc, minWidth: min_width});
radiobuttonControls.add({staticLabel: "mehrzeilig (Listendarstellung)", checkedState: !_pref_rc, minWidth: min_width});
}
}
with(dialogRows.add()){
staticTexts.add( {staticLabel: "-----"} );
}
with(dialogRows.add()){
staticTexts.add( {staticLabel: "Weitere Optionen:"} );
}
with(dialogRows.add()){
var the_cb_options = checkboxControls.add({staticLabel: "findChangeTextOptions und findChangeGrepOptions aufzeichnen", checkedState: _pref.catch_options, minWidth: min_width});
}
with(dialogRows.add()){
var the_cb_file2desk = checkboxControls.add({staticLabel: "Ergebnis auf Schreibtisch (findChangeStrings.txt)", checkedState: _pref.file_2desk, minWidth: min_width});
}
with(dialogRows.add()){
var the_cb_open = checkboxControls.add({staticLabel: "TXT-Datei nach Ausführung des Skripts öffnen", checkedState: _pref.file_open, minWidth: min_width});
}
with(dialogRows.add()){
var the_cb_final = checkboxControls.add({staticLabel: "Schlussmeldung ausgeben", checkedState: _pref.final_message, minWidth: min_width});
}
with(dialogRows.add()){
staticTexts.add( {staticLabel: "Kommentar: "} );
var x = _pref._comment;
var the_cb_comment = textEditboxes.add({staticLabel: "Kommentar", editContents: x, minWidth: min_width});
}
}
var myResult = myDialog.show();
var mySingleLine = (single_multi.selectedButton == 0)
? true
: false;

var myCatchOptions = the_cb_options.checkedState;
var myFile2Desk = the_cb_file2desk.checkedState;
var myFileOpen = the_cb_open.checkedState;
var myComment = the_cb_comment.editContents;
var myFinalMessage = the_cb_final.checkedState;
myDialog.destroy();
if(myResult == false)
exit();
else
return {single_line: mySingleLine, catch_options: myCatchOptions, file_2desk: myFile2Desk, file_open: myFileOpen, _comment: myComment, final_message: myFinalMessage};
}


Antwort auf [ Ralf Hobirk ] Ich verstehe nur folgende aufgezeichneten Parameter nicht:

kanaSensitive:true, widthSensitive:true, ignoreKashidas:true

wobei "ignoreKashidas" bei GREP nicht mit ausgegeben wird.


Das hängt mit den (versteckten) MiddleEast-Funktionen von InDesign zusammen.
Es handelt sich um Eigenschaften für arabischen Satz.
Bernd Meißner könnte Dir mehr dazu sagen – wenn er nicht in Urlaub wäre.


als Antwort auf: [#442792]
(Dieser Beitrag wurde von Martin Fischer am 30. Mai 2010, 15:38 geändert)

RecordFindChange.jsx unter CS5

MarkusD
Beiträge gesamt: 34

4. Nov 2020, 18:45
Beitrag # 20 von 21
Beitrag ID: #577444
Bewertung:
(2330 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Martin,

funktioniert das Script eigentlich auch unter ID2020?

Viele Grüße
Markus


als Antwort auf: [#443359]

RecordFindChange.jsx unter CS5

Martin Fischer
  
Beiträge gesamt: 12783

4. Nov 2020, 20:38
Beitrag # 21 von 21
Beitrag ID: #577447
Bewertung:
(2300 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Markus,

ich weiß es nicht.
Hast Du es probiert?


als Antwort auf: [#577444]
X

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
14.05.2024

Online
Dienstag, 14. Mai 2024, 10.00 - 10.30 Uhr

Webinar

Prozessoptimierung ist ein Teamsport! Keine Software und keine Maschine allein kann Ihnen helfen, die Effizienzpotenziale Ihres Betriebes maximal auszuschöpfen. Von der Auftragsannahme über die Vorstufe und den Druck bis hin zur Weiterverarbeitung – alles muss optimal ineinandergreifen. Apropos Weiterverarbeitung – in vielen Druckbetrieben fristet sie in Sachen Prozessoptimierung immer noch ein Schattendasein. Dabei liegen hier mittlerweile die größten Einsparpotenziale! In einem Webinar von Horizon und Impressed erfahren Sie, wie Sie diese Einsparungen realisieren können. Horizon, bekannt für innovative Lösungen in der Druckweiterverarbeitung, bietet mit iCE LiNK eine Workflowlösung für die Weiterverarbeitung. iCE LiNK überwacht, visualisiert und analysiert Produktionsabläufe und unterstützt bei der Wartung – damit immer alles reibungslos läuft. Den gleichen Anspruch hat der von Impressed entwickelte Impressed Workflow Server – er ist die smarte PDF-Workflow-Lösung für Druckereien, die Datenmanagement, Preflight und Produktionssteuerung übernimmt. Im Webinar zeigen Ihnen die Experten von Horizon und Impressed, wie beide Lösungen im Team die Effizienz und Produktivität Ihres Betriebes steigern können. Melden Sie sich am besten gleich an, wir freuen uns auf Sie! PS: Melden Sie sich in jedem Fall an – sollten Sie zum Termin verhindert sein, erhalten Sie die Aufzeichnung.

kostenlos

Ja

Organisator: Impressed / Horizon

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

Einsparpotenziale in der Weiterverarbeitung
Veranstaltungen
16.05.2024

Online
Donnerstag, 16. Mai 2024, 10.00 - 10.30 Uhr

Webinar

Komplizierte, kleinteilige Aufträge; alles sehr speziell; seit Jahren bewährte Prozesse – da können wir nichts standardisieren und automatisieren! Das sagen viele Großformatdrucker – aber stimmt das wirklich, ist dem tatsächlich so? Günther Business Solutions und Impressed treten in einem Webinar den Gegenbeweis an. Experten beider Unternehmen zeigen, wie Großformatdrucker vom Einsatz zweier bewährter Lösungen profitieren können: • von advanter print+sign von Günther Business Solutions, dem ERP-System für den Großformatdruck, dass alle Phasen der Wertschöpfung im Large Format Printing abdeckt • von Impressed Workflow Server, der smarten PDF-Workflow-Lösung für Druckereien, die Datenmanagement, Preflight und Produktionssteuerung übernimmt Über die Kombination beider Lösungen können Großformatdrucker ihre Prozesse mit modernen Workflows Schritt für Schritt automatisieren – und so zügig deutliche Zeit- und Kosteneinsparungen realisieren. Das Webinar sollten Sie sich nicht entgehen lassen – damit Sie keine Effizienzpotenziale mehr liegen lassen. Melden Sie sich am besten gleich an, wir freuen uns auf Sie! PS: Melden Sie sich in jedem Fall an – sollten Sie zum Termin verhindert sein, erhalten Sie die Aufzeichnung.

kostenlos

Nein

Organisator: Impressed / Günther Business Solutions

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

Und es geht doch: Automatisierung im Großformatdruck!