Escrevendo um plugin do Firefox para analisar uma linguagem personalizada do lado do cliente

StackOverflow https://stackoverflow.com/questions/69982

  •  09-06-2019
  •  | 
  •  

Pergunta

Eu tive uma ideia para uma linguagem do lado do cliente diferente de JavaScript e gostaria de desenvolver um plugin para Firefox que tratasse inclusões dessa nova linguagem em uma página, como <script type="newscript" src="path /script.ns" />, como se fosse uma linguagem com suporte nativo.O plug-in faria toda a análise da linguagem e, idealmente, seria capaz de executar todas as operações no navegador e no HTML e CSS da página da web, assim como o JavaScript.

Pesquisei bastante no Google e encontrei alguns artigos sobre como escrever plug-ins básicos do Firefox, mas nada tão complicado quanto isso.

Isso é possível?

Foi útil?

Solução

@Nathan de Vries:não, na verdade, os plug-ins NPAPI que você sugeriu não permitem implementar suporte para <script type=...>.

OP:isso não é fácil, mas procure PyDOM e PyXPCOM - ligações de linguagem para Python.O primeiro faz exatamente o que você pediu - para Python, mas não tenho certeza sobre seu status atual.De qualquer forma, é muito provável que você precise criar sua própria versão do Firefox para oferecer suporte a tipos de script adicionais.

Outras dicas

Uma ideia interessante.Observe que você não precisa escrever um plugin específico do navegador para fazer isso.Alguns as pessoas experimentaram com o uso de JRuby em um Applet para executar código incorporado <script type="text/ruby">.Essa solução pode ser mais lenta na inicialização (devido à sobrecarga de carregar uma instância JVM inteira), mas será muito mais flexível no longo prazo (em vários navegadores).Além disso, é um pouco mais fácil construir um interpretador de linguagem customizado em uma linguagem JVM do que tentar encaixá-lo no Gecko.

Se entendi o que você gostaria de fazer, você precisará escrever um plugin Gecko.Através de um plugin, você poderá registrar seu próprio tipo MIME e então manipular Javascript e DOM.

Isso significa que você precisaria incluir um <object /> ou <embed /> tag na página para carregar seu plugin, mas você pode procurar por <script type="application/x-yourtype" />, pegue o innerText dessa tag de script e analise-o usando seu plugin.

Como Nickolay sugeriu, a alternativa é usar qualquer navegador que suporte atualmente ou criar uma versão personalizada do navegador.A sugestão de Daniel Spiewak de usar um miniaplicativo Java (ou um miniaplicativo Flash também funcionaria) também é válida.

As informações que você procura estão disponíveis no site do desenvolvedor da Mozilla:

Você realmente deseja vincular suas páginas à sua própria linguagem de script personalizada?Ou você está apenas querendo escrever seu código do lado do cliente em algo que não seja javascript?Se este último tentar MileScript, Haxe, ou Kit de ferramentas da Web do Google

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top