Para facilitar la implementación y compatibilidad con todos los clientes del
soporte de hiperenlaces (issue #167), y a la vez dar más opciones y
flexibilidad al usuario en lo referente al soporte de estilos y de colores
(p.ej. issue #194), podría ser buena idea añadir un preprocesador de la
salida que hiciese de intermediario entre el mundo y el cliente.
Ahora mismo, el mundo y sus objetos escriben al cliente preguntándole cuál es
su código de color (directamente, o de forma oculta en funciones cómodas que
hacen "wrapping" de eso). Con los hiperenlaces se puede usar la misma
aproximación (y se debe - no hay motivos para quitarla). Pero a mayores,
sería interesante que el usuario pudiera usar strings conteniendo unos
códigos universales, y que un objeto preprocesador de la salida se encargara
de:
(1) localizar los códigos universales en el texto (algo como #FF0000#, #story#
o #link:ir al norte#,
(2) hacer las preguntas necesarias al cliente sobre los códigos de color (y
futuros códigos de hiperenlace, etc.),
(3) enviar al cliente la cadena con los códigos específicos de cliente que
él entiende (que por supuesto, como hasta ahora, pueden ser cadenas vacías
para clientes que no soporten color/hiperenlaces).
La ventaja sería que el usuario podría usar cadenas con códigos directamente
de manera portable entre clientes, en vez de tener que usar distintos métodos
write o bien usar códigos pero renunciando a la portabilidad.
Original issue reported on code.google.com by komoku on 19 Apr 2013 at 10:06
Original issue reported on code.google.com by
komoku
on 19 Apr 2013 at 10:06