[OpenKH-devel] L10n cho JavaScript

Ngoc Dao ngocdaothanh at gmail.com
Thu Jul 24 16:24:38 EDT 2008


@Tuấn Anh:
Em đang thi nên chưa code thử phải k? Anh đề nghị giải pháp đơn giản
hơn: dùng tập tin .js.erb (vì HAML không thích hợp cho nội dung JS).
Tham khảo doc/MODULE.

@Tuấn Anh, Lân:
Anh cấu trúc sắp xong. Khoảng 1 tuần nữa là có thể dùng TeamViewer để
giải thích cách coding để 2 em có thể bắt tay vào việc.

Ngọc.


2008/7/20 Ngoc Dao <ngocdaothanh at gmail.com>:
> Chào Tuấn Anh.
>
> 1.
> Trước khi đọc tiếp phần dưới, em hãy tập dùng Ruby-Gettext trong
> chương trình Rails trước.
>
> 2.
> Để thực hiện L10n cho JavaScript, anh đề nghị giải pháp sau:
> * Trong tập tin .js, khi viết literal text, kẹp nó vào _(), ví dụ:
> alert(_('Hello'))
> * Thêm rake task tên là gettext:js:updatepo (tham khảo
> http://openkh.rubyforge.org/svn/trunk/lib/tasks/gettext.rake) để tự
> động parse tất cả tập tin .js, trích text nằm trong _() thành pofile.
> * Thêm rake task tên là gettext:js:makejs để ứng với mỗi cặp (<tập
> tin.js>, <ngôn ngữ>) sẽ sinh ra 1 tập tin <tập tin>_<ngôn ngữ>.js,
> trog đó thay thế _(text) thành chuỗi đã được dịch lấy từ mofile.
>
> Ví dụ, giả sử:
> * Có x.js chứa alert(_('Hello'))
> * Cần support tiếng Việt
>
> Lúc này:
> * Chạy rake gettext:js:updatepo sẽ trích được chuỗi 'Hello' vào tập
> tin vi/app.po
> * Sau khi dịch 'Hello' trong vi/app.po thành 'Xin chào', chạy rake
> gettext:makemo để tạo ra vi/.../app.mo
> * Chạy rake gettext:js:makejs, sẽ sinh ra x_vi.js trong đó
> alert(_('Hello')) được chuyển thành alert('Xin chào')
>
> Trên đây chỉ là trình bày ý tưởng, chỗ nào k hiểu em bàn lại nhé. Sau
> khi thông suốt thì em hãy tạo project tạm rồi thử nghiệm 2 rake task
> trên. Xong, anh sẽ hướng dẫn tiếp cách tích hợp 2 task trên vào chỗ
> thích hợp trong OpenKH.
>
> Ngọc.
>


More information about the OpenKH-devel mailing list