Python en FireFox
Por
Sebastián Lizica
Hace unos meses circuló la noticia de que Guido van Rossum fundador de Python había sido
contratado por Google para integrar Python en FireFox. Desde hace tiempo, otro pro-hombre de Python,
Mark Hammond, está también trabajando en los mismo, de hecho ya ha incorporado al cvs de Firefox el
DOM_AGNOSTIC2_BRANCH que refleja su trabajo en el proceso de integración. Lo básico ya funcionaba
(como referencia esta la IDE Komodo de Activestate), y desde hace relativamente poco ya se puede utilizar
Python como remplazo de JavaScript (que me parece, al menos en mi caso, lo mas interesante). Decian
que entre enero y febrero estaria incorporado en el branch 'oficial'. Y para el Mozilla 1.9 (Firefox 1.6) o el
siguiente (no lo recuerdo), ya estará en las distribuciones binarias estables (no incluyendo la distribucion de
Python, para que la instale el que la quiera).
Si compilas Firefox desde ese branch con solo el soporte de Python a xpcom (para hacer la primer
compilación con algo seguro que no de error) y los tests que pude hacer funcionaron correctamente:
Un ejemplo sobre Python dentro de .XUL:
-------------------------------
<?xml version="1.0"?>
<window
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
id="main-window">
<script type="application/x-python"><![CDATA[
import xpcom
class HelloWorld:
def __init__(self,message="Hello World"):
self._promptService =
xpcom.components.classes["@mozilla.org/embedcomp/prompt-service;1"]
.getService(xpcom.components.interfaces.nsIPromptService)
self.message=message
def show(self):
self._promptService.alert(this.window,"title", self.message);
helloWorld=HelloWorld()
helloWorld.show()
]]></script>
</window>
--------------------------------
FoxPress – Marzo de 2006