Ayuda:Transclusión de sección etiquetada

Página de ayuda de Wikipedia

La transclusión de sección etiquetada (LST) es una función del analizador que ofrece dos formas de designar una "sección" de una página para su transclusión . El primer método identifica la sección mediante el nombre de la página y un encabezado (el título de la sección tal como aparece en la página de origen). El segundo método permite la selección de una "sección" arbitraria para su transclusión, pero este enfoque requiere agregar un marcado específico para etiquetar la sección deseada de antemano.

Tres funciones pueden transcluir una sección de un nombre de página determinado.

  • {{#section:page name|label}}(una sección etiquetada)
  • {{#section-x:page name|label}}(todos excepto la sección etiquetada)
  • {{#section-h:page name|heading}}(una sección normal)

Tenga en cuenta que también existen nombres equivalentes para estas funciones, siendo los nombres base #lst, #lstx, y #lsth.

Para preparar una "sección" arbitraria para una transclusión de sección etiquetada, márquela con los atributos de inicio y fin dentro de <section />las etiquetas que contengan su etiqueta :

<section begin=label />y<section end=label />

En comparación con la transclusión LST, el marcado de transclusión parcial no se puede etiquetar y, por lo tanto, la página de origen no puede tener un conjunto de sus secciones transcluidas a una página y, al mismo tiempo, tener un conjunto diferente para otra página. Una página marcada solo con etiquetas de transclusión parcial siempre transcluirá lo mismo. Pero la LST y la transclusión parcial pueden funcionar juntas en la misma página.

Estas funciones LST toman parámetros adicionales, como se explica a continuación. § Las páginas de ejemplo proporcionan enlaces de búsqueda para los artículos que actualmente emplean LST para que pueda ver cómo lo utilizan.

Resumen de funciones

Esta sección resume las tres funciones del analizador en la extensión de transclusión de sección etiquetada.


Sintaxis: {{ función : nombre_página_completa | sección | rango / cambio }}

ParámetroAnalizando la entidad que identifica
1Nombre de página completoPágina de origen . El único argumento obligatorio. Introdúzcalo o utilice variables como {{FULLPAGENAME}} (pero no utilice enlaces a subpáginas../ ).
2SecciónEtiqueta ("sección etiquetada") o encabezado (título de la sección) que se va a incluir. Parámetro opcional. Si se trata de una etiqueta, debe haberse añadido y guardado primero.
3RangoSección final de una serie contigua de encabezados o etiquetas a incluir. Opcional.
  • #sectiontranscluye la sección final.
  • #section-hno transcluye la sección final.
  • #section-xno tiene rango
3CambiarTexto wiki de reemplazo. Solo #lstxse puede reescribir una sección etiquetada durante la transclusión. Opcional.

No es posible pasar parámetros de plantilla a la sección o página transcluida, pero el código de la página puede usar palabras mágicas para {{PAGENAME}}probar dónde está y comportarse de manera diferente.


Comportamientos
Función del analizadorAliasDescripción
#lst#sectionTranscluir una etiqueta que se encuentre dentro de <section />las etiquetas. Respeta las etiquetas de transclusión. El valor predeterminado es la página completa. Si no se encuentra la etiqueta, no se transcluye nada.
#lstx#section-xTranscluir página completa, pero excluir una etiqueta. No se ven los encabezados. Se respetan las etiquetas de transclusión. El valor predeterminado es página completa. Si no se encuentra la etiqueta, se transcluye página completa.
#lsth#section-hTranscluir un encabezado (título de sección). No tiene en cuenta las etiquetas. No respeta las etiquetas de transclusión. El valor predeterminado es la sección principal. Si no se encuentra el encabezado, no se transcluye nada.
† hace que su destino parezca igual que su origen. En la página de origen  #section-h
  • <noinclude> muestra su contenido
  • <onlyinclude> muestra su contenido
  • < includeonly > no muestra su contenido
Por lo tanto, #section-hno se debe mostrar <includeonly>el contenido en la página de destino .


Comportamiento de las etiquetas LST <section />:

  • La etiqueta de fin no es necesaria. Cuando solo se encuentra una etiqueta de inicio , se coloca al final de la página.
  • La misma etiqueta puede marcar varias secciones de inicio y fin . Un rango es entonces todo desde el primer inicio hasta el último fin .
  • Diferentes etiquetas pueden superponerse y también pueden anidarse.
  • No se puede colocar mediante una transclusión, sino que debe estar presente en la página tal como está guardada en la base de datos. Consulte el apartado Sin plantilla a continuación.

Opciones de transclusión de LST:

  • Se puede previsualizar .
  • La página de destino puede ser la propia página de origen .
  • Puede sustituirse. Véase el apartado Sustitución más abajo.

Se aplica la sintaxis estándar:

  • Se permiten espacios en blanco generosos:{{  #lst:  namespace:  pagename  |  section  }}
  • Después del nombre de la función del analizador hay dos puntos sin espacios.
  • En las etiquetas no hay espacios alrededor del signo = de la etiqueta (atributo):begin=label
  • En las etiquetas, el espacio es opcional antes de la barra /:<section end=label />

Errores de uso comunes.

Margen

No es necesario marcar la página de origen si solo se utilizan títulos de sección para especificar la transclusión. Este es el caso de #section-h.

Para etiquetar una sección para la transclusión LST utilice el siguiente marcado.

Marcado de secciones

Marque los límites de su sección en la página de origen utilizando dos etiquetas singulares <section />; por ejemplo, para etiquetar una sección como "capítulo1":

<section begin=chapter1 />Este es un capitulo<section end=chapter1 />

Tenga en cuenta que no se trata de una etiqueta de apertura y cierre HTML normal. En HTML <section>...</section>no es válido. Esta etiqueta de analizador, <section />, es incompatible con un elemento HTML porque el marcado de MediaWiki emplea una etiqueta de analizador única, agregada solo para la extensión de transclusión de sección etiquetada.

Sección de transclusión

Utilice la función de análisis #sectionpara incluir la sección. Por ejemplo, para incluir la sección etiquetada como capítulo1 de una página llamada artículoX :

{{#section:ArtículoX|capítulo1}}

Transcluir la página pero excluir la sección

Para transcluir una página, pero excluir una sección específica, utilice la #section-xfunción de analizador:

{{#section-x: nombre_pagina_completa | etiqueta }}

o

{{#section-x: nombre_de_pagina_completa | encabezado }}

Opcionalmente, puede agregar texto de reemplazo a la sección excluida.

{{#section-x: nombre_de_pagina_completa | etiqueta | texto de reemplazo }}

Ejemplo:

{{ #section-x : articleX | chapter1 | Ver capítulo 1 en [[ articleX ]] . }}

El texto de reemplazo aparecerá en el área donde se omite (excluye) la sección.

Cómo lidiar con los espacios en blanco perdidos

De forma predeterminada, #sectionse incluirán todos los espacios en blanco de la sección, lo que puede generar problemas si intentas incluir la sección en un artículo diferente. Para solucionar esto, aprovecha el hecho de que la función del analizador {{#if}} recorta sus entradas, por ejemplo

{{#if:1|{{#section:ArticleX|capítulo 1}}}}

Esto eliminará los espacios en blanco iniciales y finales, y el artículo se reproducirá como se esperaba. Debido a que está anidando plantillas, duplicará el tamaño de inclusión posterior a la expansión del extracto, lo que puede presentar un problema en páginas más largas, por lo que es posible que desee editar la página de origen para envolver el contenido que desea incluir, sin el espacio en blanco, en <onlyinclude>...</onlyinclude>las etiquetas. También puede usar la plantilla {{ trim }} en lugar de {{#if:1}}, pero debido a que es solo un contenedor para la técnica {{#if:1}} anterior, da como resultado una triplicación del tamaño de inclusión posterior a la expansión.

Otras funciones

Secciones no contiguas

Es posible tener varias secciones con el mismo nombre; en este caso, se incluirán o excluirán todas las secciones con ese nombre. Esto resulta especialmente útil para marcar varias discusiones.

Rangos de secciones

Estas funciones pueden transcluir la página entera, por lo que tienen dos argumentos opcionales para especificar comportamientos: 1) una sección etiquetada con un nombre o un título de encabezado, 2) un rango de dichas etiquetas de sección o títulos de sección nombrados, y 3) contenido de reemplazo para una sección nombrada.

  • {{#section:articleX|chapter1|chapter3}}incluye todo desde el comienzo del capítulo 1 hasta el final del capítulo 3. Esto permite utilizar pares de marcadores vacíos para marcar un final de la sección, posiblemente en una plantilla.
  • {{#section-h:articleX|chapter1|chapter3}}incluye contenido del capítulo 1, encabezado y contenido del capítulo 2.
  • {{#section-x:articleX|chapter1|chapter3}}reemplaza el encabezado y el contenido del capítulo 1 con la palabra "capítulo 3".

Sustitución

En lugar de transcluir cada vez, para "transcluir" una vez (copiar), utilice la sustitución :

{{subst:#section...}}

Por ejemplo, para archivar discusiones antiguas en tu página de discusión, puedes copiarlas a una página de archivo y luego eliminarlas, todo usando LST:

  1. Colóquelo <section begin=archive />al principio de la sección que desea archivar y <section end=archive />al final. (Usamos "archivar" como etiqueta, pero cualquier etiqueta servirá). Esta sección puede estar en cualquier lugar y puede tener varias secciones.
  2. Guarde esos cambios en su página de discusión.
  3. Crea una nueva página de archivo. Pon .{{subst:#section:User talk:pagename|archive}}
  4. Guarde esa página de archivo. La conversación anterior se copia allí. La transclusión desaparece porque se ha sustituido.
  5. Edite nuevamente su página de discusión. Reemplace todo el wikitexto en toda la página con . La página de la base de datos será transcluida, menos exactamente el mismo wikitexto en el archivo guardado y menos las etiquetas de sección (que habíamos etiquetado como "archivo").{{subst:#section-x:User talk:username|archive}}

Al utilizar la sustitución para incluir contenido en Wikipedia, utilice el resumen de edición para aplicar los derechos y obligaciones de los reutilizadores . Esto se aplica a cualquier contenido sustancial, no solo al contenido de los artículos.

Sin plantilla

Actualmente, ninguna plantilla puede facilitar este marcado LST porque es necesario usar #tag para "preSaveTransform" palabras mágicas dentro de una etiqueta de cualquier tipo. Para ver el intento correcto, consulte la sección {{ que no funciona }} .

La única forma de evaluar los argumentos de plantilla dentro de una etiqueta (debido al orden de análisis) es #tag . LST necesitaría una evaluación (de plantilla) de la etiqueta a medida que se genera la etiqueta de sección:

{{ #tag : sección | {{{ 1 }}} } }   

Pero #tag solo produce etiquetas similares a XML (equilibradas, abiertas y cerradas, de inicio y fin, pares de ellas), mientras que LST usará una etiqueta singular, explícitamente autocerrada. Por lo tanto, las etiquetas LST no pueden ser generadas por ninguna plantilla. Compare la salida real (solo en vigencia):

{{#tag:section| contenido |begin= etiqueta }} → < sección begin= etiqueta > contenido  </ sección> ☒norte

con la salida solicitada:

<section begin= etiqueta  />  contenido <section end= etiqueta  />

Páginas de ejemplo

Estas son búsquedas almacenadas en un enlace:

  • insource:"sección h" insource:/\#"sección-h"/ (Artículos)
  • insource:section insource:/\{\{\#section/ (Artículos)
  • all: insource:"sección x" insource:/\#"sección-x"/ (wiki completo)
  • insource:lst insource:/\#lst/ (Artículos)
  • insource:lsth insource:/\{\{\#lsth/ (Artículos)
  • todo: insource:lstx insource:/\#lstx/ (wiki completo)

Véase también

Plantillas

  • {{ Extracto }}
  • {{ Sección transclude }}
  • {{ R }} - una plantilla de referencia/cita que aprovecha opcionalmente la inclusión de secciones etiquetadas para marcar secciones de contexto
Obtenido de "https://es.wikipedia.org/w/index.php?title=Ayuda:Transclusión_de_secciones_etiquetadas&oldid=1244331948"