hn4u @ Last updated 21/11/04 22:42
Go to my homepage at http://4u.jcisio.com
Full version available at http://4u.jcisio.com/r/article408.htm

Hoàng Nam Hải

Unicode và vấn đề về chuẩn tiếng Việt

Tại sao cần có một bảng mã chung trên toàn thế giới?

Nếu ghé thăm nước Nhật thông qua Internet, bạn sẽ thất vọng vì những gì bạn thấy ở đó. Hầu hết các trang Web đều có hình ảnh rất đẹp, nhưng các dòng chữ thì vô cùng lộn xộn, toàn là những hình chữ nhật, những ký tự đô la, ký tự nguyên âm lằng nhằng khác. Quả thật, mới nhìn sơ qua tôi đã thấy hoa mắt,. Tôi chắc rằng chẳng ai có thể đọc được dù là một mẩu thông tin từ những kí tự đó cho dù họ đã học tiếng Nhật hay là người Nhật chăng nữa.

Tại sao vậy? Có thể giải thích hiện tượng này như sau: các đoạn văn tiếng Nhật trong các trang Web được viết bằng một bộ mã khác hẳn với những gì mà bạn đang dùng, cho nên, những gì đang được hiển thị trên màn hình không phải là những gì mà người soạn trang Web đó muốn đưa tới cho bạn. Trình duyệt Web của bạn không hiểu thứ loại phông chữ này vì thế, nó sẽ hiển thị từng byte mà nó đọc được với những biểu tượng tương ứng (đã được dựng sẵn) trong bộ mã Western (vốn được sử dụng mặc định trong các trình duyệt). Với những ngời sử dụng máy tính cho công việc kinh doanh, vấn đề sẽ gây khó chịu hơn nhiều. Họ sẽ phải sử dụng một phần mềm khác hoặc thực hiện một loạt các thao tác mất thời gian khi muốn xem thông tin của các ngôn ngữ này (chắc bạn cũng biết, trong công việc kinh doanh, họ không thể bỏ qua những thông tin hữu ích, họ buộc phải đọc nó. Còn nếu như tôi hoặc các bạn thì.. thà xem địa chỉ còn hơn).

Tác giả của các trang Web ở một số nước này nhận thấy rằng họ sẽ phải tăng gấp đôi dung lượng đĩa, tăng gấp đôi công việc của mình để dịch những thông tin này sang tiếng Anh. Đối với một vài ngôn ngữ, kể cả Nga, Trung Quốc và Việt nam, hiện có nhiều hơn một phương pháp mã hoá bảng chữ cái đang được dùng, điều này khiến cho những ai vừa muốn xem tiếng các thông tin bằng tiếng Anh, vừa muốn xem các thông tin bằng tiếng Nhật, tiếng Việt phải có tới ít nhất hai bộ phông chữ, và có thể là hai bộ phần mềm ứng dụng - rất bất tiện và tốn kém.

Giải pháp toàn vẹn nhất cho sự không tương thích giữa các bảng mã, đó là sử dụng Unicode, giải pháp đã được nhiều quốc gia chấp nhận và được đưa vào làm chuẩn cho việc trao đổi, sử dụng thông tin. Dưới đây, chúng ta sẽ cùng xem xét những nguyên nhân, và một số ưu điểm của Unicode.

Chắc chắn, câu hỏi số một thường được hỏi trong vấn đề này sẽ là: Unicode là gì? Unicode đơn giản chỉ là một bảng ký tự chuẩn được đặt ra để sử dụng để biểu thị các ngôn ngữ trên thế giới, như vậy, những phần mềm sử dụng Unicode đều có khả năng hiển thị một thứ tiếng bất kì nào (tất nhiên là nước này phải có bộ ký hiệu biểu diễn chư viết của hình trong đó). Để giúp bạn hiểu rõ hơn nguyên nhân và quá trình phát triển, tôi xin được nhắc sơ qua một số nét chính trong lịch sử Unicode. Trước hết, Unicode là đề án của Unicode Consortium, được thực hiện từ tháng 1 năm 1991. Đề án có được những nỗ lực lớn trong sự hợp tác giữa hầu hết các công ty lớn thuộc ngành công nghiệp máy tính bao gồm Apple, IBM, Microsoft, Oracle, Sub, Xerox, và mới đây là Netscape. Tiền thân của Unicode, đó chính là bảng mã ISO 8859-1 (tương tự như bảng mã ASCII - American Standard Code for Information Interchange được sử dụng từ những năm 60) hiện vẫn được coi là tiêu chuẩn cho việc hiển thị thông tin trong các hệ máy PC ngày nay.

Cấu trúc của Unicode

Bạn có thể hiểu một cách nôm na rằng Unicode là bảng mở rộng của bảng các ký tự ASCII. Đối với bảng mã ASCII cũng như các bảng mã thông thường khác, mỗi ký tự được định nghĩa bằng một byte duy nhất. Như bạn đã biết, một byte có 8 bit, vì thế chỉ bảng ASCII chỉ có tối đa 2 mũ 8 = 256 ký tự khác nhau. Với Unicode, mỗi ký tự ở đây được định nghĩa bằng 2 byte, vì thế số ký tự biểu diễn khác nhau trong bảng sẽ là 2 mũ 16 = 65536. Quá nhiều? Đúng vậy, cho tới nay, hơn một nửa chỗ trong Unicode vẫn còn trống và chắc chắn chúng sẽ được sử dụng tới trong tương lai. Với số ký tự có thể biểu diễn lớn đến như vậy, con người không những muốn nó thể hiện các ký hiệu chữ viết trong các ngôn ngữ mà khi tạo ra nó, con người còn mong nó biểu hiện cả các ký hiệu được sử dụng trong điện tử, vật lý, toán học, thương mại... Để thuận tiện cho các nhà lập trình cũng như trong quá trình xử lý thông tin, 256 ký tự đầu tiên của Unicode được định nghĩa giống hệt bảng ký tự ASCII.

Hiện nay Unicode đã có những những ký hiệu tượng trưng cho các ký tự của hầu hết các ngôn ngữ được sử dụng rộng rãi kể cả tiếng Nga, tiếng arập, ấn Độ, và một số nước đông á. Theo đánh giá của các chuyên gia, thách thức lớn nhất đối với Unicode Consortium là thuyết phục những công ty sản xuất phần mềm hỗ trợ kế hoạch này. Bước khởi đầu của kế hoạch đã được hoàn thành rất tốt đẹp. Nhiều chương trình đã được trang bị đặc tính hỗ trợ Unicode. Nổi bật nhất trong số này, phải kể đến FrontPage,Windows95, Windows NT của Microsoft và các ứng dụng văn phòng Microsoft Office97. Bên cạnh đó, ngôn ngữ lập trình java của Sun cũng chứa đặc tính này, trong tương lai, hệ điều hành "Rhapsody" cuả Apple cũng có khả năng làm việc với Unicode.

Tuy nhiên, đó mới là vấn đề hiển thị các văn bản sẵn có, nếu bạn muốn tự mình soạn thảo các văn bản sử dụng Unicode mọi thứ sẽ phức tạp hơn một chút. Bạn cần phải cài đặt thêm:

(ở Việt Nam, những phần mềm tiêu biểu nhất thuộc dạng này phải kể đến ABC, VNI, VietWare... Tôi chắc rằng bạn chẳng lạ gì với cách sử dụng chúng).

Trong các phiên bản Windows 95 thông thường không chứa sẵn Unicode. Với những trường hợp này, bạn nên tải xuống và cài đặt Unicode từ một số địa chỉ Web nào đó trong Internet, ví dụ như: www.microsoft.com. Nhớ rằng, bạn chẳng phải trả một xu nào cả, nó miễn phí hoàn toàn...Đối với Netscape, để hiển thị các trang Web không được sử dụng với bộ ký tự Western chẳng có gì là khó khăn gì, đặc biệt là trong những phiên bản mới. Công việc của bạn lúc này rất đơn giản: thử chọn lần lượt các phông chữ trong danh sách được đưa ra. Microsoft Internet Explorer cũng có một danh sách khá dài các phông chữ này để bạn lựa chọn - nhưng trong một thế giới lý tưởng, tất cả các văn bản đều sử dụng chung một bộ phông Unicode duy nhất, bạn sẽ chẳng cần phải chuyển qua chuyển lại nữa.

Kết luận

Dưới đây là một số thông tin mới nhất về Unicode. Sắp tới, hội thảo lần thứ 12 về Unicode sẽ được tổ chức tại Tokyo, Nhật từ trong hai ngày 6-9 tháng 4 năm 1998. Trọng tâm của hội thảo này sẽ xoay quanh các vấn đề về Unicode:

Hi vọng rằng Unicode là không chỉ gắn mọi người lại gần nhau hơn mà còn tạo ra một thế giới điện toán hợp nhất, một thế giới mà tất cả các ngôn ngữ đều có vai trò như nhau. Tiêu chuẩn để thực hiện đã sẵn sàng, tất cả chỉ còn phụ thuộc vào những người sử dụng nó. Tuỳ từng nước mà sử dụng Unicode sẽ có những ưu điểm và nhược điểm riêng, tuy nhiên tôi nghĩ rằng, đây sẽ là con đường để phổ biến các thông tin, văn bản tiếng Việt lên Internet, cho các người nước ngoài quan tâm đến những thông tin tiếng Việt. Nếu bạn cần thêm những thông tin về Unicode, hãy tìm tới những địa chỉ Web sau:

1. Homepage của Unicode Consortium

http://www.unicode.org

2. Các trang Web của Microsoft về giải pháp Unicode và đa ngôn ngữ:

http://www.microsoft.com/win32dev/wcnt.htm

http://www.microsoft.com/win32dev/apiext/unicode.htm

3. Một số trang có thông tin về Unicode khác:

http://cns-web.bu.edu/pub/djohnson/web_fil...8n/unicode.html

http://www.truetype.demon.co.uk/unicode.htm

http://www.lang.duke.edu/webcalis/webcalis.htm

http://www.iss.nus.sg/People/guojin/chinese.html

http://www.vlsivie.tuwien.ac.at/mike/fonts


hainam4u @ Last updated 21/11/04 22:42
Go to my homepage at http://4u.jcisio.com