Fórum Ubuntu CZ/SK
Ostatní => Archiv => Téma založeno: jirihuf 04 Září 2007, 14:40:14
-
S Ubuntu funguju už rok, ale teď mě napadá, že se konečně zeptám...:-)
Doposud jsem byl smířen s tím, že pakliže soubor v ubuntu pojmenuju s českou diakritikou, windows ho nebude umět správně přečíst a protože nezvládne jméno, často ho ani nebude umět kopírovat. Je pak otrava v ubuntu nazývat složky a soubory standardními nespecifickými českými znaky, aby s nimi mohl windows pracovat...
Jak z toho ven?
-
No zadávej, pokud to je možné bez "hacku a carek" - pak s tím ani ve widlích problémy nejsou.
Problém ovšem je, pokud máš třeba 150 mp3 s českými názvy, to už je to přejmenovávání na mašli ;) - ale i to jsem už přestal řešit - když si je přetáhnu do widlí a jsou tam samý čtverečky, tak mi to už nevadí.
Chtělo by to nějaký skript na hromadné přejmenovávání/nahrazování kódování jak souborů, tak názvů složek.
(Jeden skript na překódování do utf-8 textových souborů zde na fóru je: http://forum.ubuntu.cz/viewtopic.php?id=2013 , ale to je vše - a stejně to někdy blbne a po použití je kódování ještě více rozhozené, než bylo...)
-
Jen jsem si říkal, jestli na to není nějaká vychytávka, o které jsem nevěděl. Jako kupříkladu, že by stačilo někde něco doinstalovat a systémy by byly co do znakových sad naprosto kompatibilní...:-)
-
Ideální by bylo nějaké univerzální mezinárodní kódování (utf-8 se tomu docela blíží), ale když si člověk vezme, kolik je jazyků a abeced (zápisů jazyků), tak to je skoro nemožné. No a pak každá větší softwarová firma si založí vlastní znakovou sadu a guláš je připravený...
Proto jak jsem psal - tak to ani nijak neřeším, když to je nějaká hatmatilka, tak si holt ten soubor ani nestahuji, byť by byl jakkoliv zajímavý. Co nejvíce používám utf-8 a soubory se snažím zadávat bez diakritiky nebo anglicky.
-
protoze cp1250 je mrkvo$ofti error, nedoporucuju ho vubec pouzivat. Diakritika by nemela byt v nazvech souboru vubec..
co se tyce Vaseho prejmenovani, nejjednodusi bude udelat nejaky zvraceny regularni vyraz, ktery postvete na inkriminovane soubory :D
echo ěščřžýáíé | sed 's/ě/e/;s/š/s/;s/č/c/'priznavam, ze z hlavy z fleku nevylovim bez experimentovani spravny postup, ale v rychlosti me napadlo toto reseni:
#!/bin/bash
ls &>filelist.tmp
RENAME(){
while read line; do
# nahradime sedem znaky s diakritikou za znaky bez a dame cely do uvozovek kvuli mezeram v nazvech souboru
AFTER=$(echo $line | sed 's/ě/e/;s/š/s/;s/č/c/;s/ř/r/;s/ž/z/;s/ý/y/;s/á/a/;s/í/i/;s/é/e/;s/ů/u/;s/ú/u/;s/^/"/;s/$/"/')
# zapiseme v uvozovkach stav "pred"
BEFORE=$(echo $line | sed 's/^/"/;s/$/"/')
# tenhle radek je kyzena akce, v nasem pripade si v ramci debugovani skriptu nechame jen vypsat co by to udelalo..
echo "mv $BEFORE $AFTER"
done
}
RENAME rm filelist.tmp
# ps. jeste existuje prikaz 'tr', ktery se pouziva takto:
# echo abc | tr a-z A-Zdopredu upozornuju, ze to je hodne retardovaneho ditete ;) urcite je treba ho ohledat a prizpusobit lokalnim podminkam, abychom se vyhli nejakych nevratnych erroru.
onen regularni vyraz je napsany desivym zpusobem, budu jedine rad, pokud me nekdo opravi a ja se priucim, protoze verim, ze cela zalezitost jde vyresit na jeden radek konstrukci s xargs + sed a minimalne daleko obratneji pri zapisu substitucniho prikazu pro sed
-
Čekám, jestli do vydání GG "náhodou" někdo nepřeloží program Métamorphose pro hromadné přejmenovávání. Není to možná to pravé, co potřebujete, ale nezajímavý taky není.
Jsem člověk z venku, do dění kolem lokalizace nevidím a Anglicky neumím. Mám v plánu po vydání GG položit téma, které programy by se ještě hodilo přeložit, které chybí v repo a které jsou nedoceněné ( :) ). Třeba objevíme zajímavé tipy. Tak popřemýšlejte!
-
Marpe: Nástroje na hromadné přejmenování jsou. Zkus EasyTag. Tyto programy umí většinou pracovat i se soubory. KDyž budeš trošku hledat, najdeš i jiné.
jirihuf: Např při vypalování v K3B je možno zvolit znakovou sadu, kterou to cd bude podporovat. Zaškrtnout "Joliet" a "Rock ridge" rozšíření. V K3B 1.0.3 to je pojmenované trošku jinak. Nějak: "soubory pro Windows i pro Linux".
Jinak v názvech souborů stejně nepoužívám diakritiku ani mezery. Prostě za ty problémy to nestojí...
-
... Problém ovšem je, pokud máš třeba 150 mp3 s českými názvy, to už je to přejmenovávání na mašli ;) ...
Proč? Stačí si ve Windowsech nechat hromadně odstranit diakritiku v názvech souborů. Na to používám toto: http://www.pspad.com/cz/remdiak.htm
Pokud chci vysekat diakritiku z id3 tagů, taky existuje řešení: http://www.id3renamer.com/moreinfo-cz.html
Pokud něco takového existuje pro Linux, dejte vědět.
-
EasyTag znám a nenapadl mě. Jsem zahleděný do Métamorphose. :) Další programy pro Linux: KRename, Purrr, Bulk Rename - doplněk pro souborový manažer Xfce Thunar. Ať to tu máme pohromadě. :)
-
Pokud chci vysekat diakritiku z id3 tagů, taky existuje řešení: http://www.id3renamer.com/moreinfo-cz.html
Pokud něco takového existuje pro Linux, dejte vědět.
http://rename-mp3.sourceforge.net/ Tenhle skript by měl něco takového umět.
Další programy pro tagy jsou tady (http://www.abclinuxu.cz/software/multimedia/audio/tagy).
-
Co dělají UNICODE tagy na Windows? EasyTag umí převod.
-
Zkuste si někdo namnožit nějaké empétrojky a ty tagy poupravovat EasyTagem. Umí kǒdování UTF-8, ISO-8858-2, Windows-1250. Něco z toho přece musí háčky zachovat i pro Windows. ;) Nemám Windows k dispozici...
Nebo tagy nedělají problém?
Ve Skener/Přejmenovat soubor a adresář/Nastavení/Nastavení souborů je volba nahradit neplatné znaky v názvu souborů (pro Windows a CD-Rom). Zkoušeli jste?