Prosíme přihlašte se nebo zaregistrujte.

Přihlašte se svým uživatelským jménem a heslem.
Vaše pomoc je stále potřeba!

Novinky: Děkujeme všem návštěvníkům fóra, kteří ochotně radí ostatním. Vaše práce je velmi potřebná a vážíme si jí.

Autor Téma: Ubuntu 14.04 Nautilus - převod utf8 na cp1250 a vice versa.  (Přečteno 4842 krát)

juwa2

  • Stálý člen
  • ***
  • Příspěvků: 879
  • Karma: +66/-19
    • Zobrazit profil
V rámci "vylepšení" Nautilu jsem si doinstaloval balíček "nautilus-actions-extra" jehož součástí je možnost převodu textového souboru z utf8 na windows kódování (ansi) a naopak. Jelikož používám dualboot Ubuntu - W7, tak tento převod hojně využívám. Proto jsem uvítal možnost to nyní dělat jednodušeji a praktičtěji přímo z kontextové nabídky v Nautilu.
Když jsem to ale zkusil, text byl zkomolený. Důvod je zřejmý. K převodu je využit iconv a v příkazu je použito cp12562utf8 (utf82cp1256).
Je to tedy nastavené na angličtinu, kterou to převede korektně. Pokud se ale v textu objeví cz diakritika, jsou výsledkem chybné znaky. Náprava je snadná. V příslušném skriptu místo 1256 napsat 1250. Zbývala pouze "maličkost". Najít ho.
Soubor je zde /usr/share/nautilus-python/extension/advanced.py
(upravíme 1256 > 1250 pouze v příkazech v horní části (položky def), a potom pouze v labelech položek zobr. v menu.
V ostatních položkách v dolní části zůstane 1256 !!!)
Po úpravě převod probíhá bezchybně. Snad se tento postup bude někomu hodit.  ;)

Myrmica

  • Závislák
  • ****
  • Příspěvků: 1654
  • Karma: +158/-9
    • Zobrazit profil
    • MYRMICA
Re:Ubuntu 14.04 Nautilus - převod utf8 na cp1250 a vice versa.
« Odpověď #1 kdy: 22 Červen 2015, 06:39:28 »
Otázka je však, proč převádět to kódování, když W7 nativně pracují v UTF8? Kódování win1250 se používá pouze pro kompatibilitu se starými aplikacemi.
Stolní strojek: OS– UBUNTU 16.04 x86_64, MB ASUS P8 Z68-V/GEN3, Intel® Core™ i5-3470 CPU @ 3.20GHz × 4 , 16GiB DDR3, GeForce GTX 670...
Notebook: ASUS U53Jc OS– UBUNTU 16.04 x86_64, Windows 7, Processor – Intel Core i5-460M (2,53 GHz), Graphics – switchable NVIDIA GeForce 310M and Intel GMA HD

juwa2

  • Stálý člen
  • ***
  • Příspěvků: 879
  • Karma: +66/-19
    • Zobrazit profil
Re:Ubuntu 14.04 Nautilus - převod utf8 na cp1250 a vice versa.
« Odpověď #2 kdy: 22 Červen 2015, 07:05:27 »
Protože Windows sice utf8 zobrazuje správně, ale soubory .txt vytvořené ve Windows jsou ANSI.
Pokud je otevřeš v Ubuntu např. v Geditu (poklepáním na soubor), i když je nastaveno automatické rozpoznávání, nepozná že je to ANSI a znaky jsou zkomolené. Musel bys napřed spustit Gedit > soubor > otevřít jako > ANSI. Proto je vhodné si textové soubory z Windows převést do utf8.
A to stejné se týká titulků .srt. V Ubuntu si vytvořím a přidám do filmu titulky. Ty jsou pochopitelně utf8. Ale film potom přehrávám (přes DLNA) v TV, která zase vyžaduje ANSI - jinak jsou cz znaky zkomolené.
A všechny titulky stažené např. z Titulky.cz jsou zase ANSI. Pokud je chci přehrávat v Ubuntu ve VLC, musím je převést na utf8 - jinak jsou zase zkomolené.....
« Poslední změna: 22 Červen 2015, 11:04:21 od juwa2 »

Myrmica

  • Závislák
  • ****
  • Příspěvků: 1654
  • Karma: +158/-9
    • Zobrazit profil
    • MYRMICA
Re:Ubuntu 14.04 Nautilus - převod utf8 na cp1250 a vice versa.
« Odpověď #3 kdy: 22 Červen 2015, 15:18:34 »
V UTF8 umí ve Win7 ukládat i obyčejný notepad. Nejspíše máš starý software, který to neumí.
Pokud jde o titulky, pak je na vině spíše ta TV než Win7 či Ubuntu.
Až budu doma zkusim to DLNA s titulky (zatím jsem je nepotřeboval ;) ) Stále mám dojem, že kódování titulků jde někde na DLNA nastavit, ale možná se pletu.
Stolní strojek: OS– UBUNTU 16.04 x86_64, MB ASUS P8 Z68-V/GEN3, Intel® Core™ i5-3470 CPU @ 3.20GHz × 4 , 16GiB DDR3, GeForce GTX 670...
Notebook: ASUS U53Jc OS– UBUNTU 16.04 x86_64, Windows 7, Processor – Intel Core i5-460M (2,53 GHz), Graphics – switchable NVIDIA GeForce 310M and Intel GMA HD

Myrmica

  • Závislák
  • ****
  • Příspěvků: 1654
  • Karma: +158/-9
    • Zobrazit profil
    • MYRMICA
Re:Ubuntu 14.04 Nautilus - převod utf8 na cp1250 a vice versa.
« Odpověď #4 kdy: 22 Červen 2015, 22:51:54 »
Tak s tím nastavením kódování se asi pletu, ale TV mi žere UTF8  titulky, na rozdíl od CP1250..
Stolní strojek: OS– UBUNTU 16.04 x86_64, MB ASUS P8 Z68-V/GEN3, Intel® Core™ i5-3470 CPU @ 3.20GHz × 4 , 16GiB DDR3, GeForce GTX 670...
Notebook: ASUS U53Jc OS– UBUNTU 16.04 x86_64, Windows 7, Processor – Intel Core i5-460M (2,53 GHz), Graphics – switchable NVIDIA GeForce 310M and Intel GMA HD

juwa2

  • Stálý člen
  • ***
  • Příspěvků: 879
  • Karma: +66/-19
    • Zobrazit profil
Re:Ubuntu 14.04 Nautilus - převod utf8 na cp1250 a vice versa.
« Odpověď #5 kdy: 23 Červen 2015, 18:46:23 »
Zkrátka - možnost si to jednoduše převést přímo z kontext menu se docela hodí.... ;)