This page is READ-ONLY. It is generated from the old site.
All timestamps are relative to 2013 (when this page is generated).
If you are looking for TeX support, please go to VietTUG.org

Byte-order mark

Ref: #541

  1. Đối với các tập tin dùng bảng mã Unicode 16 hoặc 32 bit, đầu tập tin sẽ chèn ký tự BOM (byte-order mark) để phân biệt cấu trúc lưu trữ của tập tin. Khi các chương trình đã đọc được ký tự BOM này rồi thì ký tự đó trở nên vô nghĩa.
  2. Đối với các tập tin dùng UTF-8, nhiều chương trình trên Windows cũng chèn thêm ký tự BOM, có mã thập lục phân là EF BB BF (mà các chương trình thể hiện ở dạng .)
    1. Mục đích của việc thêm không có ý nghĩa nhận dạng như trường hợp Unicode 16 bit hay 32bit, mà để chỉ rõ hơn tập tin là UTF-8
    2. Việc thêm này là chấp nhận được, nhưng không được khuyến khích, vì lý do là các tập tin UTF-8 có sử dụng BOM có thể không được xử lý đúng trên các hệ thống Unix/Linux
    3. Cụ thể, các tài liệu TeX UTF-8 có BOM có thể được biên dịch bình thường trên Windows, nhưng không thể biên dịch trên Linux (và thậm chí không thể biên dịch với TeXMaker trên Windows).
  3. Việc xem được ký tự lạ  trong Notepad (Windows) thật sự là do đã mở tài liệu trong Notepad sử dụng bảng mã ANSI. Nếu khi mở tập tin trong Notepad, chọn bảng mã UTF-8 sẽ không thấy xuất hiện ký tự lạ đó nữa
  4. Một số editor không xử lý được BOM/UTF-8, khi đó, bạn phải tìm cách xóa chúng đi (có nhiều editor khác nhau hỗ trợ việc này, ví dụ Geany, Notepad++). Hoặc sử dụng các chương trình chỉnh tập tin theo kiểu nhị phân (hexedit) để xóa đi BOM.