Buscar este blog

FindChangeByList en InDesign

En este tutorial quiero hablar sobre uno de los scripts más útiles que vienen preinstalados en InDesign: FindChangeByList.  Originalmente, el script elimina "Enter´s",  tabuladores, espacios, guiones repetidos, tabulados seguidos de retornos; en una palabra, es el comando ideal para "limpiar" los textos que se importan a InDesign. Lo que hace en realidad el script es una búsqueda y reemplazo tomando como base un archivo de texto, el cual se puede editar para añadir más criterios de búsqueda.

Editar el archivo FindChangeByList

En este texto la palabra InDesign aparece escrita de diferentes maneras: en mayúsculas, en minúsculas, combinada, etc,. La idea es editar un archivo con las palabras "mal escritas" para que el script las reemplace por la palabra correctamente escrita.

En el Panel de Scripts, desplegamos la carpeta Samples>JavaScript y damos clic derecho sobre la carpeta FindChangeSupport y activamos Mostrar en Finder (Mac) - Mostrar en Explorador (Win). Esto abrirá la ubicación original del archivo con formato .txt que es el que vamos a editar. Guarde una copia del archivo original en el escritorio.

Una vez abierta la carpeta que contiene el documento, dé doble clic sobre el archivo  FindChangeList.txt  se abrirá en el bloc de notas (Win) o en Text Edit (Mac):
La primera parte del documento contiene las instrucciones (señalas con un doble Slash //) para editar las búsquedas. La parte que se puede editar es la que aparece al final.

Copie uno de los renglones que aparece al final ej:
grep {findWhat:"\r\r+"} {changeTo:"\r"} {includeFootnotes:true, includeMasterPages:true, includeHiddenLayers:true, wholeWord:false} y péguelo al final de la última línea.
Si conoce algo de las búsquedas de texto y GREP, le será familiar el esquema del texto:
grep {findWhat:"\r\r+"}realiza una búsqueda GREP de un retorno (\r)que aparezca una o más veces  (\r+) y lo reemplaza por un solo retorno.
Ahora la tarea consiste en escribir entre las comillas de los campos {findWhat:" +"} la palabra mal escrita, y en el campo {changeTo:" "} colocar entre las comillas la palabra bien escrita. Se pueden añadir cuantas palabras se necesiten duplicando la línea text {findWhat... ), Quedaría como sigue (indico en rojo las partes que deben cambiar en el script):

text {findWhat:"indesing"} {changeTo:"InDesign"} {includeFootnotes:true, includeMasterPages:true, includeHiddenLayers:true, wholeWord:false}.
text {findWhat:"Indesign"} {changeTo:"InDesign"} {includeFootnotes:true, includeMasterPages:true, includeHiddenLayers:true, wholeWord:true}
text {findWhat:"inDesign"} {changeTo:"InDesign"} {includeFootnotes:true, includeMasterPages:true, includeHiddenLayers:true, wholeWord:true}

Una vez editado el archivo, se guarda en la misma ubicación. Es probable que el documento no se deje guardar en esta ubicación del sistema; guarde una copia en el escritorio y luego reemplace el documento original.
Para aplicar el script en InDesign, seleccione el articulo de texto al cual desea aplicar los cambios, y desde el panel Scripts haga doble clic en el nombre del script FindChangeByList; todas las palabras se reemplazaran inmediatamente en el documento.
Si desea ayuda con automatización de procesos en InDesign escriba a profe.ivan@gmail.com

About Profeivan

Profeivan
Recommended Posts × +

8 comentarios:

Daniel Riquelme dijo...

Probando! a ver! Estoy haciendo de vuelta el tutorial, ojalá que me funcione porque realmente me solucinaría un montón de problemas.
Es una gran guapeada unificar cosas como esas: Kg/Há. - kg/ha - Kg/ha jejeje.

Gracias profe por este excelente aporte!
Mis respetos desde Paraguay

felix dijo...

Hola, estoy intentando ejecutar este excelente script pero me da un error Javascript,

Número de error: 25
Cadena de error: Esperado: ;

creo haber seguido los pasos como explicas en tu blog.

muchas gracias

profeivan dijo...

Puede estar sucediendo que al editar el documento de texto omitisteun ; (punto y coma) o digitaste otro caracter. La solución: vuelve al original de script y edítalo de nuevo.
Si sigues con dificultades enviame un correo info@profeivan.com

Víctor dijo...

Yo tengo la siguiente duda con respecto a este script:
¿Existen más funciones javascript del tipo "appliedcharacterstyle" para agregarle un estilo al cambio?, si existen ¿dónde puedo encontrar un listado?

Muchas gracias y un saludo

Víctor dijo...

Yo tengo una duda con el javascript y con respecto a este script en concreto:
¿existen más funciones del tipo "appliedcharacterstyle" con el que poder jugar con el texto??

Muchas gracias

profeivan dijo...

Sí, con el script se pueden aplicar estilos de caracter automáticamente modificando la línea grep {findWhat:"Algo"} {changeTo:"Algo", appliedCharacterStyle:"Rojo"}
Donde Algo es el texto al cual se le quiere aplicar el estilo de caracter Rojo. También se pueden colocar búsquedas GREP en estos campos. Los comandos GREP los puedes encontrar en los archivos de ayuda de InDesign.

Víctor dijo...

Ok, pero me refería a que si sólo se puede aplicar estilos de carácter o se puede hacer alguna aplicación a estilos de párrafo, objeto, etc. utilizando órdenes como "appliedCharacterStyle".
El GREP está "medio" controlado :)

muchas gracias otra vez

profeivan dijo...

Si es posible aplicar estilos de párrafo y objeto colocando dentro de los campos Findwhat: y ChangeTo: comandos GREP. Revisa este script http://www.kasyan.ho.com.ua/find_change_by_queries.html que carga los comandos utilizados en el campo Buscar de GREP y los coloca como texto para insertar dentro del archivo .txt