Vim: Làm thế nào để xử lý các tệp Unicode với văn bản bằng nhiều ngôn ngữ (hơn hai)?


9

Tôi cần cài đặt nào trong Vim / gVim để có thể xem các tệp văn bản Unicode có văn bản bằng nhiều ngôn ngữ?

Bạn có thể đưa ra những giả định sau:

  • Số lượng ngôn ngữ là nhiều hơn hai.
  • Một số ngôn ngữ là tiếng Trung, tiếng Nhật và tiếng Hàn.
  • Nó là đủ nếu tôi có thể xem các tệp này trong gVim (không nhất thiết phải là Vim).
  • gVim 7.0 chạy trên Windows.

Dưới đây là một mẫu văn bản, khi được lưu bằng Unicode sẽ mở tốt trong Notepad, nhưng hiển thị dưới dạng vô nghĩa trong gVim:

This is English.
这是中文。
これは日本です。
한국입니다.
ಇದು ಕನ್ನಡ.

Jerryjvl: Dường như có hỗ trợ Unicode trong GViM. Tôi đã không thành công trong việc cho phép nó hoạt động với> 2 ngôn ngữ. vim.org/htmldoc/mbyte.html
Ashwin Nanjappa

3
Ví dụ của bạn chỉ hoạt động tốt khi dán vào gvim trên Linux. Đề xuất nâng cấp HĐH :-D
derobert

Câu trả lời:


7

Sử dụng gVim trên Windows, tôi đã làm hai việc sau:

:set encoding=utf-8
:set guifont=*

Lệnh thứ hai mang đến một bộ chọn phông chữ. Bằng cách chọn phông chữ "@MS Mincho", tôi có một số ký tự tiếng Nhật để hiển thị, nhưng kỳ lạ là chúng bị xoay 90 độ sang trái.

Dù sao, bạn sẽ phải đặt mã hóa trước khi tải hoặc dán văn bản vào gVim (nếu không, nó có thể chỉ chuyển đổi chúng thành tất cả các dấu hỏi). Sau đó, bạn sẽ phải tìm một phông chữ có (a) chiều rộng cố định và (b) bao gồm các ký tự bạn muốn xem. Tôi dường như không có một phông chữ như vậy trên hệ thống của tôi tại thời điểm này, nhưng bạn có thể.


điều này cũng đúng với bất kỳ hệ điều hành nào: bạn cần vim để sử dụng mã hóa đúng VÀ phông chữ đúng để hiển thị glyphs của phông chữ. vì vậy, đánh dấu câu trả lời của greg 'được chấp nhận' :)
akira

Cảm ơn Greg! Vì vậy, bằng cách đặt mã hóa là UTF-8, chúng tôi cho phép GViM hiểu được các byte mà nó đang đọc, nhưng thật đáng buồn là nó không thể hiển thị tất cả các ngôn ngữ đó bằng một phông chữ có độ rộng cố định duy nhất, do đó hiển thị vô nghĩa.
Ashwin Nanjappa

0

Sử dụng các cài đặt sau trong .vimrc có thể phù hợp với bạn. Nó làm việc cho tôi cho các nhân vật Trung Quốc / Nhật Bản.
:set encoding=utf-8
:set guifont=*
:set guifontwide=*


Bạn cũng có thể thử các cách sau: :set fileencoding=utf-8 :set fileencodings=ucs-bom,utf-8,latin1 :set *encoding=utf-8
GuruM

0

Phông chữ Arial Unicode MS hỗ trợ tiếng Nhật, tiếng Trung và tiếng Hàn cũng như tiếng Việt và tiếng Ả Rập. Bạn có thể thử sử dụng phông chữ đó, mặc dù tôi không tin rằng nó là đơn cách.

http://www.microsoft.com/typography/fonts/font.aspx?FMID=1081

Có thể có các phông chữ ngôn ngữ khác ngoài đó, có thể là các phông chữ đơn cách, nhưng tôi không biết về chúng.

biên tập

Tôi tìm thấy trang này với một vài phông chữ hỗ trợ cả ba ngôn ngữ. Một số trong số chúng có sẵn dưới dạng tải xuống miễn phí: http://www.wazu.jp/gallery/Fonts_Japanese.html

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.