Czy istnieje sposób, aby ustawić system Windows 7 na globalne używanie UTF-8 w standardzie?
to naprawdę denerwujące, że każdy edytor tekstowy może z niego korzystać.
Czy istnieje sposób, aby ustawić system Windows 7 na globalne używanie UTF-8 w standardzie?
to naprawdę denerwujące, że każdy edytor tekstowy może z niego korzystać.
Odpowiedzi:
Krótka odpowiedź brzmi: nie, nie jest to możliwe .
Mówiąc dokładniej, obawiam się, że nie znajdziesz globalnej opcji kodowania w Windows 7, która pozwala obojgu 1) ustawić globalne ustawienie domyślne, które 2) wszystkie wymienione aplikacje będą przestrzegane.
Chciałbym również zapytać, jaki jest tutaj problem, który próbujesz rozwiązać?
Od aplikacji zależy, czy będą używać wewnętrznego kodu Unicode do reprezentowania danych. Chociaż korzystanie z Unicode jest zalecane , możesz nigdy nie mieć pewności, że wszystkie twoje aplikacje faktycznie go obsługują.
Co można zrobić , to jednak zmienić domyślne kodowanie znaków dla każdej z wymienionych aplikacji:
UTF-16LE
.
Nie jest to możliwe głównie dlatego, że system Windows nie zezwala na UTF-8 jako systemową stronę kodową ANSI, mimo że ma stronę kodową ANSI dla UTF-8, strona kodowa 65001 . Wydaje się, że jest kilka powodów:
WriteFile()
API na przykład zwraca niepoprawny wynik pod kodowej 65001 pęcherzyki, które się przez cały kod biblioteki powołując się na to, takie jak write()
.Nieżyjący już Michael Kaplan, który pracował nad internacjonalizacją w Microsoft, miał blog „Sorting it all Out” , zawierający kilka postów na powiązane tematy. Wysłałem mu e-mailem bezpośrednio o niektórych z tych obaw w ciągu dnia.