Cursiva entre claudàtors

Arran d’un dubte de la Marta Solà al LinkedIn, i després d’intentar posar-hi la resposta quatre vegades, he corroborat que no és el lloc addient per posar-hi codi (ni imatges ni format ni res) i optat per crear aquesta entrada.

Es planteja el cas d’aplicar format a una paraula que hi ha entre claudàtors, d’aquesta forma: [paraula]*, i de pas eliminar els claudàtors.

[paraula] -> paraula

La idea és fer una cerca GREP que trobi els claudàtors, capturi el que hi ha entre ells i ens ho retorni amb el format que volem.

Al camp Buscar hi posarem:
\[(.+?)\]

I al camp Cambiar a hi posarem:
$1

Al quadre de Cambiar formato hi posarem el format o l’estil de caràcter que necessitem.

claudators-a-cursiva

Instal·lar scripts en InDesign

M’he descarregat un script. Com l’instal·lo?

En realitat els scripts no necessiten instal·lació, només cal copiar-los a la carpeta del panell de Scripts (Script Panel) de l’usuari. Poden ser arxius individuals –la majoria ho són– o anar acompanyats d’arxius de suport (amb preferències, opcions, etc.).

Per exemple, un dels que porta InDesign és el FindChangeByList, que porta un arxiu de text (FindChangeList.txt) que es troba a la carpeta FindChangeSupport.findChangeByList

Hi ha molts llocs, especialment fòrums, on podem tenir el codi de l’script però no hi ha la descàrrega. En aquest cas hem de copiar el codi, crear un fitxer de text pla, enganxar-hi el codi i desar el fitxer amb l’extensió adequada segons el llenguatge de l’script i el nostre sistema operatiu:

  • Si és Javascript (Mac i Windows) el guardarem amb l’extensió .jsx
  • Si és Visual Basic (Windows) el guardarem amb l’extensió .vbs
  • Si és Applescript (Mac) el podem guardar amb l’extensió .as, .scpt o .applescript

Com accedeixo a la carpeta dels scripts?

La manera ràpida és fer-ho a través del panell de Scripts. Fins a la versió CS4 estava a Ventana > Automatización > Scripts, a partir de la CS5 a Ventana > Utilidades > Scripts.

Veiem que tenim dues carpetes: Aplicación i Usuario. Podem col·locar els scripts tant en la de l’aplicació com en la de l’usuari. La diferència és que en la primera seran accessibles per a tothom i en la segona cada usuari veurà els seus. Segons els permisos de carpeta que tinguem potser no podrem guardar els scripts a la carpeta de l’aplicació, per això sempre és millor que treballem amb la de l’usuari.

Per obrir la carpeta podem obrir el menú desplegable o clicar amb el botó dret i triar l’opció Mostrar en Explorador (Windows) o Mostrar en Finder (Mac).
mostrar-en-explorador

Ens apareixerà la carpeta Scripts Panel, i dins d’aquesta carpeta és on hem de posar els scripts. Automàticament ens apareixerà en el panell de Scripts d’InDesign. Podem fer subcarpetes per organitzar els nostres scripts.

Com executo l’script

Per executar l’script només cal obrir el panell Scripts, fer un doble clic sobre ell o seleccionar-lo i executar-lo a través del menú desplegable > Ejecutar Script.
executar-script

 

També podem executar un script a través del panell d’Aplicació ràpida si hem marcat a les opcions que ens inclogui els scripts.aplicacio-rapida

En aquest cas només cal començar a teclejar el nom perquè ens aparegui a la llista.aplicacio-rapida-script

Finalment, podem assignar una drecera de teclat a un script en el nostre conjunt de dreceres personalitzades, cosa que va de fàbula quan hem de cridar repetidament un script.dreceres-script

Importar taules xml a InDesign conservant el format

Arran d’un debat obert per la Cristina Mallafré al LinkedIn, m’ha semblat interessant plantejar un exemple on es mostri, a grans trets, el procés que ens permet crear una taula i etiquetar-la per tal d’utilitzar-la en un flux de treball amb xml.

La idea és tenir una plantilla en InDesign on importarem un xml que haurem generat en una font externa. En el cas de la Cristina era un catàleg de productes que es maquetava automàticament a partir d’un xml generat des d’una base de dades. En aquest exemple ens centrem en els estils de paràgraf i de cel·la, al final de l’article faig un esment als estils de taula.

Primer pas: definir l’estructura

Partim del nostre disseny a InDesign, en el qual tenim una taula on hem aplicat estils de paràgraf i estils de cel·la. Ens interessa diferenciar entre tres tipus de cel·la: la de títol, la de la descripció i la dels valors. Hem anomenat els estils de paràgraf p_descripcio, p_titol i p_valor, i els estils de cel·la c_descripcio, c_titol i c_valor.

taula-inicial

Després hem etiquetat els paràgrafs i les cel·les. Hem creat les etiquetes amb els mateixos noms que els estils. A la següent imatge podem veure els elements etiquetats (menú Ver > Estructura > Mostrar marcadores de etiquetas).

etiquetes-estils

I el resultat al panell d’Estructura (menú Ver > Estructura > Mostrar estructura):

estructura

Com que no hem etiquetat ni la caixa de text ni la taula, InDesign fa servir les etiquetes que té per defecte (en aquest cas Artículo i Tabla) per etiquetar-les.

Exportem l’xml

El següent pas serà exportar l’xml per obtenir l’estructura que caldrà replicar quan generem l’xml amb les dades definitives. En el cas de l’exemple seria:

xmlDocBrut

InDesign exporta el text compacte, però podem indentar-lo per entendre’l millor (podem fer la transformació amb un editor o a través d’un servei online com el de codebeautify.org). Cliqueu sobre la imatge per ampliar.

xmlDoc

Què podem observar al codi?

  1. Les etiquetes que hem creat al nostre document es converteixen en els elements de l’xml. Podem veure la similitud amb el panell d’Estructura d’InDesign.
  2. InDesign declara l’espai de noms xmlns:aid=”http://ns.adobe.com/AdobeInDesign/4.0/” per treballar amb taules. La declaració es pot fer també en un nivell superior o en l’element arrel.
  3. Per identificar un element de taula fa servir l’atribut aid:table. El valor de l’atribut “table” indica la taula; el valor “cell” indica una cel·la. És a dir, podem posar el nom que vulguem a l’element i, per tant, a l’etiqueta de la cel·la, perquè Indesign entendrà que és una cel·la a través de l’atribut.
  4. Finalment, podem veure la informació sobre les files, les columnes i l’amplada de la cel·la.

Aquests són els elements que necessitarem quan es generi l’xml.

El punt clau: assignació d’etiquetes a estils

Quan importem l’xml al document, InDesign carrega l’estructura i afegeix les dades o les combina segons les opcions d’importació. Però l’xml no porta informació sobre el format de les dades.

El que necessitem fer és relacionar les etiquetes amb el format que ens interessa. I això ho fem a través de l’opció d’assignació d’etiquetes a estils (menú desplegable del panell Estructura o del panell Etiquetas > Asignar etiquetas a estilos…). Podríem fer-ho manualment però com que hem creat les etiquetes amb els mateixos noms que els estils podem utilitzar el botó Asignar por nombre.

Automàticament els estils que tinguin el mateix nom que les etiquetes queden relacionats, tant si es tracta d’estils de paràgraf com de cel·la.

estils-assignats

L’assignació només cal fer-la un cop si no eliminem ni afegim estils o etiquetes. El document guardarà la relació entre les etiquetes i els estils. D’aquesta manera, cada cop que importem xml amb les etiquetes definides al document i amb els estils assignats, la taula agafarà el format que ens interessa.

Addenda: aplicar estil de taula

Tot i que no forma part de l’exemple, cal dir que també es pot assignar l’etiqueta de la taula a un estil de taula, de manera que quan importem l’xml la taula tingui les propietats que haguem definit a l’estil. Usualment farem servir tant l’estil de taula com els de cel·la per tenir un màxim control sobre el contingut.

Quan una taula pot ser definida totalment amb un estil de taula no caldria que les etiquetes de les cel·les tinguessin un nom diferent perquè l’estil de taula s’encarregaria d’aplicar el format necessari. No obstant això, l’etiquetatge diferenciat pot ser útil si hem de fer servir altres eines o si necessitem un script per recórrer l’estructura de l’xml.