PDA

View Full Version : [FIXED] Build version does not support UTF8?



$p00ky
27 Oct 2012, 3:15 PM
Hi,

When building the application with Sencha Cmd 3.0.0.230, the generated code is re-encoded in ANSI and UTF8 characters do not display correctly.

My tab, dev version (OK):
39626

My tabs, build prod:
39627

Any way to force the character encoding?
Shouldn't Sencha default to UTF8?

dongryphon
28 Oct 2012, 5:17 PM
The short answer is "yes, the build is supposed to generate UTF-8 output", but without a precise set of steps it will be just guessing where the encoding went wrong.

Can you include the steps you've taken here?

Thanks for the report!

$p00ky
29 Oct 2012, 4:21 AM
Well I follow an uncommon process...

I have an application created first with Sencha Architect 2.1, then updated manually when my trial expired.
This code is supposed to work with Sencha SDK Tools 2, but it does not work very well...
So why not trying the new one.

Here is what I did:
- generated a sencha touch 2.1rc2 app with sencha cmd 3
- moved to that folder, removed everything under app/ and replaced it with my own app
- then edited app.js: added my models/views/stores/controllers, renamed the app, and changed the first view to create in the launch() method.
==> everything works perfectly!
- then I built the app, and the built version is encoded in ANSI so the Japanese/Chinese characters are not displayed

So at that point, I thought it might be because app.js itself is in ANSI (as I kept and edited the auto-generated one) so I converted it to UTF-8 without BOM (as Sencha Architect 2.1 creates files in this character encoding) but it did not solve the issue (it was either still not showing correctly, or even saying there is an error in app.js line 56, not expected character).

I ended up changing the tab name in English and it works well (UTF-8 characters loading from Ajax calls are displayed correctly).
I deployed on dotcloud for testing from a smartphone and it works well: http://keio-sdmnews.dotcloud.com/
But it would be great if Sencha could encode by default in UTF-8.

dongryphon
30 Oct 2012, 12:12 AM
I'm going to open a ticket for this to see if we can reproduce the issue - the code generated by Sencha Cmd is supposed to be UTF-8 so this would certainly be a bug.

dongryphon
31 Oct 2012, 10:02 PM
can you zip the input file with the special characters and the resulting output file? Please zip and attach to this forum to preserve the encoding.

dongryphon
4 Nov 2012, 9:48 PM
My suspicion is that there is actually in input issue here because we always write output in UTF-8. So for the wrong content to appear in the output file, it almost certainly originated from a file where we did not understand the character set.

On a JavaScript file you may need to do this on line 1:



//@charset ISO-8859-1


The list of supported charsets can be found here:

http://docs.oracle.com/javase/1.5.0/docs/guide/intl/encoding.doc.html

Please ensure the file are either encoded in UTF-8 (the assumed encoding) or starts with a declaration like the above. If you are still having problems, please post some fragment of the source file and output for me to look at.