Vấn đề được mô tả trong câu hỏi xảy ra khi một tài liệu trống / mới được đặt thành "ANSI" và các ký tự Unicode được dán vào nó.
Không có bất kỳ tự động phát hiện nào khi được sử dụng với một tài liệu trống / mới, ít nhất là không có trong phiên bản Notepad ++ mà tôi đã thử nghiệm trên (v5.4.5). "ANSI" là mặc định trong Notepad ++ cho một tài liệu mới, trừ khi được đặt trong menu Cài đặt → Tùy chọn → tab Tài liệu mới / Mở thư mục lưu .
Dung dịch
Giải pháp là đặt mã hóa thành UTF-8 trước khi dán, định dạng menu → Mã hóa trong UTF-8 :
Thí dụ
Tôi đã sao chép một số văn bản vào một tài liệu Notepad ++ mới, tiếng Nga (русуй язык, russkiy yazyk) , từ Firefox hiển thị trang Wikipedia tiếng Nga .
Nếu mã hóa không được thay đổi từ "ANSI" thì đây là kết quả:
Nếu mã hóa được thay đổi, đây là kết quả:
Như có thể thấy trong hình bên dưới (phần Cyrillic được tô sáng), Notepad ++ thực sự chuyển đổi các ký tự Unicode thành ASCII 63 (hexadecimal 3F), các dấu hỏi. Đó là lý do tại sao các ký tự Unicode bị mất (trong chế độ "ANSI" ) khi sao chép văn bản ra khỏi bảng tạm (đây không phải là vấn đề về phông chữ - thông tin bị mất).
Đã thử nghiệm trên: Notepad ++ v5.4.5 (UNICODE).