Próbuję użyć GHC na winie, aby zbudować jedną z moich aplikacji Haskell dla Windows. Do tej pory działa to dobrze, ale utknąłem z uruchomionym zestawem testowym, który ma być uruchomiony w lokalizacji UTF8 (na przykład LANG=C.utf8
).Zdobądź programy Haskell zakładające lokalizację UTF8 pod winem
Niestety, pod winem, środowisko wykonawcze Haskell zawsze wierzy, że chcę używać kodowej non-unicode:
$ wine ghc -e 'GHC.IO.Encoding.CodePage.localeEncoding'
CP850
$ LANG=C.utf8 wine ghc -e 'GHC.IO.Encoding.CodePage.localeEncoding'
CP437
$ LC_ALL=C.utf8 wine ghc -e 'GHC.IO.Encoding.CodePage.localeEncoding'
CP437
Oprócz zmieniania rzeczywisty kod, aby ustawić kodowanie wszystkich uchwytów: Jak robię Haskell użycie programu UTF-8 (tj kodowej 65001) tutaj?
Ten alternatywny sposób na ustawienie zmiennych środowiskowych może okazać się pomocny. Jeśli, to, środowisko ma z tym coś wspólnego. https://www.winehq.org/docs/wineusr-guide/environment-variables – dfeuer
Nie mam powodu przypuszczać, że zmienne środowiskowe mają wpływ na stronę kodową - niestety. –
Czy próbowałeś też silniejszego 'LC_ALL' zamiast' LANG'? Po prostu wyrzucam tutaj domysły. – dfeuer