Jump to content

Incluir traduções nos meus scripts


softklin
 Share

Recommended Posts

Boas pessoal!

Estou a tentar aprender um pouco de XUL, que é usada como sabem, para criar extensões do firefox. Acontece que eu estou com um pequeno problema em tornar a minha aplicação com multiplos idiomas: os ficheiros Xul são traduzidos correcatmente, já na pasta dos "locales" e com tudo a funcionar.

Agora os ficheiros de Javascript, estou a usar outros métodos: no ficheiro XUL incluo a lista de strings

<stringbundleset id="stringbundleset">
<stringbundle id="strings" src="chrome://minhaextensao/locale/settings.properties"/>
</stringbundleset>

e o meu javascript é o seguinte (que está num ficheiro na mesma pasta do xul):

	//Inicialização de Strings
	var strbundle=document.getElementById("strings");
	var done=strbundle.getString('prefsSaved');

	(...)

	alert(done);
	window.close();

Só que não funciona e se fizer um try...catch no strbundle.getString retorna-me o seguinte erro:

http://img218.imageshack.us/img218/5484/errofsx0.gif

Já pesquisei no Google, já experimentei incluir os ficheiros todos na mesma pasta (e alterar os respectivos caminhos), mas não estou a conseguir. Tudo o resto funciona normalmente

Se for útil, estou a testar a minha extensão copiando os ficheiros para a pasta de extensões no meu perfil (já com os ficheiros necessários, chrome.manifest e o install.rdf).

Se alguém me conseguir ajudar, agradeço imenso, pois já estou nos passos finais, para ver se consigo por tudo a funcionar direitinho  😁

Obrigado desde já  😄

Nick antigo: softclean | Tens um projeto? | Wiki P@P

Ajuda a comunidade! Se encontrares algo de errado, usa a opção "Denunciar" por baixo de cada post.

Link to comment
Share on other sites

Está parcialmente resolvido. A minha solução actual passa por considerar o meu ficheiros .properties como um ficheiro de javascript, no qual atribuo valores (as mensagens) às variáveis.

Se ainda assim, alguém tiver uma solução melhor, agradecia que me desse, sff, pois gostava de fazer tudo certo.

Nick antigo: softclean | Tens um projeto? | Wiki P@P

Ajuda a comunidade! Se encontrares algo de errado, usa a opção "Denunciar" por baixo de cada post.

Link to comment
Share on other sites

Boas.

Eu uso assim e funciona.

Ficheiro .xul

<script src="browser.js"/>
...
<stringbundle id="tx-browser-bundle" src="chrome://qualquercoisa/locale/tx-browser.properties"/>
...

Ficheiro browser.js

var TX_Bundle = document.getElementById("tx-browser-bundle");
...
var Str = TX_Bundle.getString("string");
...

Se a vida te voltar as costas aproveita e apalpa-lhe o cu.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.