Page 1 of 1

[SOLVED] Kodowanie w konsoli [bez Xów] i Terminalu

Posted: Mon Nov 16, 2009 11:49 pm
by GHunterPL
Witam.
Problem może być banalny, ale jakoś sobie nie radzę. Co prawda towarzyszy mi od instalacji Gentoo - a minął niedawno rok - i jakoś teraz zaczął mnie irytować.
Otóż:
W czystej konsoli nie mogę ani wpisywać, ani odczytywać PL znaków- pojawiają się krzaki.
W Xach, w terminalu, co prawda pl znaki wpisywać mogę. Jeżeli stworzę plik o nazwie "ążś", to system odczyta go poprawnie. Jeżeli dajmy na to mam katalog pobrany z drugiego komputera [Windows] i są w jego nazwie pl naki, to pod terminalem nazwa wygląda mniej więcej tak:

Code: Select all

http://a.imagehost.org/0838/Zrzut_ekranu-2.png
Przy próbie nagrania czegokolwiek ode mnie na płytę czy też skopiowania przez sieć/pendrive, na Windowsie są krzaki w nazwach.
Stosuję flagę unicode...

Locale:

Code: Select all

ghunter@notebook ~ $ locale
LANG=pl_PL
LC_CTYPE="pl_PL"
LC_NUMERIC="pl_PL"
LC_TIME="pl_PL"
LC_COLLATE="pl_PL"
LC_MONETARY="pl_PL"
LC_MESSAGES="pl_PL"
LC_PAPER="pl_PL"
LC_NAME="pl_PL"
LC_ADDRESS="pl_PL"
LC_TELEPHONE="pl_PL"
LC_MEASUREMENT="pl_PL"
LC_IDENTIFICATION="pl_PL"
LC_ALL=pl_PL
W /etc/locale.gen mam wpisy

Code: Select all

pl_PL ISO-8859-2
pl_PL.UTF-8 UTF-8
Przeglądałem ten poradnik, niby całość ustawiona jak kazali, a tu zonk.
Lubię pracować w konsoli- wtedy najlepiej mi się pisze, tylko pisanie bez PL znaków jest irytujące. W terminalu też by się przydały, i jakby nie patrzeć wypadałoby, żeby na windowsie dziewczyna mogła bez problemów odczytywać pliki.
Dodam jeszcze- w demonie odpalony jest proftpd, gdy zaloguję się z windowsa na ftp również w nazwach plików mam krzaki.
Nie prosiłbym o pomoc, gdybym nie był naprawdę zdesperowany i zagubiony...
Pomocy :-(

Posted: Tue Nov 17, 2009 10:47 am
by SlashBeast
locale daj na pl_PL.UTF-8

console font na lat2-16

keymap na pl2

dodaj ncurses slang i unicode do flag use

emerge -N @world

i tyle.


Co do proftpd, normalne zachowanie, windows chce polskie znaki w cp1250, a Ty mu serwujesz w iso czy utf8, zawsze beda krzaki. Uzywanie polskich znakow, znakow specjalnych czy spacji w nazwach plikow to proszenie sie o problemy.

Posted: Tue Nov 17, 2009 9:08 pm
by soban_
Mozesz sprobowac moim skryptem to zrobic, jednak wczesniej zajrzyj do niego zebym Ci czegos nie ruszyl czego nie potrzebujesz (oczywiscie robi tez backupa konfigow):

Code: Select all

wget www.soban.pl/utf8.sh && chmod +x utf8.sh && ./utf8.sh
To co podal @SlashBeast (tutaj podkreslam ze nalezy dodac te flagi - ncurses slang i unicode - poniewaz moj skrypt nie rusza make.conf) to jest ok ale dodam ze:

Code: Select all

revdep-rebuild --soname libncurses.so.5
revdep-rebuild --soname libslang.so.1
To trzeba wykonac po wczesniej rekompilacji ncurses z odpowiednimi juz ustawieniami. Jesli zas chodzi o programy typu mplayer to ja uzywam w nich cp1250 bo inaczej napisy wygladaja troche kijowo - chyba ze w np app-text/qnapi ustawi sie automatycznie konwertowanie napisow na UTF-8, czego nie polecam bo jesli uzyjemy ich w jakims programie z Windowsa to beda w druga strone krzaczki.
Skrypt opiera sie na nastepujacych linkach:
http://www.gentoo.org/doc/pl/utf-8.xml oraz http://www.gentoo.org/doc/pl/guide-localization.xml . Ewentualnie google + troche wlasnych kombinacji jak ze spolszczeniem man'a.
A i jeszcze w maku:
LINGUAS="pl"
LANGUAGE=48
Local powinien tak wygladac

Code: Select all

soban@SoBaN-PC ~ $ locale
LANG=pl_PL.UTF-8
LC_CTYPE="pl_PL.UTF-8"
LC_NUMERIC="pl_PL.UTF-8"
LC_TIME="pl_PL.UTF-8"
LC_COLLATE="pl_PL.UTF-8"
LC_MONETARY="pl_PL.UTF-8"
LC_MESSAGES="pl_PL.UTF-8"
LC_PAPER="pl_PL.UTF-8"
LC_NAME="pl_PL.UTF-8"
LC_ADDRESS="pl_PL.UTF-8"
LC_TELEPHONE="pl_PL.UTF-8"
LC_MEASUREMENT="pl_PL.UTF-8"
LC_IDENTIFICATION="pl_PL.UTF-8"
LC_ALL=pl_PL.UTF-8
Jesli zas chodzi o dysk to /etc/fstab u mnie tak wyglada:
/dev/sda1 /mnt/C ntfs-3g user,locale=pl_PL.UTF-8 0 0
/dev/sda2 /mnt/D ntfs-3g user,locale=pl_PL.UTF-8 0 0
/dev/sda3 / ext3 noatime 0 1
/dev/sda4 /mnt/I ntfs-3g user,locale=pl_PL.UTF-8 0 0
Znaki w folderach Windowsa wygladaja wtedy poprawnie. Dodam jeszcze ze jak laczysz sie przez putty z ssh to musisz zaznaczyc w translation utf8 bo inaczej beda sie dzialy rozne smiensze rzeczy. W kazdym innym programie takim jak konsole z KDE4 czy samym KDE3 nalezy ustawic odpowiednia czcionke w konfiguracji samego srodowiska graficznego. Oczywiscie nalezy tez pamietac o poprawnym ustawieniu /etc/X11/xorg.conf:
....
Section "InputDevice"
Identifier "Keyboard0"
Driver "kbd"
Option "CoreKeyboard"
Option "XkbRules" "xorg"
Option "XkbModel" "pc105"
Option "XkbLayout" "pl"
EndSection
...
Jesli chcemy aby oba alty dzialaly przy pisaniu polskich znakow to ustawiamy "pl2" tak samo to wyglada w /etc/conf.d/keymaps .

Posted: Wed Nov 18, 2009 9:43 pm
by GHunterPL
Dziękuję bardzo :-)
Skrypt działa, bo w terminalu mam pl znaczki. Bez Xów jeszcze nie sprawdzałem.
Do logowania przy SSH musiałem sobie zarzucić zmianę kodowania, ale działa i jest ok.
Wzbudził się taki problem- pociągnęło mi Emacsa. Teraz niektóre pliki, które wcześniej dawał radę od ręki otwierać mousepad, niezbyt chcą się otworzyć. Ale spokojnie, tu już coś wymyślę.
Dziękuję bardzo za pomoc, jesteście niezastąpnieni :-)