-
Notifications
You must be signed in to change notification settings - Fork 1.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changing LOCPATH environment variable does not reinitialize locale subsystem #5815
Comments
|
Hm, I should have looked at that more closely. I think that's right. |
So it appears that what I wrote originally also applies, with slight adjustment, to the variable But getting
|
Yes, LOCPATH seems to be the standard interface (glibc, AIX... uh, z/OS....), so I'll add that. |
Fish has apparently got some monitoring built in to detect locale changes and change encodings accordingly, which is awesome.
But I noticed when working around a locale configuration issue (once mistakenly reported as a Fish bug here: #4935) that
LOCALE_ARCHIVE
is not among them.This means that unfortunately, setting
LOCALE_ARCHIVE
inside one's Fish configuration is insufficient to get certain prompt characters to print correctly, even though subsequent launches of Fish (in whose environmentLOCALE_ARCHIVE
is already set) will have the locale set correctly.To reproduce, simply (1) have Fish launch with a glibc seeking a
locale-archive
file in one directory, which lacks some locales, and change theLOCALE_ARCHIVE
environment variable to one that includes more locales. Then to witness the other problem, (2) change one of the monitored locale environment variables so that Fish attempts to reinitialize locale stuff.Here's a demonstration
Given that Fish's
setlocale()
occurs but fails whenLANG
is reset after settingLOCALE_ARCHIVE
, I worry that some limitation ofglibc
may be involved, but I don't really know how that works. I hope that's not the case, and that this bug report can still be useful. 😳The text was updated successfully, but these errors were encountered: