diff options
Diffstat (limited to 'files/es/como_crear_un_microresumen/index.html')
-rw-r--r-- | files/es/como_crear_un_microresumen/index.html | 175 |
1 files changed, 0 insertions, 175 deletions
diff --git a/files/es/como_crear_un_microresumen/index.html b/files/es/como_crear_un_microresumen/index.html deleted file mode 100644 index 0ff12e5cdc..0000000000 --- a/files/es/como_crear_un_microresumen/index.html +++ /dev/null @@ -1,175 +0,0 @@ ---- -title: Como crear un Microresumen -slug: Como_crear_un_Microresumen -tags: - - Microresúmenes -translation_of: Archive/Mozilla/Creating_a_microsummary ---- -<p>Un <em>generador de microresúmenes</em> es un conjunto de instrucciones orientadas a crear un microresumen del contenido de una página. Una página web puede referenciar los generadores correspondientes mediante el uso de etiquetas <code><link rel="microsummary"></code> en la sección <code><head></code>. O también se pueden descargar e instalar independientemente, por iniciativa del usuario, si cada generador incluye una lista de páginas a las que sea aplicable.</p> -<p>En este tutorial vamos a crear un generador de microresumen para la <a class="external" href="http://www.spreadfirefox.com/">página inicio de Spread Firefox</a> que se encargue de mostrar el número actual de descargas, junto al texto "<cite>descargas de Fx</cite>". Por ejemplo: <cite>174475447 descargas de Fx</cite>.</p> -<p>Para ello, ante todo, construiremos la hoja XSLT de transformación que convierte la página web en un microresumen; luego veremos cómo especificar que el generador sea aplicable a esa página, y por último aprenderemos cómo publicar el generador para su descarga e instalación.</p> -<p>Durante la construcción de la hoja XSLT, lo que se añade en cada paso se muestra en <em>negrita</em>, para facilitar el seguimiento del proceso.</p> -<h2 id="Comienzo" name="Comienzo">Comienzo</h2> -<p>Un generador se expresa como un documento XML cuyo nodo raíz es <code><generator></code> (en el namespace <cite><a class="external" href="http://www.mozilla.org/microsummaries/0.1" rel="freelink">http://www.mozilla.org/microsummaries/0.1</a></cite>). Para construir un generador, hay que empezar por crear un fichero de texto vacío y añadir la declaración XML y un nodo <code><generator></code> vacío:</p> -<pre class="eval"><strong><?xml version="1.0" encoding="ISO-8859-1"?></strong> -<strong><generator xmlns="<span class="nowiki">http://www.mozilla.org/microsummaries/0.1</span>"></strong> -<strong></generator></strong> -</pre> -<h2 id="Poner_nombres" name="Poner_nombres">Poner nombres</h2> -<p>Un generador debe tener atributos <code>name</code> con las descripciones arbitrarias de los microresúmenes creados. Un nombre debe ser lo bastante descriptivo para dar al usuario final una idea fiel de la información incluida en el microresumen.</p> -<p>Dado que nuestro generador va a crear microresúmenes que muestran el número de descargas de Firefox, le llamaremos "Conteo de descargas de Firefox":</p> -<pre class="eval"><?xml version="1.0" encoding="ISO-8859-1"?> -<generator xmlns="<span class="nowiki">http://www.mozilla.org/microsummaries/0.1</span>" - <strong>name="Conteo de descargas de Firefox"</strong>> -</generator> -</pre> -<h2 id="Incluir_una_hoja_XSLT_de_transformaci.C3.B3n" name="Incluir_una_hoja_XSLT_de_transformaci.C3.B3n">Incluir una hoja XSLT de transformación</h2> -<p>Cada generador debe incluir una hoja XSLT de transformación (también llamadas <em>hojas de estilo XSLT</em>) que transforme el contenido de la página en un microresumen. XSLT es un potente lenguaje para transformar documentos: Sirve para producir diversas presentaciones de la misma información.</p> -<p>Para incluir la hoja XSLT en el generador hay que usar un elemento <code><template></code>:</p> -<pre class="eval"><?xml version="1.0" encoding="ISO-8859-1"?> -<generator xmlns="<span class="nowiki">http://www.mozilla.org/microsummaries/0.1</span>" - name="Conteo de descargas de Firefox"> - <strong><template></strong> - <strong><transform xmlns="<span class="nowiki">http://www.w3.org/1999/XSL/Transform</span>" version="1.0"></strong> - <strong></transform></strong> - <strong></template></strong> -</generator> -</pre> -<p>Obsérvese que aunque el generador puede incluir código XSLT arbitrario (inclusive generación de <em>texto enriquecido</em>), por el momento Firefox sólo muestra el <em>texto plano</em> de la salida XSLT.</p> -<h2 id="Especificar_el_formato_de_salida" name="Especificar_el_formato_de_salida">Especificar el formato de salida</h2> -<p>Dado que la hoja XSLT va a generar un microresumen en formato <em>texto plano</em>, hay que indicarlo usando la etiqueta XSLT <code><output></code>:</p> -<pre class="eval"><?xml version="1.0" encoding="ISO-8859-1"?> -<generator xmlns="<span class="nowiki">http://www.mozilla.org/microsummaries/0.1</span>" - name="Conteo de descargas de Firefox"> - <template> - <transform xmlns="<span class="nowiki">http://www.w3.org/1999/XSL/Transform</span>" version="1.0"> - <strong><output method="text"/></strong> - </transform> - </template> -</generator> -</pre> -<h2 id="Usar_un_s.C3.B3lo_nodo_.3Ctemplate.3E_en_la_hoja_XSLT" name="Usar_un_s.C3.B3lo_nodo_.3Ctemplate.3E_en_la_hoja_XSLT">Usar un sólo nodo <code><template></code> en la hoja XSLT</h2> -<p>El procesador XSLT (incluido en el navegador) transforma los documentos buscando en la hoja XSLT el nodo <code><template></code> que mejor se adapte a cada nodo del documento procesado. Cuando lo encuentra, realiza en el nodo procesado las transformaciones incluidas en el <code><template></code> elegido.</p> -<p>Este mecanismo es bastante potente, pues permite recorrer el árbol entero del documento procesado y generar salida (recursivamente) basándose en la estructura del documento. sin embargo, para la finalidad de generar un microresumen para la página <a class="external" href="http://www.spreadfirefox.com">Spread Firefox</a>, se necesita <em>tan sólo un</em> nodo <code><template></code> que referencie el nodo raíz del documento (<code>/</code>) y lo procese de una sóla vez:</p> -<pre class="eval"><?xml version="1.0" encoding="ISO-8859-1"?> -<generator xmlns="<span class="nowiki">http://www.mozilla.org/microsummaries/0.1</span>" - name="Conteo de descargas de Firefox"> - <template> - <transform xmlns="<span class="nowiki">http://www.w3.org/1999/XSL/Transform</span>" version="1.0"> - <output method="text"/> - <strong><template match="/"></strong> - <strong></template></strong> - </transform> - </template> -</generator> -</pre> -<h2 id="Incluir_el_conteo_de_descargas" name="Incluir_el_conteo_de_descargas">Incluir el conteo de descargas</h2> -<p>Para incluir el conteo de descargas en la salida de la hoja XSLT, hay que usar la etiqueta XSLT <code><value-of></code>, especificando en el atributo <code>select</code> una ruta XPATH que apunte al nodo que contiene el conteo.</p> -<p>XPATH es un lenguage de identificación de nodos en documentos XML/HTML. También contiene algunas funciones básicas para manipular los nodos y sus contenidos. La forma más sencilla de formular una expresión XPATH que apunte al nodo en cuestión es usando la <a class="link-https" href="https://addons.mozilla.org/firefox/1095/">Extensión de chequeo de XPATH</a>, de esta manera:</p> -<ol> - <li>Instalar la extensión de chequeo de XPATH (si no está ya instalada), reiniciando después Firefox para completar la instalación.</li> - <li>Visitar la página <a class="external" href="http://www.spreadfirefox.com/">Spread Firefox</a>.</li> - <li>Buscar el conteo de descargas (a fecha actual está casi abajo del todo, a la derecha, bajo el título "Firefox downloads").</li> - <li>Pulsar con el botón derecho sobre el número.</li> - <li>Y seleccionar <cite>View XPath</cite> en el menú contextual.</li> -</ol> -<p>El chequeador de XPATH abre entonces una nueva ventana con un campo <cite>XPath</cite> que contiene la ruta XPATH que apunta al nodo seleccionado, y que a la fecha de hoy es: <cite>id('download-count')</cite>.</p> -<p>Bien, pues basta con añadir a nuestro <code><template></code> una etiqueta <code><value-of></code> con un atributo <code>select</code> con la ruta XPATH encontrada:</p> -<pre class="eval"><?xml version="1.0" encoding="ISO-8859-1"?> -<generator xmlns="<span class="nowiki">http://www.mozilla.org/microsummaries/0.1</span>" - name="Conteo de descargas de Firefox"> - <template> - <transform xmlns="<span class="nowiki">http://www.w3.org/1999/XSL/Transform</span>" version="1.0"> - <output method="text"/> - <template match="/"> - <strong><value-of select="id('download-count')"/></strong> - </template> - </transform> - </template> -</generator> -</pre> -<h2 id="Incluir_texto" name="Incluir_texto">Incluir texto</h2> -<p>Para incluir en el microresumen el texto "<cite>Descargas de Fx</cite>", hay que usar una etiqueta XSLT <code><text></code> que contenga el texto deseado.</p> -<p>Añadir al <code><template></code> un nodo <code><text></code> que contenga el texto "<cite>Descargas de Fx</cite>":</p> -<pre class="eval"><?xml version="1.0" encoding="ISO-8859-1"?> -<generator xmlns="<span class="nowiki">http://www.mozilla.org/microsummaries/0.1</span>" - name="Conteo de descargas de Firefox"> - <template> - <transform xmlns="<span class="nowiki">http://www.w3.org/1999/XSL/Transform</span>" version="1.0"> - <output method="text"/> - <template match="/"> - <value-of select="id('download-count')"/> - <strong><text>Descargas de Fx</text></strong> - </template> - </transform> - </template> -</generator> -</pre> -<p>Obsérvese que el espacio blanco (espacios, tabuladores, saltos de línea) entre etiquetas XSLT <em>no se transmite</em> a la salida de la transformación XSLT (al contrario que en HTML, en que todo el espacio blanco adyacente se traduce a un sólo espacio), así es que si se desea que aparezca algún espacio en blanco, para que el texto quede separado del conteo, hay que incluirlo dentro de la etiqueta <code><text></code>.</p> -<p>Y con esta pequeña adición, ya hemos terminado de escribir la hoja de transformación XSLT necesaria para convertir la página de inicio de Spread Firefox en un microresumen.</p> -<h2 id="Especificar_la_p.C3.A1gina_de_aplicaci.C3.B3n_del_microresumen" name="Especificar_la_p.C3.A1gina_de_aplicaci.C3.B3n_del_microresumen">Especificar la página de aplicación del microresumen</h2> -<p>Una vez completa la hoja de transformación, hay que especificar <em>a qué página</em> se aplica. Si fuéramos los administradores del sitio <a class="external" href="http://www.spreadfirefox.com">Srpead Firefox</a>, nos bastaría con editar la página inicial e incluir en la sección <code>head</code> una etiqueta <code><link></code> para referenciar a nuestro generador:</p> -<pre class="eval"><head> - ... - <strong><link rel="microsummary" href="ruta/de/nuestro/generador.xml"></strong> -</head> -</pre> -<p>Pero como no somos administradores de ese sitio web, tenemos que especificar la página de aplicación <em>dentro del propio generador</em>, y luego publicarlo para que se pueda descargar e instalar. Para especificar la página de aplicación hay que usar una etiqueta <code><pages></code> dentro del nodo <code><generator></code>:</p> -<pre class="eval"><?xml version="1.0" encoding="ISO-8859-1"?> -<generator xmlns="<span class="nowiki">http://www.mozilla.org/microsummaries/0.1</span>" - name="Conteo de descargas de Firefox"> - <template> - <transform xmlns="<span class="nowiki">http://www.w3.org/1999/XSL/Transform</span>" version="1.0"> - <output method="text"/> - <template match="/"> - <value-of select="id('download-count')"/> - <text> descargas de Fx</text> - </template> - </transform> - </template> - <strong><pages></strong> - <strong></pages></strong> -</generator> -</pre> -<p>La etiqueta <code><pages></code> puede contener tantos nodos <code><include></code> y <code><exclude></code> como páginas a las cuales el generador se puede aplicar o no, respectivamente.</p> -<p>Para permitir que el generador se pueda aplicar a una página, hay que añadir un nodo <code><include></code> cuyo contenido sea una expresión regular que defina las páginas deseadas. Y para impedir que el generador se pueda aplicar a una página, hay que añadir un nodo <code><exclude></code> con una expresión regular que defina las páginas no deseadas.</p> -<p>El comportamiento por defecto de un generador es que <em>no es aplicable</em> a ninguna página, de modo que hay que listar explícitamente las páginas deseadas, y no es necesario listar las páginas no deseadas (a menos que se hayan incluido previamente).</p> -<p>Añadamos, pues, una etiqueta <code><include></code> para referenciar la página de <a class="external" href="http://www.spreadfirefox.com">Spread Firefox</a>:</p> -<pre class="eval"><?xml version="1.0" encoding="ISO-8859-1"?> -<generator xmlns="<span class="nowiki">http://www.mozilla.org/microsummaries/0.1</span>" name="Conteo de descargas de Firefox"> - <template> - <transform xmlns="<span class="nowiki">http://www.w3.org/1999/XSL/Transform</span>" version="1.0"> - <output method="text"/> - <template match="/"> - <value-of select="id('download-count')"/> - <text> descargas de Fx</text> - </template> - </transform> - </template> - <pages> - <strong><include><span class="nowiki">http://(www\.)?spreadfirefox\.com/(index\.php)?</span></include></strong> - </pages> -</generator> -</pre> -<p>Nótese que la dirección incluida ha de estar escrita como <em>expresión regular</em>.</p> -<h2 id="Publicar_el_generador_para_ser_descargado" name="Publicar_el_generador_para_ser_descargado">Publicar el generador para ser descargado</h2> -<p>Ahora que el generador está definido y tiene una dirección de aplicación especificada, lo único que queda por hacer es publicarlo para su descarga: Para ello, hay que subirlo a la web y crear en algún lado un enlace de JavaScript que llame al método de FireFox <cite>window.sidebar.addMicrosummaryGenerator()</cite>, que se encarga de descargar e instalar el generador.</p> -<p>Por ejemplo: Si publicamos el generador en la web en <a class="external" href="http://people.mozilla.com/~myk/microsummaries/tutorial/sfx-generator.xml" rel="freelink">http://people.mozilla.com/~myk/micro...-generator.xml</a>, y queremos que los usuarios lo puedan descargar desde <a class="external" href="http://people.mozilla.com/~myk/microsummaries/tutorial/index.html" rel="freelink">http://people.mozilla.com/~myk/micro...ial/index.html</a>, tendremos que añadir el siguiente código a dicha página <cite>index.html</cite>:</p> -<pre class="eval"><strong><a href="javascript:window.sidebar.addMicrosummaryGenerator('<span class="nowiki">http://people.mozilla.com/~myk/microsummaries/tutorial/sfx-generator.xml</span>')">Instalar el microresumen de Spread Firefox</a></strong> -</pre> -<p>Al pinchar en tal link se producirá un error JavaScript en los navegadores que no soporten microresúmenes, así es que para evitarlo lo mejor es comprobar <em>a priori</em> si el navegador actual soporta microresúmenes, y mostrar un mensaje aclaratorio en caso contrario:</p> -<pre class="eval"><strong><script></strong> -<strong> const warning = "Se siente: Para descargar e instalar generadores de microresúmenes se necesita un navegador ad hoc, como Firefox 2.0.";</strong> -<strong> function addGenerator(url) {</strong> -<strong> if (typeof window.sidebar == "object" &&</strong> -<strong> typeof window.sidebar.addMicrosummaryGenerator == "function")</strong> -<strong> window.sidebar.addMicrosummaryGenerator(url);</strong> -<strong> else</strong> -<strong> alert(warning);</strong> -<strong> }</strong> -<strong></script></strong> -<strong><a href="javascript:window.sidebar.addMicrosummaryGenerator('<span class="nowiki">http://people.mozilla.com/~myk/microsummaries/tutorial/sfx-generator.xml</span>')">Instalar el microresumen de Spread Firefox</a></strong> -</pre> -<h2 id="Conclusi.C3.B3n" name="Conclusi.C3.B3n">Conclusión</h2> -<p>Ya debemos tener un generador de microresúmenes que muestra el nùmero actual de descargas de Firefox. Tras instalarlo, añadir a los Marcadores la página <a class="external" href="http://www.spreadfirefox.com">Spread Firefox</a>, y seleccionar el microresumen del menú <cite>Summary</cite> en el cuadro de diálogo de "Añadir marcador".</p> -<p>Para más información sobre microresúmenes, ver la <a class="external" href="http://wiki.mozilla.org/Microsummaries">página de Microresúmenes</a></p> |