Sử dụng Ruby, tôi phải xuất chuỗi ở định dạng cột cho thiết bị đầu cuối. Một cái gì đó như thế này:Ruby: Kiểm tra chiều rộng Đông Á (Unicode)
| row 1 | a string here | etc
| row 2 | another string | etc
Tôi có thể làm điều này tốt với các ký tự UTF8 Latin sử dụng String # ljust và% s.
Tuy nhiên, một vấn đề nảy sinh khi các nhân vật là Hàn Quốc, Trung Quốc, vv Các cột chỉ đơn giản là sẽ không sắp xếp khi có hàng tiếng Anh xen kẽ với hàng chứa Hàn Quốc vv
Làm thế nào tôi có thể nhận được sự liên kết cột ở đây ? Có cách nào để xuất các ký tự Châu Á tương đương với phông chữ có chiều rộng cố định không? Làm thế nào về các tài liệu có nghĩa là để được hiển thị và chỉnh sửa trong Vim?
Sử dụng vim, bạn có cài đặt ''guifontwide'' cho phép bạn chọn phông chữ hai chiều cho văn bản Châu Á. – Benoit
Lựa chọn từ ngữ của bạn rất kém. Châu Á là một nơi rất lớn với nhiều quốc gia, ngôn ngữ và hệ thống văn bản. – koan
@dan Đó là vấn đề với ngôn ngữ Hàn Quốc/Trung Quốc/... {Châu á} hoặc với bất kỳ ký tự nào có 'len()' lớn hơn 1 (ví dụ, '« '). Nếu nó là, sau đó để có được chiều dài thực của văn bản, sử dụng 'len (split (str, '\ zs'))' thay vì 'len (str)' (vim-7.2, 'strwidth (str)' trên vim- 7.3). – ZyX