Personalizando (ChatZilla)
¿Puedo usar distintos motivos para distintos canales?
Sí. Se pueden usar los comandos /network-motif
, /channel-motif
y /user-motif
para elegir un motivo para una pestaña o grupo de pestañas. Por ejemplo, se podría usar un motivo de caras en la red moznet, pero un motivo "plain" para la red dalnet. Si se dispone de algún espacio web (no hace falta CGI), se puede publicar un fichero CSS especialmente diseñado para un canal. Esto puede ser tan fácil como coger un fondo de imagen personalizado y un esquema de color, aparte de alojar varias imágenes en un servidor. Los usuarios pueden probar el motivo escribiendo uno de los comandos /*-motif descritos arriba, seguidos de la URL al fichero CSS que está en el sitio web. Los usuarios también pueden arrastrar un enlace a un fichero css en el área de mensajes de ChatZilla, para usar ese fichero como el motivo predeterminado.
¿Cómo cambio el formato de las marcas de tiempo?
El formato de las marcas de tiempo se controla en la opción timestampFormat, que se puede definir globalmente, por red, o incluso individualmente en canales y vistas de consultas (ver jugando con las preferencias). La cadena de formato de muestra literalmente, excepto para las 6 subcadenas siguientes, que se sustituyen como sigue:
- %y - año de 4 dígitos.
- %m - número del mes (1 - 12).
- %d - día del mes.
- %h - hora, en formato de 24 horas.
- %n - minutos.
- %s - segundos.
¿Cómo juego con el resto de las preferencias?
Hay dos formas. La primera y más fácil, es usar los diálogos de preferencias. Seleccionar Editar -> Preferencias
, y se mostrarán las preferencias de ChatZilla debajo del grupo del mismo nombre. Desgraciadamente, hay algunos bugs en el panel de preferencias. Algunas opciones, como las de transformación de texto, no tienen efecto hasta que se reinicie ChatZilla. Si desea más control y desea acceder a opciones "escondidas", o quiere poner preferencias específicas de red, canal o usuario, use el comando /pref
, o una de las variantes. Escribe /pref
para ver una lista de todas las preferencias globales. Se puede proporcionar un nombre de preferencia, o sólo las primeras letras iniciales del nombre de la preferencia, para ver el valor actual de las opciones que coincidan. Para cambiar una preferencia, se puede hacer con /pref pref-name new-value
. Para editar una preferencia para una red, canal o usuario específicos, se puede usar /network-pref
, /channel-pref
, o /user-pref
. Hay variantes para redes, canales y usuarios específicos de los comandos /charset
y /motif
.
¿Cómo me fabrico mi propio esquema de colores?
La ventana de salida de ChatZilla usa estilos CSS estándar. Los mensajes en la ventana de salida no son más que elementos en una tabla HTML. Esos elementos tienen atributos que identifican quién envió el mensaje y qué tipo de mensaje es. Se pueden aplicar estilos específicos a los mensajes usando selectores de atributos CSS. Lee el comentario en la parte superior de output-base.css para más información. Una vez que lo hayas comprendido, descarga el código fuente para los motivos Dark y Light (prestar particular atención a la forma en que importan el motivo base). El documento Estilos en ChatZilla está un poco desfasado, pero también puede ofrecer una buena aproximación.
¿Cómo me fabrico un motivo de caras para mi red o canal?
Si se tiene un servidor con posibilidad de ejecutar cgis y algo de ancho de banda, se puede intentar usar los scripts situados en hackrus chatzilla/facesrv/. En el fichero comprimido, se encontrarán tres scripts:
- makefaces.pl crea tres motivos de caras (output-default-faces.css, output-dark-faces.css y output-light-faces.css), basados en imágenes que hay en un directorio concreto.
- addface.pl es un CGI que acepta un fichero de imagen por la web, y lo escala a un tamaño apropiado, lo convierte en png y luego ejecuta makefaces.pl.
- faces.pl es un CGI que se puede usar para mostrar todas las caras en una única página web.
¿Puedo hacer mi propio fichero HTML para la ventana de salida?
Sí. Sustituyendo el fichero HTML en el que ChatZilla muestra los mensajes, se pueden efectuar un número ilimitado de personalizaciones para la ventana de salida. Debido a que la ventana de salida tiene acceso a todo lo de Mozilla, incluyendo XPCOM, puede hacer cualquier cosa que también pueda hacer ChatZilla. Esto incluye volver a mostrar la información recogida de la web, el estado almacenado en algún bot, etc. Por motivos de seguridad, esta sustitución output windows no se puede localizar remotamente, y debe ser instaladas por los usuarios. La opción outputWindowURL se usa para seleccionar el fichero el fichero de ventana de salida a usar para una red, canal o usuario en partical. Ver los ficheros output-window.html y output-window.js predeterminados para más pistas. Esto todavía no se ha usado mucho, pero la idea básica es hacer un fichero output-window.html propio, pero usar output-window.js. Las personalizaciones de JavaScript deberían ir en un fichero .js nuevo, incluido en una etiqueta <script> en el output- window.html personalizado.
¿Cómo hago scripts en ChatZilla?
¡Con JavaScript! ChatZilla está escrito completamente en JavaScript, y tiene previsiones para cargar y descargar plugins escritos igual. Debido a que ChatZilla está escrito en JavaScript, los plugins no son mucho más que código adivional de ChatZilla, y por lo tanto, puede hacer cualquier cosa que ChatZilla pueda hacer. Hay un número de funciones que son convenientes para añadir nuevos comandos, nuevos menús, o sólo colgando eventos existentes. Mientras estas técnicas todavía tienen que estar bien documentadas, hay muchos ejemplos disponibles. El plugin de ejemplo muestra lo básico de cómo definir nuevos comandos y ponerlos en los menús. El marco de aplicación sobre el que está construido ChatZilla, estaba desarrollado originalmente para Venkman. Se dió una charla técnica durante esa época que describía cómo usar ese marco para extender Venkman. Las notas están en la red, y se puede probar su utilidad. El código fuente de Chatzilla proporciona muchos ejemplos de cómo usar el marco:
- Para una lista de menús predeterminados en ChatZilla, ver menus.js.
- Para ejemplos de los comandos predeterminados, ver commands.js
- Las preferencias predeterminadas se definen en prefs.js.
- Las cadenas de comandos que se pueden traducir, como el texto de ayuda, etiquetas en la interfaz y listas de parámetros se almacenan en chatzilla.properties.
¿Cómo instalo un script de un tercero en ChatZilla?
ChatZilla busca en todos los subdirectorios de <profile-path>/chatzilla/scripts ficheros con el nombre init.js. Cualquier fichero que se encuentre ahí, se cargará en el inicio. Para instalar un script que alguien ha escrito, simplemente cópielo en un nuevo subdirectorio y llámelo init.js. Para averiguar donde está el directorio <profile-path> en el sistema, se puede escribir /pref profilePath
. ChatZilla también cargará chatzilla/scripts/init.js en el inicio, si existe. Se recomienda que se use este script para acciones que se ejecuten una sola vez o cualquier script que sea necesario que sea el primero en cargar.
¿Cómo juego con el resto de las preferencias?
Hay dos formas. La primera y más fácil, es usar los diálogos de preferencias. Seleccionar Editar -> Preferencias
, y se mostrarán las preferencias de ChatZilla debajo del grupo del mismo nombre. Desgraciadamente, hay algunos bugs en el panel de preferencias. Algunas opciones, como las de transformación de texto, no tienen efecto hasta que se reinicie ChatZilla. Si desea más control y desea acceder a opciones "escondidas", o quiere poner preferencias específicas de red, canal o usuario, use el comando /pref
, o una de las variantes. Escribe /pref
para ver una lista de todas las preferencias globales. Se puede proporcionar un nombre de preferencia, o sólo las primeras letras iniciales del nombre de la preferencia, para ver el varlor actual de las opciones que coincidan. Para cambiar una preferencia, se puede hacer con /pref pref-name new-value
. Para editar una preferencia para una red, canal o usuario específicos, se puede usar /network-pref
, /channel-pref
, o /user-pref
. Hay variantes para redes, canales y usuarios específicos de los comandos /charset
y /motif
.