aboutsummaryrefslogtreecommitdiff
path: root/files/es/mdn/structures/macros/index.html
blob: 807059cfd97e1f22dbbd9442078573033e6a2ff6 (plain)
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>