# [SOLVED] Polskie znaki - pobierane/odtwarzane pliki

## Piotrek_ZS

Witam i od razu zaznaczam, że dawno temu miałem Gentoo ale gdzieś z 80% nie pamiętam... Wydaje mi się, że kiedyś to działało. Po około 8 latach postawiłem znowu i...

Problem dotyczy pobieranych plików przez Chromium oraz odtwarzania plików przez MPlayer / SMPlayer.

Chromium - przykładowo, pobieram plik Aśka.zip z maila. Pobiera mi ten plik jako AsĚka.zip czyli kompletnie sypie polskie znaki.

MPlayer / SMPlayer nie odtworzy mi pliku, jeżeli nazwa zawiera polskie znaki. Przykład, chcę odtworzyć plik o nazwie Żółtodzioby.mkv. Klikam i nie startuje, z logów wynika co następuje:

 *Quote:*   

> Playing /home/piotrek/Filmy/���todzioby.mkv.
> 
> File not found: '/home/piotrek/Filmy/���todzioby.mkv'
> 
> Failed to open /home/piotrek/Filmy/���todzioby.mkv.

 

Nie wiem czy te kwestie są ze sobą powiązane.

Locale:

 *Quote:*   

> LANG=pl_PL.iso88592
> 
> LC_CTYPE="pl_PL.iso88592"
> 
> LC_NUMERIC="pl_PL.iso88592"
> ...

 

Jeżeli zmienię locale na UTF8 jest jeszcze gorzej - wtedy część KDE Plasma znowu jest po angielsku, a pliki w Chrome z polskimi znakami ściągają się jako plik "pobrane", czyli bez sensu, bez nazwy. Z kolei po zmianie na UTF8 w Dolphinie wcześniej pobrane pliki mają poprawne znaki.

Paranoja.Last edited by Piotrek_ZS on Mon Aug 06, 2018 8:51 pm; edited 1 time in total

----------

## mir3x

Musisz używać pl_PL.UTF-8

Tu jest opisane co i jak:

https://wiki.gentoo.org/wiki/Localization/Guide

----------

## Piotrek_ZS

Czyli jeżeli teraz ustawię na UTF8 [flagi USE etc.] i zrobię emerge -uDn @world to powinno wszystko działać?

----------

## mir3x

Nic nie musisz emergować, masz ustawić nie na UTF8 ale na pl_PL.UTF-8

- Dodaj linie pl_PL UTF-8 do /etc/locale.gen

- uruchom locale-gen

-potem: eselect locale list (jak używasz systemd to nie zadziała, googluj)

znajdz pl_PL.utf8

-eselect locale set numer_ktory_znalazłes

- jak namotałeś wcześniej jakimiś zmianami w jakimś bashrc czy czymś - to teraz trzeba je odszczekać

- zaloguj się ponownie

jak wpiszesz echo $LANG - to ma wyskoczyć pl_PL.UTF-8

----------

## Piotrek_ZS

 *Quote:*   

> gentoo /home/piotrek # locale-gen 
> 
>  * Generating 3 locales (this might take a while) with 4 jobs
> 
>  * Bad entry in locale.gen: 'pl_PL.UTF-8 '; skipping
> ...

 

Wcześniej, jak pisałem w pierwszym poście, miałem pl_PL.UTF8 UTF-8, które się wygenerowały, zastosowałem pl_PL.UTF8 UTF-8 i efekty były takie:

 *Quote:*   

> Jeżeli zmienię locale na UTF8 jest jeszcze gorzej - wtedy część KDE Plasma znowu jest po angielsku, a pliki w Chrome z polskimi znakami ściągają się jako plik "pobrane", czyli bez sensu, bez nazwy. Z kolei po zmianie na UTF8 w Dolphinie wcześniej pobrane pliki mają poprawne znaki. 

 

Więc to chyba nie jest tak od ręki.

----------

## mir3x

```
"Bad entry in locale.gen: 'pl_PL.UTF-8 '; skipping "
```

Toż napisało że nie wygenerowało bo wstawiałeś coś nie tak.

Miałeś dodać dokładnie: pl_PL UTF-8 do locale.gen. W eselect wybrać pl_PL.utf8.

Kiedy wpiszesz 

```
locale
```

 w konsoli - to masz zobaczyć coś takiego w odpowiedzi:

```
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=
```

 Dopóki tego nie będzie to będą krzaki.

Tak mi się przypomniało w poratage make.conf powinno być LANG="pl_PL" ( będzie to ściagać automatycznie polskie pakiety, ale zgaduje że masz to ustawione skoro po częsci widzisz polskie znaki)

Tak sobie myśle że jak utworzysz folder o nazwie "Pobrane" ( KDE automatycznie utworzy jak ustawisz locale) to być może chrome zacznie normalnie ściagać

Zobacz żółtodzioby normalnie działają:

```
cp Strike.Back.S06E05.720p.HDTV.x264-MTB\[eztv\].mkv Żółtodzioby.mkv

mirex@luna ~/Downloads $ mplayer Żółtodzioby.mkv 

Creating config file: /home/mirex/.mplayer/config

MPlayer 1.3.0-7.3.0 (C) 2000-2016 MPlayer Team

Playing Żółtodzioby.mkv.

libavformat version 57.83.100 (external)

libavformat file format detected.

[lavf] stream 0: video (h264), -vid 0

[lavf] stream 1: audio (ac3), -aid 0
```

----------

## Piotrek_ZS

LANG="pl_PL" nie miałem w make.conf...

Niemniej idąc za Twoimi radami ustawiłem pl_PL UTF-8 do locale.gen. W eselect wybrałem pl_PL.utf8

 *Quote:*   

> eselect locale list
> 
> Available targets for the LANG variable:
> 
>   [1]   C
> ...

 

locale zaraz po zmianie:

 *Quote:*   

> LANG=pl_PL.utf8
> 
> LC_CTYPE="pl_PL.utf8"
> 
> LC_NUMERIC="pl_PL.utf8"
> ...

 

Po wylogowaniu i zalogowaniu sytuacja jak poprzednio. Mało tego, po wpisaniu locale wyświetla się

 *Quote:*   

> piotrek@gentoo ~ $ locale
> 
> locale: Cannot set LC_CTYPE to default locale: No such file or directory
> 
> locale: Cannot set LC_MESSAGES to default locale: No such file or directory
> ...

 

A wybrane jest pl_PL.utf8.

Więc ja już nie wiem wtf i skąd w ogóle te błędy...

A KDE utworzyło folder Pobrane i do niego ściąga, problem w tym że pliki mają nazwę "pobrane".

----------

## mir3x

No najpewniej coś namotałeś wcześniej.

Możesz założyć nowego użytkownika:

lognij się do kde na nowym użytkowniku - jeśli wszystko jest w porządku - coć jest namotane w plikach starego użytkownika 

- jeśli nie jest w porządku - root coś namotał - np dodałeś coś do bashrc w /etc/bash/bashrc (najlepiej sobie przypomnieć co zmieniałeś albo posortuj po datach modyfikacji)

Prawdopodobnie na nowym użytkowniku wszystko będzie dobrze - wtedy najłatwiej przegrać pliki konfiguracyjne programów których nie chce ci się konfigurować na nowo i skasować starego użytkownika - tylko kopiuj pliki jako uzytkownik, nie root.

(pamietaj że pliki konfiguracyjne też są w $HOME/.config  nie tylko w głównym katalogu)

----------

## Piotrek_ZS

Pomogło, nowy użytkownik działa poprawnie.

Dodałem wcześniej jeszcze LANG="pl_PL" do /etc/env.d/02locale, to też miałem źle ustawione, ale dopiero na nowym userze wszystko działa jak powinno.

Reszta wedle wcześniejszych instrukcji, temat w sumie rozwiązany.

----------

