Discussion:
slrn i LC_*
(Wiadomość utworzona zbyt dawno temu. Odpowiedź niemożliwa.)
Marcin Debowski
2021-04-07 03:52:23 UTC
Permalink
Slrn wyświetla wszystkie znaki diakrytyczne (nie tylko ogonki) jako "?"
jeśli w środowisku ustawiona jest choć jedna zmienna typu LC_. Ktos ma
pomysł dlaczego?
--
Marcin
Jarosław Sokołowski
2021-04-07 09:46:53 UTC
Permalink
Post by Marcin Debowski
Slrn wyświetla wszystkie znaki diakrytyczne (nie tylko ogonki) jako "?"
jeśli w środowisku ustawiona jest choć jedna zmienna typu LC_. Ktos ma
pomysł dlaczego?
Rozumiem, że wcześniej było dobrze. W jakich okolicznościach się zepsuło?
Jeśli w .slrnrc ustawione jest "charset display utf-8", to wtedy zmiennym
trzeba przypisywać odpowiednie wartości -- np. LC_WHATEVER=pl_PL.UTF-8.
Inaczej, na przykład po przypisani LC_WHATEVER=pl_PL, będą krzaczki lub
znaki zapytania. Oczywiście całe środowisko musi być unikodowe, w tym
muszą istnieć definicje dla pl_PL.UTF-8.
--
Jarek
Marcin Debowski
2021-04-07 12:50:28 UTC
Permalink
Post by Jarosław Sokołowski
Post by Marcin Debowski
Slrn wyświetla wszystkie znaki diakrytyczne (nie tylko ogonki) jako "?"
jeśli w środowisku ustawiona jest choć jedna zmienna typu LC_. Ktos ma
pomysł dlaczego?
Rozumiem, że wcześniej było dobrze. W jakich okolicznościach się zepsuło?
Jeśli w .slrnrc ustawione jest "charset display utf-8", to wtedy zmiennym
trzeba przypisywać odpowiednie wartości -- np. LC_WHATEVER=pl_PL.UTF-8.
Inaczej, na przykład po przypisani LC_WHATEVER=pl_PL, będą krzaczki lub
znaki zapytania. Oczywiście całe środowisko musi być unikodowe, w tym
muszą istnieć definicje dla pl_PL.UTF-8.
Łączę się do serwera z 2ch różnych kompów. Jeden jest pod Ubuntu, drugi
pod Mintem. Środowisko wydaje się być dziedziczone ze środowiska
terminala, którym się łącze. I tak na tym z Minta, jedyne zmienne
"localowe" to:

LANGUAGE i LANG, i tu nie musi być wcale pl_PL.UTF-8 a np. en_SG.UTF-8 i
slrn wyświetla ok w tym poprawne ogonki.

Natomiast pod Ubuntu, gdzieś ustawilo mi całe stado ww. LC_WHATEVER:
LC_ADDRESS=en_US.UTF-8
LC_NAME=en_US.UTF-8
LC_MONETARY=en_US.UTF-8
LC_PAPER=en_US.UTF-8
LC_IDENTIFICATION=en_US.UTF-8
LC_TELEPHONE=en_US.UTF-8
LC_MEASUREMENT=en_US.UTF-8
LC_TIME=en_US.UTF-8
LC_NUMERIC=en_US.UTF-8

poza tym, są tam też identycznie ww. LANG i LANGUAGE i są takie same jak
dla Minta.

I teraz, póki nie zrobię każdej jednej unset:
unset LC_IDENTIFICATION LC_TIME LC_ADDRESS LC_NAME LC_MEASUREMENT LC_NUMERIC LC_MONETARY LC_PAPER LC_TELEPHONE

to slrn głupieje (albo coś).
--
Marcin
Jarosław Sokołowski
2021-04-08 10:03:36 UTC
Permalink
Post by Marcin Debowski
Łączę się do serwera z 2ch różnych kompów. Jeden jest pod Ubuntu, drugi
pod Mintem. Środowisko wydaje się być dziedziczone ze środowiska
terminala, którym się łącze. I tak na tym z Minta, jedyne zmienne
LANGUAGE i LANG, i tu nie musi być wcale pl_PL.UTF-8 a np. en_SG.UTF-8 i
slrn wyświetla ok w tym poprawne ogonki.
LC_ADDRESS=en_US.UTF-8
LC_NAME=en_US.UTF-8
LC_MONETARY=en_US.UTF-8
LC_PAPER=en_US.UTF-8
LC_IDENTIFICATION=en_US.UTF-8
LC_TELEPHONE=en_US.UTF-8
LC_MEASUREMENT=en_US.UTF-8
LC_TIME=en_US.UTF-8
LC_NUMERIC=en_US.UTF-8
poza tym, są tam też identycznie ww. LANG i LANGUAGE i są takie same jak
dla Minta.
unset LC_IDENTIFICATION LC_TIME LC_ADDRESS LC_NAME LC_MEASUREMENT LC_NUMERIC LC_MONETARY LC_PAPER LC_TELEPHONE
to slrn głupieje (albo coś).
Może gnomiarze (znowu) coś namieszali? U mnie w Kubuntu (konsole)
opisanego zjawiska nie widać. Ani whateverów nie ustawia, ani
znaków zapytania nie sadzi. Może spróbować w oldskulowym xterm?
--
Jarek
Marcin Debowski
2021-04-10 02:09:44 UTC
Permalink
Post by Jarosław Sokołowski
Post by Marcin Debowski
Łączę się do serwera z 2ch różnych kompów. Jeden jest pod Ubuntu, drugi
pod Mintem. Środowisko wydaje się być dziedziczone ze środowiska
terminala, którym się łącze. I tak na tym z Minta, jedyne zmienne
LANGUAGE i LANG, i tu nie musi być wcale pl_PL.UTF-8 a np. en_SG.UTF-8 i
slrn wyświetla ok w tym poprawne ogonki.
LC_ADDRESS=en_US.UTF-8
LC_NAME=en_US.UTF-8
LC_MONETARY=en_US.UTF-8
LC_PAPER=en_US.UTF-8
LC_IDENTIFICATION=en_US.UTF-8
LC_TELEPHONE=en_US.UTF-8
LC_MEASUREMENT=en_US.UTF-8
LC_TIME=en_US.UTF-8
LC_NUMERIC=en_US.UTF-8
poza tym, są tam też identycznie ww. LANG i LANGUAGE i są takie same jak
dla Minta.
unset LC_IDENTIFICATION LC_TIME LC_ADDRESS LC_NAME LC_MEASUREMENT LC_NUMERIC LC_MONETARY LC_PAPER LC_TELEPHONE
to slrn głupieje (albo coś).
Może gnomiarze (znowu) coś namieszali? U mnie w Kubuntu (konsole)
Używam Xfce. Nb. na tym kompie jest coś specyficznego z localami, bo już
mi druga instalacja Ubuntu coś miesza. Kupiłem sobie tego laptopa,
używkę jako rezerwowy (Dell Studio 15), ze 4 lata temu. Zainstalowałem
Ubuntu i jakiś dziwny język zaczął mi się pojawiać ale tylko w nazwach
dni tygodnia i miesięcy. Pomyślałem, że może gdzieś coś przez pomyłkę
odhaczyłem przy instalacji i w olałem sprawę. Były problemy z slrn, ale
nie korzystałem często z tego laptopa. Teraz nie dawno zainstalowałem na
czysto nową wersję i dokładnie to samo, tak jakby Ubuntu odczytywało
locale gdzieś ze sprzętu.
Post by Jarosław Sokołowski
opisanego zjawiska nie widać. Ani whateverów nie ustawia, ani
znaków zapytania nie sadzi. Może spróbować w oldskulowym xterm?
Sprawdzałem z xterm'em, dokładnie to samo. Slrn wydaje się głupieć, albo
to taka funkcjonalność, której nie rozumiem. Na szczęście daje się to
"naprawić".
--
Marcin
Jarosław Sokołowski
2021-04-10 11:54:12 UTC
Permalink
Post by Marcin Debowski
Używam Xfce. Nb. na tym kompie jest coś specyficznego z localami, bo już
mi druga instalacja Ubuntu coś miesza. Kupiłem sobie tego laptopa,
używkę jako rezerwowy (Dell Studio 15), ze 4 lata temu. Zainstalowałem
Ubuntu i jakiś dziwny język zaczął mi się pojawiać ale tylko w nazwach
dni tygodnia i miesięcy. Pomyślałem, że może gdzieś coś przez pomyłkę
odhaczyłem przy instalacji i w olałem sprawę. Były problemy z slrn, ale
nie korzystałem często z tego laptopa. Teraz nie dawno zainstalowałem na
czysto nową wersję i dokładnie to samo, tak jakby Ubuntu odczytywało
locale gdzieś ze sprzętu.
Tylko jak ze sprzętu? Może z EFI? Tutaj chyba coś się da przemycić
do samego Linuksa. Ale to przez GRUB. Na początek warto zobaczyć
co pokaże "cat /proc/cmdline". Pewnie nic szczególnego, ale w tych
okolicach bym zaczął poszukiwania. Jeszcze znalazłem u siebie pliki
/sys/firmware/efi/efivars/PlatformLang-* -- może coś z nich wynika.
--
Jarek
Marcin Debowski
2021-04-15 03:15:04 UTC
Permalink
Post by Jarosław Sokołowski
Post by Marcin Debowski
Używam Xfce. Nb. na tym kompie jest coś specyficznego z localami, bo już
mi druga instalacja Ubuntu coś miesza. Kupiłem sobie tego laptopa,
używkę jako rezerwowy (Dell Studio 15), ze 4 lata temu. Zainstalowałem
Ubuntu i jakiś dziwny język zaczął mi się pojawiać ale tylko w nazwach
dni tygodnia i miesięcy. Pomyślałem, że może gdzieś coś przez pomyłkę
odhaczyłem przy instalacji i w olałem sprawę. Były problemy z slrn, ale
nie korzystałem często z tego laptopa. Teraz nie dawno zainstalowałem na
czysto nową wersję i dokładnie to samo, tak jakby Ubuntu odczytywało
locale gdzieś ze sprzętu.
Tylko jak ze sprzętu? Może z EFI? Tutaj chyba coś się da przemycić
do samego Linuksa. Ale to przez GRUB. Na początek warto zobaczyć
co pokaże "cat /proc/cmdline". Pewnie nic szczególnego, ale w tych
okolicach bym zaczął poszukiwania. Jeszcze znalazłem u siebie pliki
/sys/firmware/efi/efivars/PlatformLang-* -- może coś z nich wynika.
No właśnie tez nie wiem. Uefi tam nie ma nb. Być może coś jednak gdzieś
po drodze pokręciłem, choć trochę wydaje mi się to wszystko dziwne.
--
Marcin
Loading...