Macros de comandos

Las macros de comandos proporcionan accesos directos con nombre para conjuntos de comandos. Las macros se definen en archivos de definición de macros independientes, que se pueden adjuntar a los catálogos de imágenes o al catálogo predeterminado.

$ *name*$

name

Nombre de la macro.

*name* no distingue entre mayúsculas y minúsculas y puede consistir en cualquier combinación de letras ASCII, números , '-', '_' y '.' caracteres.

Las macros pueden invocarse en cualquier lugar de una solicitud después de "?", así como en cualquier lugar dentro de un catalog::Modifier o catalog::PostModifier field. Las macros solo pueden representar uno o más comandos completos del servicio de imágenes y deben separarse de otros comandos con separadores "&".

Las invocaciones a macros se sustituyen por sus cadenas de sustitución al principio del análisis. Los comandos dentro de las macros anularán los mismos comandos de la solicitud si se producen antes de la invocación de la macro en la solicitud. Esto es diferente a catalog::Modifier, donde los comandos de la cadena de solicitud siempre anulan los comandos de catalog::Modifier cadena, independientemente de la posición en la solicitud.

Las macros de comandos no pueden tener valores de argumento, pero se pueden utilizar variables personalizadas para pasar valores de la solicitud a la macro.

Las macros pueden anidarse con la siguiente restricción: sólo se puede invocar una macro si ya está definida en el momento de analizar la definición de la macro, ya sea apareciendo anteriormente en el mismo archivo de definición de macro o colocando la definición de dicha macro incrustada en el archivo de definición de macro predeterminado.

Ejemplo

Las macros pueden resultar útiles si se van a aplicar los mismos atributos a imágenes diferentes.

http://server/cat/1345?wid=240&fmt=jpeg&qlt=85&op_usm=5,2&bgc=200,200,200&align=-1,-1 http://server/cat/1435?wid=240&fmt=jpeg&qlt=85&op_usm=5,2&bgc=200,200,200&align=-1,-1 http://server/cat/8243?wid=480&fmt=jpeg&qlt=85&op_usm=5,2&bgc=200,200,200&align=-1,-1

Podemos definir una macro para los atributos comunes:

view wid=240&fmt=jpeg&qlt=85&op_usm=5,2&bgc=200,200,200&align=-1,-1

La macro se usaría de la siguiente manera:

http://server/cat/1345?$view$ http://server/cat/1435?$view$ http://server/cat/8243?$view$&wid=480

Desde wid= es diferente para la tercera solicitud, simplemente anulamos el valor después se invoca la macro (especificando wid=antes $view$ no tendría ningún efecto).

Véase también

catalog::MacroFile , catalog::Modificador, Referencia de definición de macro

En esta página