Usando Squire, un editor ligero de texto enriquecido HTML5

Lo que vas a crear

Lo que es escudero?

Squire es un editor de texto enriquecido HTML5 extremadamente liviano que se adapta mejor a los formularios de entrada enriquecidos de sus aplicaciones y la creación simple de documentos. Proporciona compatibilidad con varios navegadores, pero evita deliberadamente la complejidad de admitir navegadores más antiguos. Funciona mejor comenzando con Opera 10, Firefox 3.5, Safari 4, Chrome 9 e IE8.

Squire no está diseñado para crear y editar páginas web WYSIWYG. Sin embargo, para muchos usos de entrada de texto enriquecido y aplicaciones web, Squire puede ser justo lo que necesita. Proporciona el poder sin la hinchazón. También tiene licencia MIT para reutilización flexible..

En este tutorial, le mostraré cómo descargar Squire y crear formularios de entrada de muestra con él. Si desea ver a Squire en acción, visite la demostración..

¿De dónde vino Squire??

El equipo de FastMail creó Squire para simplificar sus requisitos de editor de correo web. FastMail es una excelente alternativa de correo electrónico basada en la nube para Gmail: soy un usuario diario de FastMail. Debido a que tiene su sede en Australia y opera bajo leyes diferentes a las de los EE. UU., Existen protecciones de privacidad ligeramente mejoradas para los usuarios de FastMail. Puede leer más sobre esto aquí: FastMail dice que está libre de vigilancia de la NSA.

Como el equipo de FastMail escribió en su blog, anteriormente usaban CKeditor:

Si bien no es una mala elección, como la mayoría de los otros editores, fue diseñado para crear sitios web, no para escribir correos electrónicos. Como tal, simplemente insertando una imagen por defecto se presentó un cuadro de diálogo con tres pestañas y más opciones de las que podría creer ... También vino con su propio kit de herramientas de interfaz de usuario y marco, que habríamos tenido que personalizar mucho para encajar con el resto de la nueva interfaz de usuario que estábamos construyendo; un dolor para mantener.
Con nuestro enfoque en la velocidad y el rendimiento, también nos preocupaba el tamaño del código. La versión de CKEditor que usamos para nuestra IU anterior (clásica), que solo incluye los complementos que necesitamos, es una descarga de 159 KB (cuando gzipped; descomprimido es de 441 KB). Eso es solo el código, excluyendo estilos e imágenes..

Decidieron comenzar desde cero y construir Squire. Con solo 11.5 KB de JavaScript después de minification y gzip (34.7 KB sin comprimir) y sin dependencias, Squire es extremadamente ligero. 

Los resultados son impresionantes. El peso del código combinado requerido para cargar toda la pantalla de composición, la biblioteca base, el código del modelo de correo y contactos y todo el código de la interfaz de usuario para representar la pantalla completa ahora es de solo 149.4 KB (459.7 KB sin comprimir), excepto el CKEditor.

Squire no tiene dependencias. No hay un contenedor XHR, una biblioteca de widgets o superposiciones de lightbox. No hay una interfaz de usuario para una barra de herramientas, lo que elimina la acumulación de tener cargados dos kits de herramientas de interfaz de usuario. Es solo un simple

Pero en carga, su JQuery. $ (documento) .ready función reemplaza la estática #foo textarea con su SquireUI.

  

La configuración de la barra de herramientas se implementa con una configuración bastante compleja de JQuery, AJAX, HTML5 y CSS. Está cargando esta página HTML para mostrar la mayoría de la barra de herramientas: http://neilj.github.io/Squire/build/Squire-UI.html.

$ (div) .load (options.buildPath + 'Squire-UI.html', function () this.linkDrop = new Drop (target: $ ('# makeLink'). first () [0], content: $ ('# drop-link'). html (), posición: 'bottom center', openOn: 'click');

Aquí hay un subconjunto del código fuente de Squire-UI.html para que pueda ver lo que se está cargando:

...

Podría haber sido bueno si hubieran proporcionado una barra de herramientas Bootstrap simplificada en el código de distribución como un complemento, pero ciertamente puede aprender de lo que hicieron en su propia demostración anterior..

Espero que encuentre a Squire útil para sus propias aplicaciones. Por favor, siéntase libre de publicar correcciones, preguntas o comentarios a continuación. También puedes contactarme en Twitter @reifman o enviarme un correo electrónico directamente.

enlaces relacionados