Weighted length là độ dài có trọng số mà X (Twitter) dùng để đo bài đăng: mỗi ký tự được gán trọng số 1 hoặc 2 trước khi cộng lại. Vì vậy một bài tiếng Việt có dấu tiêu tốn nhiều hơn số ký tự mắt nhìn thấy.
Cách tính weighted length của một bài đăng
Ba quy tắc chạy lần lượt trên nội dung đã chuẩn hoá.
- Chuẩn hoá văn bản về dạng dựng sẵn NFC trước khi đếm.
- Mỗi đường dẫn được rút gọn và tính tròn 23 ký tự, bất kể dài ngắn.
- Code point trong dải U+0000–U+10FF tính 1; các code point ngoài dải đó tính 2.
Trần của bài thường là 280, bản trả phí lên 25.000.
Vì sao chữ Việt có dấu tính 2 trong weighted length
Nhiều chữ tiếng Việt dựng sẵn nằm ngoài dải trọng số 1.
Các chữ mang hai dấu như ạ, ả, ấ, ầ, ệ, ộ, ợ, ứ, ừ được Unicode xếp ở khối U+1E00–U+1EFF, tức ngoài U+0000–U+10FF, nên mỗi chữ ăn 2 đơn vị. Trong khi đó à, á, â, ê, ô, ơ, ư và đ vẫn nằm trong dải và chỉ tính 1. Kết quả là hai câu dài bằng nhau trên màn hình lại cho weighted length chênh nhau vài chục đơn vị, tuỳ câu nào nhiều dấu nặng, dấu hỏi. Emoji và chữ Hán, Nhật, Hàn cũng tính 2 theo cùng quy tắc.
Công cụ đo weighted length
Ba công cụ sau cho thấy khoảng cách giữa ký tự nhìn thấy và ký tự tính phí.
- Đếm ký tự X tính weighted length và liệt kê đúng những ký tự đang tính 2.
- Đếm ký tự online cho số ký tự nhìn thấy để đối chiếu.
- Đếm byte UTF-8 so thêm ở góc dung lượng lưu trữ.
- Đếm ký tự Threads dùng khi đăng cùng nội dung sang nền tảng đếm theo ký tự thường.
Nguồn
Quy tắc trọng số và mức 23 ký tự cho đường dẫn lấy từ tài liệu dành cho lập trình viên của X.
- Counting characters — docs.x.com: bảng trọng số 1 và 2, quy tắc mọi đường dẫn tính 23 ký tự.
- Unicode Standard, khối Latin Extended Additional (U+1E00–U+1EFF): nơi chứa các chữ Việt dựng sẵn mang hai dấu.