Mac OS, ssh, pry - problemy z polskimi znakami

Cześć, ostatnio przerzuciłem się na Maca i mam dwa problemy z polskimi znakami. Pierwszy z nich to dziwne zachowanie znaków z altem kiedy jestem połączony z hostem przez SSH (ten sam host przy połączeniu z komputera z linuxem zachowuje się poprawnie). alt + o zamiast wpisać “ó” zamienia tekst na początku lini (“uzytkownik@host”) na "(arg: 3), a jak po tym wcisnę jakikolwiek znak to wpisuje się on potrójnie. Pozostałe polskie znaki (ąęłśżźćń) nie dają żadnego efektu. Jak zaznaczę w opcjach terminala checkbox “Use option as a meta key” (tylko tyle udało mi się znaleźć w Google) to ALT + n wyrzuca “^[n”, pozostałe znaki nie reagują w ogóle.

Drugi problem mam z konsolą z pry - jeśli jakieś wyrażenie zwraca mi wynik, który mieści się na ekranie to polskie znaki wyświetlają się poprawnie. Ale jeśli wynik wyrażenia (np. jakakolwiek większa tablica etc.) nie mieści się na ekranie i zostanie potraktowany lessem to polskie znaki już nie wyświetlają się poprawnie (zamiast ó mam <C3><B3>, zamiast ż jest <C5><BC> itd.). W “czystym” irb zamiast polskich znaków mam kod w formacie \uXXXX (ą - \u0105, ł - \u0142 itp.).

Problem ewidentnie musi leżeć po mojej stronie, gdyż pozostałe komputery pracujące na tym samym hoście nie mają problemów :wink: Jedyna różnica jest taka, że pozostałe pracują na Linuxach :wink:

używasz standardowego terminala?
jakie masz ustawione kodowanie znaków w terminal/preferencje/ustawienia/zaawansowane?

Dokładnie identyczny problem mam w standardowym terminalu i w iTerm. W terminalu mam kodowanie Unicode (UTF-8), w iTerm nie mogę doklikać się ustawień kodowania :wink:

“Cmd + ,” => Profiles => Terminal => Character Encoding

iTerm też mam Unicode (UTF-8).

W sekcji “Keys”, masz jeszcze ustawienie co robi option(alt) key (na samym dole). Z defultu jest chyba ustawione na “+Esc”, ja mam natomiast na “Normal” i wszystko elegancko śmiga

Mam ustawione na Normal, nie działa :wink: Zmieniałem testowo na +Esc, na Meta też i nic. Problem występuje tylko po SSH, w samym terminalu “u siebie” wszystko działa poprawnie.

Próbowałeś na wielu serwerach po SSH, czy tylko na jednym, konkretnym? Może to problem z konfiguracją środowiska po drugiej stronie ($TERM, inputrc, etc?)

Zrobiłem szybki test na http://sdf.org/ i polskie znaki działają poprawnie, więc problem występuje tylko z tym konkretnym serwerem. I tylko z Maca, w tym momencie sprawdziłem z Ubuntu i jest OK.

EDIT: Problem rozwiązany, wystarczyło export LANG=pl_PL.UTF-8 na hoście :wink: