Sửa lỗi font tiếng Việt trong Notepad++

Notepad++ hiện Tiếng Việt thay cho Tiếng Việt, hoặc các ô đen nhỏ? Khi đó bảng mã đang chọn không khớp với file. Thường chỉ cần hai mục trong menu – nếu bạn biết cần mục nào.

Hỗ trợ văn bản và các file sau:

  • CSV
  • TXT
  • JSON
  • XML
  • SRT
  • VTT
  • SMI
  • TSV
  • MD
  • HTML
  • SQL
  • LOG

Ví dụ file xuất từ Excel, bản sao cơ sở dữ liệu, phụ đề hoặc mã nguồn trang web.

Sửa lỗi

  1. Kéo file vào hoặc dán văn bản
  2. Tự động sửa
  3. Sao chép hoặc tải về
hoặc kéo file vào đây
  • Không tải lên. File được sửa ngay trong trình duyệt và không rời khỏi thiết bị của bạn.

  • Máy chủ tại EU. Mojibuster chạy trên máy chủ ở Phần Lan (EU), vì vậy Quy định chung về bảo vệ dữ liệu (GDPR) được áp dụng. Toàn văn GDPR (EUR-Lex, tiếng Anh)

Trước hết hãy kiểm tra bảng mã

Ở góc phải dưới thanh trạng thái, Notepad++ cho biết hiện đang đọc file thế nào, như UTF-8, UTF-8-BOM hay ANSI. Menu Encoding (Mã hóa) có hai loại mục hay bị nhầm lẫn:

  • ANSI, UTF-8, UTF-8-BOM (phần trên của menu): Notepad++ đọc lại các byte hiện có mà không đổi file – chỉ là cách hiển thị.
  • Convert to ANSI, Convert to UTF-8 … (phần dưới của menu): Notepad++ ghi các ký tự theo bảng mã mới. Khi lưu, file bị thay đổi.

Trường hợp 1: hiện á thay cho á

File lưu theo UTF-8 nhưng Notepad++ đọc như ANSI. Chọn Encoding rồi UTF-8, ký tự sẽ hiện đúng ngay. Đừng chuyển đổi: «Convert to UTF-8» sẽ lưu luôn đống ký tự lỗi á thành ký tự thật.

Trường hợp 2: ô vuông hoặc chữ lạ thay cho tiếng Việt

File lưu theo ANSI (Windows-1258 hoặc Windows-1252) nhưng đang đọc như UTF-8. Trước hết chọn Encoding, Character sets, Vietnamese, Windows-1258 để ký tự hiện đúng, rồi chọn Convert to UTF-8. Sau khi lưu, file là UTF-8.

Trường hợp 3: chữ vỡ nằm sẵn trong file

Nếu chọn UTF-8 mà Notepad++ vẫn hiện á, thì chữ hỏng đã được lưu rồi. Khi đó không mục nào trong menu giúp được một cách đáng tin – nhất là khi dòng đúng và dòng sai trộn lẫn hoặc chữ bị mã hóa hai lần. Hãy thả file vào Mojibuster ở trên: nó chỉ sửa những chỗ hỏng và cho bạn xem từng thay đổi. Với chữ gõ bằng font cũ (TCVN3, VNI), dùng sửa lỗi font tiếng Việt.

File đã lưu cả lỗi vào trong

Trước

B¶n dÞch ®· kiÓm tra: ViÖt Nam, ng­êi, ®­êng, Hµ Néi – tÊt c¶ ®Òu ®óng.

Sau

Bản dịch đã kiểm tra: Việt Nam, người, đường, Hà Nội – tất cả đều đúng.

Luôn tạo file mới bằng UTF-8

Trong Settings, Preferences, New Document, đặt bảng mã cho file mới là UTF-8. Với file cần mở bằng Excel thì UTF-8-BOM tốt hơn – xem thêm lỗi font Excel và CSV. Script cho Windows PowerShell 5.1 cũng cần BOM, xem PowerShell.

Câu hỏi thường gặp

UTF-8 và UTF-8-BOM khác nhau thế nào?

Cả hai lưu ký tự giống nhau. UTF-8-BOM ghi thêm ba byte vô hình ở đầu file, nhờ đó Excel và các chương trình cũ nhận ra UTF-8.

Vì sao Notepad++ đôi khi nhận diện sai bảng mã?

File không có BOM không chứa thông tin về bảng mã, nên Notepad++ phải đoán. Với file ngắn và ít chữ có dấu, nó sai nhiều hơn.

Có chuyển nhiều file cùng lúc được không?

Trong Notepad++ chỉ làm được bằng macro hoặc plugin. Với Mojibuster là từng file một – mỗi file xong trong vài giây.

Hướng dẫn khác