30 november 2010

Vragenlijsten: auto-nummeren in InDesign


OPMERKING VOORAF: KLIK OP DE AFBEELDINGEN OM ZE GROTER EN MET MEER DETAIL TE ZIEN


In een document van een klant kwam ik de volgende opmaak tegen: het gaat om vragenlijsten waarin:
  • Eerst een vraag gesteld wordt welke genummerd is met eerst het uitgave nummer (in dit geval 4) gevolgd door een oplopend nummer (dus vraag 4.1, 4.2,4.3 etc);
  • Gevolgd door vier opties: alfanumeriek genummerd (a,d,c,d);
  • Gevolgd door vier antwoordmogelijkheden: genummerd 1,2,3 en 4








De a,b,c en d mogelijkheden alsook de 1,2,3 en 4 antwoorden moeten niet doornummeren maar telkens weer bij a of bij 1 beginnen. De gestelde vraag (4.1, 4.2 etc) moet steeds wel oplopen.
Extra is dat de eerste antwoordmogelijkheid (1) een afwijkende alineastijl heeft met een alinealijn erboven

Je kunt dit in InDesign automatiseren:
Wat we nodig hebben zijn vier alineastijlen:
  • een alineastijl voor de genummerde en oplopende vraag;
  • een alineastijl voor de a,b,c en d opties;
  • een alineastijl voor antwoordmogelijkheid 1 met een lijn erboven;
  • een alineastijl voor de antwoordmogelijkhden 2,3 en 4 zonder alinealijn.

Om de lijsten te laten nummeren gebruiken we de opties Opsommingstekens en Nummering in de alineastijlen.

BELANGRIJK: maak een nieuwe lijst aan die aangeeft dat alle nummeringen deel uitmaken van één geheel!




Maak de eerste alineastijl aan voor de vraag (4.1, 4.2 etc). Als je het heel netjes wilt doen dan kun je op de pagina waar je vragenlijst op staat via het Pagina-deelvenster de optie Nummering en Sectieopties oproepen en een hoofdstuknummer (dus NIET een paginanummer!) opgeven.
In ons voorbeeld wordt dat hoofdstuk 4. Dit cijfer 4 kun je nu automatisch aan het begin laten plaatsen in de eerste alineastijl.




Maak nu de eerste alineastijl:



De opties voor nummering zien er als volgt uit voor de eerste stijl, de 4.1, 4.2 etc nummering:

De nummeringopties zijn:
Nummering:
Level 1 (de eerste nummering van de drie die we maken)
Code:
^H (hoofdstuk-nummer, in ons geval hebben we dat 4 gemaakt, zie boven)
. (gevolgd door een punt)
^# (de nummering, in dit geval een cijfer)
^t (Een tab)
dus
^H.^#^t
Lijst: kies de aangemaakte lijst, zie boven, in dit geval de naam Nummers FvdG;



Dan de tweede stijl voor de a,b,c en d mogelijkheid:



Nummering: alfanumeriek
Level 2(!)
Code: ^#^t (^# is de nummering in dit geval alfanumeriek, gevolgd door een tab ^t)
Lijst: kies weer de aangemaakte lijst, dus Nummers FvdG
Kies Nummering op dit niveau opnieuw beginnen na Elk vorig niveau op ervoor te zorgen dat de volgorde a,b,c,d steeds opnieuw begint (en niet doornummert straks naar e,f,g,h etc.)


Dan de derde stijl voor de 1 mogelijkheid met alinealijn:



Nummering: nummers
Level 3(!)
Code: ^#^t
Lijst: kies weer de aangemaakte lijst, dus Nummers FvdG
Kies Nummering op dit niveau opnieuw beginnen na: Elk vorig niveau om ervoor te zorgen dat de volgorde 1,2,3,4 steeds opnieuw begint (en niet doornummert straks naar 5,6,7,8 etc.)


We zetten ook een alinealijn aan:



Maar: deze stijl is alleen voor de eerste mogelijkheid 1. Daarna komen de mogelijkheden 2,3 en 4 die echter geen alinealijn hebben in de stijl!
We maken dus simpelweg een kopie van deze stijl! En in de kopie zetten we de alinealijn uit!

Doordat we een kopie maken blijft het level op 3 staan, net als in de oorspronkelijke stijl. Doordat beide stijlen hetzelfde level 3 hebben nummeren ze onderling door!


Pas dus stijl 1 toe op de vraag (4.1 etc);
dan de tweede stijl op de mogelijkheden a,b,c en d;
de derde stijl (met alinealijn) op mogelijkheid 1
De vierde (kopie zonder alinealijn) op de mogelijkheden 2,3 en 4.

Et voila!
Even wat werk maar bij lange vragenlijsten van soms meerdere pagina's en bij volgende nieuwe nummers van het tijdschrift (bijvoorbeeld nummer 5, verander dan in de stap hierboven het hoofdstuk-nummer in 5) nog slechts een kwestie van een paar klikken!


Valkuilen waar je voor moet oppassen:
  • Gebruik in een dergelijk geval van nummering in een lange tekst in een kader of tekstketen voor dit soort opvolgende nummering altijd dezelfde lijst! Maak de lijst aan zoals boven besproken (in ons voorbeeld Nummers FvdG);
  • Check of de levels oplopend zijn (level 1, level 2, level 3)
  • Gebruik voor doornummerende lijsten met verschillende stijlen (zoals een alinealijn voor de eerste mogelijkheid) hetzelfde level nummer.
  • Redacties die sommige nummers wel hard intypen en voor andere de opsommingsfunctie van Word gebruiken. Tja... :-)

TIP:
Om de nummers anders vorm te geven gebruik een tekenstijl, zoals vet en ken deze toe in de Nummering opties (zie ook het voorbeeld document dat je hier kunt downloaden - zie onderaan)


Een voorbeeld InDesign document (iets eenvoudiger dan de screenshots van het voorbeeld) kun je hier downloaden (klik met de rechtermuisknop en kies Bestand bewaren als) het is een idml-bestand voor CS4 en CS5. Bekijk het en probeer het eens uit!
Succes!




28 november 2010

PPD bestanden gebruiken


In een eerder bericht (lees hier) heb ik het al eens gehad over hoe je de Acrobat 9 distiller Postscript printer-driver (PPD, het 'beschrijvingsbestand' voor een bepaalde postscript printer) kunt installeren onder Mac OS X 10.6. Onder Mac OS X 10.6 werkt deze nl. niet meer zoals daarvoor gewend. Bovendien kon je de Acrobat 9 PPD niet meer kiezen wanneer je naar postscript wil printen (de enige reden waarom je dat nog zou willen is wanneer je bijvoorbeeld wilt schalen of direct een grijswaarden-bestand wil aanmaken ipv later in Acrobat Pro, zie bericht hier).

Sinds InDesign CS5 is het een stuk makkelijker om PPD bestanden beschikbaar te maken bij het afdrukken in InDesign. Maak in de map Presets een nieuwe map aan met de naam PPDs. In deze map PPDs kun je PPD bestanden plaatsen die door InDesign vervolgens worden herkend. Dat gaat dus ook op voor de Acrobat 9 PPD!






21 november 2010

Voor luie mensen: basislijnraster aanpassen


Je hebt je tekst vast staan op basislijn en je basislijn raster is dus hetzelfde als de regelafstand van die tekst natuurlijk (vergeet niet dat elk tekstkader zijn eigen, aparte – van het document basislijn-raster afwijkend – raster kan hebben, maar hier gaat het om het basislijn raster voor je document).

Verandert nu de regelafstand om layout-technische redenen bijvoorbeeld, dan moet je het basislijn-raster ook weer aanpassen.

Voor mensen die daar te lui voor zijn is het onderstaande script (niet van mijzelf!) bedoeld: Zet je cursor in een alinea, run het script en je basislijnraster zal gelijk worden gemaakt aan de regelafstand van de alinea waar je cursor in stond.


Knip/plak onderstaande tekst in een teksteditor en bewaar met de extensie .jsx.

As always*: plaats het script in InDesign/Scripts/Scripts Panel/(eventuele supmap)/


//Basislijn_aanpassen.jsx
//DESCRIPTION: Basislijn aanpassen aan regelafstand
Object.prototype.isText = function()
{
switch(this.constructor.name)
{
case "InsertionPoint":
case "Character":
case "Word":
case "TextStyleRange":
case "Line":
case "Paragraph":
case "TextColumn":
case "Text":
case "TextFrame":
return true;
default :
return false;
}
}
if (app.selection.length > 0 && app.selection[0].isText())
{
var myDoc = app.documents[0];
var mySel = app.selection[0];
var myOldPointsPerInch = myDoc.viewPreferences.pointsPerInch;
myDoc.viewPreferences.pointsPerInch = 72;
var myFirstBaseline = (mySel.constructor.name == 'TextFrame')
? mySel.insertionPoints[0].baseline
: mySel.parentTextFrames[0].insertionPoints[0].baseline;
var myLeading = ( mySel.insertionPoints[0].leading == 1635019116 )
? mySel.insertionPoints[0].pointSize * mySel.insertionPoints[0].autoLeading / 100
: Number ( mySel.insertionPoints[0].leading );
if (myLeading)
{
myDoc.gridPreferences.baselineStart = myFirstBaseline;
myDoc.gridPreferences.baselineDivision = pt2mm(myLeading);
}
myDoc.viewPreferences.pointsPerInch = myOldPointsPerInch;
}
function pt2mm(somePoints){
return somePoints*0.3528;
}


*As always, should you or any of your IM Force be caught or killed, the Secretary will disavow any knowledge of your actions
LOL! ;-)




18 november 2010

QuarkXPress 8.5. Gratis update


Van QuarkXPress is een nieuwe versie uit, versie 8.5. De update is gratis voor iedere QXPress 8 bezitter te downloaden op de website van Quark.

Een lijst van bugfixes vindt je hier.


12 november 2010

Lokale opmaak tonen (Text overrides) op scherm


We zijn allemaal bekend met het plusje achter een stijlnaam: ergens is lokale opmaak toegepast na het toepassen van de alineastijl. Alle lokale opmaak wissen: met ALT ingedrukt nogmaals op de stijlnaam klikken; is er sprake van lokale opmaak door middel van een tekststijl: ALT+SHIFT klikken.
Voor meerdere geselecteerde alinea's met verschillende stijlen kun je het pictogram onderaan het stijlenvenster gebruiken.









Zodra je iets wijzigt voor een hele alinea (bijvoorbeeld regelafstand met de voorkeur Regelafstand op hele alinea toepassen aangezet!) zie je het plusje altijd. Spatieer je aan- of af op een (deel van de) alinea, dan kun je een groene kleur achter alle aangespatieerde tekst laten zien door bij Voorkeuren > Compositie > Aangepaste Reeksspatiering aan te zetten.

Helaas, als je met de hand ergens iets vet, cursief of kleinkapitaal enzovoort zet, zie je het plusje alleen als de cursor in de lokale opmaak zelf zet.

Maar goed nieuws: Harbs heeft een scriptje dat uitgevoerd kan worden als Opstartscript en automatisch in je tekstmenu een extra optie geeft: Toon/verberg lokale opmaak!
Alle opmaak die lokaal is aangepast wordt dan op je beeldscherm weergegeven met een rode streep!
SUPER HANDIG!







Je kunt het script hier downloaden: klik met je rechter-muisknop hier en kies Link bewaren als.
Plaats het script in de map InDesign/Script/Startup scripts.
Als de map Startup scripts niet bestaat kun je deze aanmaken.

Herstart InDesign en ga naar het menu Tekst: helemaal onderaan zie je nu de nieuwe optie!

Het script is aangepast voor het Nederlands, maar je kunt het script (gewoon in een teksteditor) aanpassen en de optie zo noemen als je wilt, dat mag van Harbs ;-)

Dit script komt via Harbs en het InDesign pre-release forum (ja, we zijn weer wat aan het beta-testen dus!!)

Het script werkt in CS4 en CS5!

9 november 2010

Eigen deelvensters (panels) toevoegen


Een tijdje geleden heb ik hier gewezen op de mogelijkheid om zelf extra deelvensters te maken (met Configurator) en te installeren in InDesign CS5 met je eigen tools. Lees het bericht daarover hier.

Ook anderen zijn in de weer geweest. De onderstaande is een mooie mogelijkheid om vanuit een deelvenster metadata (XMP) aan je InDesign document mee te geven (goed voor ePub bijvoorbeeld). Natuurlijk kan dit ook gewoon vanuit het Bestandsmenu (bestandsinfo) maar voor de basismogelijkheden werkt het perfect. Over hoe dit te installeren – zie ook mijn vorig bericht hier.

Je kunt het Metadata/XMP-venster hier downloaden.




4 november 2010

Teus de Jong (1946 – 2010)



Vandaag bereikte mij het droevige nieuws dat Teus de Jong is overleden. Een bekend typograaf en InDesign gebruiker. Veel van zijn scripts zijn bij mij in gebruik.
Een droeve dag...

2 november 2010

GREP die bedragen (tientallen, honderdtallen etc.) vindt


Een vraag die al een tijd geleden is gesteld, maar waar ik nu pas een goeie GREP voor heb (ik moest het namelijk zelf gebruiken ;-) ):

Probleem: vind bedragen die tientallen, honderdtallen, duizendtallen etc. bevatten, met een euro-teken, en mogelijk een spatie, geen spatie, of een smalle/dunne etc. spatie dan wel een tab achter het euro-teken:

€ 1,00

€ 23,12

€ 123,45

€ 5.234,56

€ 16.234,56

€ 516.234,56

12,34

€ 123,45

€ 1.234,56


gebruik de volgende GREP:


\€s?\d{1,3}(.\d{3})*\,\d\d


Maar...toen moest ik nog wat verzinnen voor een bedrag met een half kastlijntje in plaats van twee nullen...


€ 12,–


Dat wordt dan:


\€s?\d{1,3}(.\d{3})*\,(\d\d)?(~=)?


Maar deze werkt net zo goed:


(\€s?)(\d+?)(\.?)(\d+)(\,)(\d\d)?(~=)?


Maar nog beter, vang af ongeacht hoeveel je in de miljoenen, miljarden etc. duikt door een voorwaardelijke herhaling ( de onderstaande is dus de beste definitieve reeks):


((\d+)?(\.?))+(\d{1,3})?,(~=)?(\d{1,2})?



Een variant: van Europese schrijfwijze naar Engelse schrijfwijze: daar moeten de punten en komma's precies andersom staan.

Ik neem nu even niet de valuta mee (dus een GREP zonder het Euro teken):


Zoek naar:


(\d{1,3})*(.)(\d{3})*(\,)(\d\d)


Vervang door:

$1,$3.$5


Wil je andersom van Engels naar Europees dan moet je in beide uitdrukkingen de komma en punt simpelweg omwiselen in de GREP.

De GREP van Europees naar Engels kan nog wel wat beter want deze GREP gaat ervan uit dat er en een punt en een komma in het bedrag staan (alleen komma's worden wel gevonden maar niet goed vervangen) en het halve kastlijntje zit er ook niet in. Maar: het is een begin en er is vast wel iemand onder de lezers die de GREP kan aanpassen voor gewenste doeleinden ;-)

NOOT: er bestaan twee aparte GREPS die bij InDesign worden meegeleverd om eerst decimalen dan honderdtallen en duizendtallen om te zetten van Europees naar Engels.

Ik heb ze wat aangepast om ook n-dashes te vinden, maar het blijft een twee-traps-raket:
EERST (!!) decimalen vinden:

,((\d{2})?(~=)?)


vervang

.$1


Vervolgens (!!) duizendtallen:

zoek:


\.(\d{3})


vervang:

,$1


NOOT: Deze twee kun je nou mooi in één handeling verrichten met Multi-FindChange - zie mijn blogbericht hier. (zie filmpje hieronder voor Multi-Findchange).