Macros de comandos

Última actualización: 2023-09-01
  • Creado para:
  • Developer
    User

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 "?" y 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 anulan los mismos comandos de la solicitud si se producen antes de la invocación de la macro en la solicitud. Este flujo de procesamiento es diferente al siguiente 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 estar anidadas. Sin embargo, una macro sólo se puede invocar si ya está definida en el momento de analizar la definición de la macro. Este flujo de trabajo se realiza 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

Puede 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

Porque wid= es diferente para la tercera solicitud, simplemente puede anular el valor después se invoca la macro (especificando wid=antes $view$ no tiene ningún efecto).

Véase también

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

En esta página