XUL ( / z ü l / Zool ), lo que significa Idioma de la Interfaz de Usuario XML , es un lenguaje de marcas interfaz de usuario desarrollada por Mozilla . XUL es un dialecto XML para escribir interfaces gráficas de usuario , lo que permite a los desarrolladores escribir elementos de la interfaz de usuario de manera similar a las páginas web .
Paradigma | Declarativo ( lenguaje de marcado ) |
---|---|
Desarrollador | Fundación Mozilla |
Lenguaje de implementación | C ++ |
Plataforma | Geco |
SO | Multiplataforma |
Licencia | MPL |
Extensiones de nombre de archivo | .xul Tipo MIME : application/vnd.mozilla.xul+xml |
Sitio web | Documentación oficial |
Implementaciones importantes | |
Mozilla | |
Influenciado por | |
HTML , XML |
Las aplicaciones XUL se basan en el código base de Mozilla (o en una bifurcación ); el ejemplo más destacado es el navegador web Firefox . Sin embargo, en los últimos años, Mozilla ha estado reduciendo el uso de XUL en Firefox. [1] [2] El ejemplo más notable es la eliminación de la personalización de complementos . Firefox originalmente permitió que los complementos alteren ampliamente su interfaz de usuario a través del código XUL personalizado, pero esta capacidad se eliminó en 2017 y se reemplazó con la API WebExtensions menos permisiva . [3] [4] Varias bifurcaciones de Firefox, como Pale Moon , [5] Basilisk , [6] y Waterfox , [7] conservan el soporte para complementos XUL.
Historia
XUL fue diseñado en Netscape en 1997 como parte del esfuerzo de desarrollo que eventualmente se convirtió en el código base de Mozilla . [8] Nunca ganó mucha tracción fuera de Mozilla o sus bifurcaciones . A principios de la década de 2000 hubo cierto interés en el uso de XUL por parte de otras partes, incluido Amazon , [9] pero eso se agotó con la llegada de HTML5 . [1] [2]
Con el lanzamiento de Firefox 57 en 2017, Mozilla eliminó la compatibilidad con complementos heredados , incluido el uso de código XUL personalizado. [3] [4] Este fue un paso clave en el objetivo a largo plazo de la organización de reducir el uso de XUL en Firefox y reemplazarlo con alternativas HTML5. [1] [2] Sin embargo, la bifurcación UXP del código base mantiene las capacidades tradicionales de XUL. [10] [11]
Uso
XUL solo se puede usar con el código base de Mozilla (o una bifurcación de él) porque el motor Gecko hace el renderizado XUL. [12]
Los programadores de aplicaciones deben definir una interfaz XUL como tres conjuntos discretos de componentes:
- Contenido: los documentos XUL, cuyos elementos definen el diseño de la interfaz de usuario.
- Máscara: los archivos CSS y de imagen, que definen la apariencia de una aplicación.
- Locale: los archivos que contienen cadenas visibles para el usuario para una fácil localización del software
XUL define una amplia gama de elementos, que pertenecen aproximadamente a los siguientes tipos:
- Elementos de nivel superior: ventana , página, diálogo , asistente , etc.
- Widgets : etiqueta, botón , cuadro de texto , cuadro de lista, cuadro combinado , botón de radio , casilla de verificación , árbol , menú , barra de herramientas , cuadro de grupo, cuadro de pestaña , selector de color, espaciador, divisor, etc.
- Modelo de caja: caja, rejilla, pila, plataforma, etc.
- Eventos y guiones: guión, comando, clave, locutor, observador, etc.
- Fuente de datos: plantilla, regla, etc.
- Otros: superposición, iframe, navegador, editor, etc.
El comportamiento predeterminado de los widgets XUL se puede modificar con enlaces XBL .
Ejemplo
Este ejemplo muestra tres botones apilados uno encima del otro en un contenedor de caja vertical: [13]
xml version = "1.0"?> xml-stylesheet href = "chrome: // global / skin /" type = "text / css"?> id = "vbox example" title = "Ejemplo 3 ...." xmlns = "http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" > id = "yes1" label = "Yes" /> id = "no1" label = "No" /> id = "maybe1" label = "Quizás" />
Referencia de los cazafantasmas
El villano de la película de 1984 Cazafantasmas era una deidad llamada Zuul que posee el personaje Dana Barrett y declara: "No existe Dana. Solo existe Zuul". [14] Los creadores de XUL, que se pronuncia igual que Zuul, hicieron el eslogan "No hay datos. ¡Solo hay XUL!", Parte del cual se convirtió en el espacio de nombres XML . [15]
Referencias
- ^ a b c "La vida después de XUL" . Mozilla . Consultado el 28 de noviembre de 2018 .
- ^ a b c "Problemas con XUL" . mozilla.github.io . Consultado el 7 de junio de 2019 .
- ^ a b Notas de la versión de Firefox 57
- ^ a b Kev Needham (21 de agosto de 2015). "El futuro del desarrollo de complementos de Firefox" . blog.mozilla.org . Consultado el 2 de abril de 2018 .
- ^ "Hoja de ruta futura de Pale Moon" . Luna pálida . Consultado el 2 de abril de 2018 .
- ^ "El equipo de Pale Moon lanza la primera versión del navegador Basilisk" . ghacks.net . 2017-11-17 . Consultado el 2 de abril de 2018 .
- ^ "Waterfox, su legado y mirando al futuro" . Blog de Waterfox . 2018-04-28 . Consultado el 20 de junio de 2018 .
- ^ Jorge O. Castro (15 de junio de 2004). "Ars Technica se sienta con Scott Collins de Mozilla.org" . Ars Technica . Consultado el 28 de noviembre de 2018 .
- ^ "Desarrollo de aplicaciones remotas con Mozilla, parte 2: un estudio de caso del navegador Mozilla Amazon (MAB)" . Oreillynet . 2003-02-05.
- ^ "UXP vs goanna" .
- ^ "Sólo existe XUL" . Consultado el 18 de septiembre de 2018 .
- ^ "Preguntas frecuentes de Gecko | MDN" . developer.mozilla.org . Consultado el 5 de enero de 2021 .
- ^ "El modelo de caja - Mozilla | MDN" . 2017-12-09. Archivado desde el original el 9 de diciembre de 2017 . Consultado el 5 de enero de 2021 .
- ^ Clip de los Cazafantasmas
- ^ Espacio de nombres XML de Mozilla