AppleScript vraagje

Ik wil enkele handelingen in Quark automatiseren met AppleScript, maar kan er zelf nog niet zo goed mee overweg. Ik moet een script hebben voor het aanmaken van een nieuwe Quark bestand met text boxen en picture boxen, een script voor het importeren van text, en een script voor het importeren van afbeeldingen.

Weet iemand of er scripts bestaan die zulke handelingen uitvoeren, of weet iemand hoe je zulke scripts maakt?
Ik hoop namelijk dat ik met het automatiseren van zulke handelingen een hoop tijd kan besparen met het maken van vele documenten in Quark waarin 30 afbeeldingen per pagina met tekst moet worden geïmporteerd.

Bij voorbaat dank.

Frederick Geerkens

dat kan zeker, ik heb gister nog een applescript afgerond voor iemand die zo'n 400 verhuisbrieven met elk een unieke geadresseerde en uniek aanhef... is wel gelukt, maar quark geeft bij elk document een apart nummer aan elke tekst of picture box die niet te achterhalen valt in quark zelf... daar heb je weer een apart script voor nodig omdat uit te zoeken... gedoe nogal... ik kan je wel mijn script toesturen via de mail als ik weer thuis ben dan....

Om vast mee te beginnen een paar basisregels voor het importeren van een map afbeeldingen of teksten. Het script gaat uit van een open Quarkdocument met een tekst- of illustratiekader op de basispagina.

• Verder is het handig eens op papier te zetten wat er stap-voor-stap moet gebeuren voor je een script maakt.
• Je kunt kaders ook in Quark benoemen m.b.v. Applescript of Moniker. Zo zou je daarmee weer naar mappen of bestanden kunnen verwijzen.
• Kijk ook eens op het Quarkforum, daar vind je ook al vrij veel.

Deze importeert een map afbeeldingen:

[code:1:a327ddcd49]set picFolder to (choose folder with prompt "Selecteer een map met afbeeldingen") as string
set picList to list folder picFolder without invisibles

tell application "QuarkXPress Passport"
activate
tell document 1
repeat with eachFile in picList
set lastPage to count of pages
show page lastPage
try
tell picture box 1 of page lastPage
set image 1 to (picFolder & eachFile) as alias
set bounds of image 1 to proportional fit
end tell
end try
make page at end
end repeat
end tell
end tell[/code:1:a327ddcd49]

Voor het plaatsen van een tekstbestand (.txt):

[code:1:a327ddcd49]set theFile to (choose file with prompt "Select file") as string

tell application "QuarkXPress Passport"
tell document 1
tell current box of current page
set story 1 to theFile as alias
end tell
end tell
end tell[/code:1:a327ddcd49]

[quote:88d85280a4="Kjeld"]Om vast mee te beginnen een paar basisregels voor het importeren van een map afbeeldingen of teksten. Het script gaat uit van een open Quarkdocument met een tekst- of illustratiekader op de basispagina.

• Verder is het handig eens op papier te zetten wat er stap-voor-stap moet gebeuren voor je een script maakt.
• Je kunt kaders ook in Quark benoemen m.b.v. Applescript of Moniker. Zo zou je daarmee weer naar mappen of bestanden kunnen verwijzen.
• Kijk ook eens op het Quarkforum, daar vind je ook al vrij veel.

Deze importeert een map afbeeldingen:

[code:1:88d85280a4]set picFolder to (choose folder with prompt "Selecteer een map met afbeeldingen") as string
set picList to list folder picFolder without invisibles

tell application "QuarkXPress Passport"
activate
tell document 1
repeat with eachFile in picList
set lastPage to count of pages
show page lastPage
try
tell picture box 1 of page lastPage
set image 1 to (picFolder & eachFile) as alias
set bounds of image 1 to proportional fit
end tell
end try
make page at end
end repeat
end tell
end tell[/code:1:88d85280a4]

Voor het plaatsen van een tekstbestand (.txt):

[code:1:88d85280a4]set theFile to (choose file with prompt "Select file") as string

tell application "QuarkXPress Passport"
tell document 1
tell current box of current page
set story 1 to theFile as alias
end tell
end tell
end tell[/code:1:88d85280a4][/quote:88d85280a4]

het kiezen van een textbestand, en het importeren van de tekst werkt prima. Bedankt!
Moest wel [size=9:88d85280a4]TM[/size:88d85280a4] achter QuarkXpress Passport zetten.

maar de scriptcode voor het importeren van een mapje met afbeeldingen werkt bij mij niet…
tenminste, bij het uitvoeren kan ik wel een mapje kiezen met afbeeldingen. Maar als ik een mapje kies waarin enkele *.eps bestanden staan dan ziet hij de bestanden niet. En als ik het mapje selecteer en op “Kies” klik dan geeft hij de fout:
‘Kan “Users:Frederick:afbeeldingen:” niet in een item omzetten’

Moet ik dan misschien in de script nog iets aangeven zodat hij *.eps bestanden kan herkennen?

[quote:0562a827da="reneo"]dat kan zeker, ik heb gister nog een applescript afgerond voor iemand die zo'n 400 verhuisbrieven met elk een unieke geadresseerde en uniek aanhef... is wel gelukt, maar quark geeft bij elk document een apart nummer aan elke tekst of picture box die niet te achterhalen valt in quark zelf... daar heb je weer een apart script voor nodig omdat uit te zoeken... gedoe nogal... ik kan je wel mijn script toesturen via de mail als ik weer thuis ben dan....[/quote:0562a827da]

dus komt er nog heel wat kijken bij het automatiseren met AppleScript?

Maar het is toch wel grappig dat 1 zo’n script eigenlijk al veel werk uit handen kan nemen

[quote:09a0a82807="Frederick"]En als ik het mapje selecteer en op "Kies" klik dan geeft hij de fout: 'Kan "Users:Frederick:afbeeldingen:" niet in een item omzetten'[/quote:09a0a82807] Ik heb het nog even geprobeerd, maar Quark 6 onder OS X heeft er geen problemen mee. Het zou kunnen dat je: • in een oudere versie van Quark werkt onder Classic. • Er misschien bestanden in de map staan die niet geïmporteerd kunnen worden.

Applescript is een zwaar onderschat programma. Zoals je de tijd moet nemen met elk programma om er mee te leren werken, geldt voor Applescript hetzelfde. Als je het eenmaal een beetje door hebt kun je de saaie en tijdrovende klusjes mooi uit handen laten nemen. Scheelt je uren werk waarin je je met je echte werk kunt bezighouden.

Het Quark forum is wel een aanrader als je meer wilt weten.
Of je koopt Applescripting QuarkXpress van Shirley Hopkins. Wordt ook een cd met voorbeeldbestanden meegeleverd.

dan vrees ik dat het aan de versie van Quark ligt waarmee ik werk. of omdat ik met os 9.2 werk... Als ik via Quark de afbeelding bestand wil importeren dan herkent hij hem wel. Dus daar ligt het niet aan.

betekend dit dat de script gewoon niet werkt onder een oudere versie van Quark

Verder terug dan Quark 5 kan ik niet en daar werkt het script wel onder. Mocht je met versie vier werken moet je even verder op zoek, want ik herinner me dat er iets verandert was met het verwerken van lijsten. Je zou deze regel [code:1:bf1d688820]set image 1 to (picFolder & eachFile) as alias[/code:1:bf1d688820] kunnen veranderen in [code:1:bf1d688820]set image 1 to alias (picFolder & eachFile)[/code:1:bf1d688820]

ik werk met Quark 5

dus ik denk eerder dat het aan m’n besturingssysteem ligt…
…dat het niet werkt bij Mac OS

nadat hij een fout aangeeft, geeft hij deze lijn met blauw aan:

[code:1:0a206329d8]set picList to list folder picFolder without invisibles[/code:1:0a206329d8]

ik ben op het Quark forum geweest, en daar heeft iemand jouw script ook uitgetest. Bij hem werkte het ook prima. Uiteindelijk concludeerde hij dat het aan mijn AppleScript versie ligt. V1.7 blijkt redelijk wat bugs te bevatten. Hij adviseert mij nu om m'n applescript te upgraden naar 1.8.3, of als dat niet lukt te downgraden naar 1.6

Mogelijk dat ik niet kan upgraden, omdat volgens hem er geen europese versies ervan zijn uitgebracht.

Ja, maar wacht eens even...

Draai jij het script misschien vanuit de Scriptmaker onder Classic in plaats van in Scripmaker onder OS X? Dat eerste werkt bij mij namelijk ook niet, zie ik nu.

Werk zelf met versie 2.0.

ben er nog niet bepaald van overtuigd dat het een applescript-bug is; je parsed namelijk de folder naar een string; en niet naar een alias. [code:1:439f2a9feb]set picFolder to (choose folder with prompt "Selecteer een map met afbeeldingen") as string set picList to list folder picFolder without invisibles [/code:1:439f2a9feb]

probeer eens:

[code:1:439f2a9feb]
try
tell application "Finder" to set the picFolder to (choose folder with prompt "Selecteer een map met afbeeldingen") as alias
try
set picList to list folder picFolder without invisibles
on error
display dialog "Error! could not set piclist to list folder" buttons {"Exit"} default button 1 with icon stop
end try
on error
display dialog "Error! could not set alias for chosen folder" buttons {"Exit"} default button 1 with icon stop
end try
[/code:1:439f2a9feb]
en kijk of hij nu een foutmelding teruggeeft

bij het verwerken van het script komt hij niet verder dan de regel "list folder picFolder without invisibles"

ik denk toch dat het om een bug gaat

Ik zou de vraag over het omzetten van een map in een lijst even in het Mac-OS forum [url=http://bbs.applescript.net/]hier[/url] stellen. Ik vermoed dat je binnen een dag de oplossing in handen hebt.

ok, ik zal een poging wagen

thnx