1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
|
---
title: Macros
slug: MDN/Structures/Macros
tags:
- Estructuras
- Guide
- Guía
- Kuma
- KumaScript
- MDN Meta
- Structures
- TopicStub
translation_of: MDN/Structures/Macros
---
<div>{{MDNSidebar}}</div>
<p><span class="seoSummary">La plataforma {{web.link("/es/docs/Project:MDN/Kuma#Herramientas_y_tareas", "Kuma")}} en la que se ejecuta MDN proporciona un potente sistema de macros, {{web.link("/es/docs/MDN/Contribute/Tools/KumaScript", "KumaScript")}}, estas te permiten hacer una amplia variedad de cosas de forma automática. Este artículo proporciona información sobre cómo invocar macros de MDN dentro de los artículos.</span></p>
<p>La {{web.link("/es/docs/MDN/Contribute/Tools/KumaScript", "guía de KumaScript")}} profundiza en cómo usar macros en MDN, por lo que esta sección es más una breve descripción general.</p>
<h2 id="Cómo_se_implementan_las_macros">Cómo se implementan las macros</h2>
<p>Las macros en MDN se implementan usando código {{web.link("/es/docs/Web/JavaScript", "JavaScript")}} ejecutado por el servidor, interpretado usando <a href="https://nodejs.org/es/" title="https://nodejs.org/es/">Node.js</a>. Además de eso, tenemos una serie de bibliotecas que hemos implementado que brindan servicios y funciones orientados a wiki para permitir que las macros interactúen con la plataforma wiki y su contenido. Si estás interesado en obtener más información, consulta {{web.link("/es/docs/MDN/Contribute/Tools/KumaScript", "Guía de KumaScript")}}.</p>
<h2 id="Usar_una_macro_en_el_contenido">Usar una macro en el contenido</h2>
<p>Para usar realmente una macro, simplemente encierra la llamada a la macro entre un par de llaves dobles, con sus parámetros, si los hay, entre paréntesis; es decir:</p>
<pre class="notranslate">\{{nombremacro(lista-de-parametros)}}</pre>
<p>Algunas notas sobre las llamadas de macro:</p>
<ul>
<li>Los nombres de macro distinguen entre mayúsculas y minúsculas, pero se intentas corregir los errores comunes de uso de mayúsculas; puedes usar todo en minúsculas incluso si el nombre de la macro usa mayúsculas dentro de él, y puedes poner en mayúscula una macro cuyo nombre normalmente comienza con una letra minúscula.</li>
<li>Los parámetros están separados por comas.</li>
<li>Si no hay parámetros, puedes omitir los paréntesis por completo; <code>\{{nombremacro()}}</code> y <code>\{{nombremacro}}</code> son idénticos.</li>
<li>Los parámetros numéricos pueden estar entre comillas o no. Depende de ti (sin embargo, si tienes un número de versión con varios decimales, debe estar entre comillas).</li>
<li>Si recibes errores, revisa tu código detenidamente. Si aún no puedes averiguar qué está pasando, consulta {{web.link("/es/docs/MDN/Kuma/Troubleshooting_KumaScript_errors", "Solución de errores de KumaScript")}} para obtener ayuda.</li>
</ul>
<p>Las macros están almacenadas en caché; para cualquier conjunto de valores de entrada (tanto parámetros como valores del entorno, tal como la URL para la que se ejecutó la macro), los resultados se almacenan y reutilizan. Esto significa que la macro solo se ejecuta realmente cuando cambian las entradas.</p>
<div class="note">
<p><strong>Nota</strong>: Puedes forzar la reevaluación de todas las macros de una página si fuerzas la actualización de la página en tu navegador (es decir, una recarga).</p>
</div>
<p>Las macros pueden ser tan simples como insertar un bloque de texto más grande o intercambiar contenido de otra parte de MDN, o tan complejas como crear un índice completo de contenido buscando en partes del sitio, estilizando el resultado y agregando enlaces.</p>
<p>Puedes leer sobre las macros más utilizadas en {{web.link("/es/docs/MDN/Contribute/Structures/Macros/Commonly-used_macros", "Página de macros usadas comúnmente")}}; también, hay una {{web.link("/es/docs/templates", "lista completa de todas las macros")}}. La mayoría de las macros tienen documentación incorporada, como comentarios en la parte superior.</p>
<p>{{EditorGuideQuickLinks}}</p>
|