Cách xem các ký tự Unicode UTF-8 trong VIM


13

Tôi đang sử dụng VIM 7.4 trên máy Ubuntu 14.04 64 bit. Trong tệp .vimrc của tôi, tôi có các dòng sau:

" Use UTF-8 without BOM
set encoding=utf-8 nobomb

Các configtập tin cơ bản sử dụng ký tự Unicode để hiển thị không gian trắng như tab, dòng mới, vv Các tập tin vimrc hoàn toàn được lấy từ Paul Irish của dotfiles .

Trong lần cài đặt trước 14.04 cũng như trong các bản phân phối trước đó, tôi đã có thể thấy các ký tự unicode mà không gặp vấn đề gì nhưng không phải với bản này.

Tôi cũng đã thử:

 set fileencodngs=utf-8

Nhưng, cài đặt ở trên không có hiệu lực và tôi vẫn thấy các ký tự bị cắt xén trên màn hình. Có cách nào để khắc phục điều này?


1
Bạn có thể cung cấp một liên kết đến một tập tin ví dụ có vẻ bị cắt xén cho bạn? Và bạn có thể bao gồm một ảnh chụp màn hình của những gì bạn đang thấy trong vim? Giá trị của fencbiến sau khi mở tệp là gì?
Mike Miller

Câu trả lời:


16

Nếu ngôn ngữ hiện tại của bạn ở dạng mã hóa utf-8 , Vim sẽ tự động bắt đầu ở chế độ utf-8.

Nếu bạn đang sử dụng ngôn ngữ khác, hãy đặt bên dưới trong ~/.vimrctệp người dùng của bạn :

set encoding=utf-8

Bạn cũng có thể muốn chọn phông chữ được sử dụng cho các menu . Thật không may, điều này không phải lúc nào cũng hoạt động.

Ngoài ra, bạn có tùy chọn này để buộc mã hóa với :set fileencodings=utf-8. Bạn có thể tìm tài liệu ở đây

một giải pháp khác là: Trong chế độ chèn, nhấn Ctrl- R ="\xe2\x82\xa9" Enterđể nhập trực tiếp các ký tự UTF-8 bằng cách sử dụng Mã hóa Hex.

đó \xe2\x82\xa9là Hex Encoding của (ký hiệu tiền tệ cho Bắc Triều Tiên).

ref: Tài liệu Vim

Lưu ý: Nếu bạn đã thực hiện cấu hình trên nhưng bạn vẫn không thể nhìn thấy hoặc nhập các ký tự Unicode, hãy kiểm tra cấu hình Terminal hoặc Console nếu Character encodingđược đặt thành UTF-8.

Đọc thêm Nhân vật đặc biệt trong Vim .


1
Điều này cũng giải quyết vấn đề không thể nhập các ký tự tiếng Trung cho tôi.
Zelphir Kaltstahl

Ai đó có thể mở rộng về những gì C-R ="\xe2\x82\xa9" <enter>không?
dùng1717828

@ ussr1717828 đó là hình thức mã hóa UTF-8 của (ký hiệu tiền tệ cho Triều Tiên) và cho phép người dùng trực tiếp nhập bằng chữ bằng cách sử dụng mã hóa UTF-8 Hex của nó với Ctrl+R="..."- Enter.
αғsнιη
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.