Tôi có kho lưu trữ Mercurial chạy trên Apache với mod_wsgi. Các kho lưu trữ có tất cả tên tệp được mã hóa trong windows-1251. Mã hóa này được sử dụng vì lý do lịch sử: chúng được chuyển đổi thành đồng bóng từ svn, windows-1251 là mã hóa cửa sổ mặc định cho miền địa phương Nga.
Bây giờ các lập trình viên muốn sử dụng công cụ Crucible để xem lại mã. Nó không thể nhấn mạnh tên tệp trong bất kỳ mã hóa nào khác ngoài utf-8. Vì vậy, tôi cần chuyển đổi chúng từ windows-1251 sang utf-8. Có ai biết cách để làm điều này không? Phần mở rộng chuyển đổi Mercurial không có tùy chọn để chuyển đổi mã hóa.
hgweb.config:
[web]
#encoding = UTF-8
encoding = windows-1251
#allow_archive = gz, zip, bz2
allow_archive = zip
allow_push = *
push_ssl = false
[extensions]
[collections]
/data/mercurial = /data/mercurial
encoding = windows-1251
để encoding = UTF-8
tên tập tin chỉ cần thực hiện không đọc được. Điều này là do chúng được lưu trữ trong windows-1251. "UTF-8" os.envir ["HGENCODING"] = "UTF-8" bằng với cài đặt này.