abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 01:55 | Nová verze Ladislav Hagara | Komentářů: 0
    včera 21:33 | Nová verze

    Ben Sturmfels oznámil vydání MediaGoblinu 0.15.0. Přehled novinek v poznámkách k vydání. MediaGoblin (Wikipedie) je svobodná multimediální publikační platforma a decentralizovaná alternativa ke službám jako Flickr, YouTube, SoundCloud atd. Ukázka například na LibrePlanet.

    Ladislav Hagara | Komentářů: 0
    včera 15:44 | Zajímavý software

    TerminalPhone (png) je skript v Bashi pro push-to-talk hlasovou a textovou komunikaci přes Tor využívající .onion adresy.

    Ladislav Hagara | Komentářů: 4
    včera 12:22 | IT novinky

    Před dvěma lety zavedli operátoři ochranu proti podvrženým hovorům, kdy volající falšuje čísla anebo se vydává za někoho jiného. Nyní v roce 2026 blokují operátoři díky nasazeným technologiím v průměru 3 miliony pokusů o podvodný hovor měsíčně (tzn., že k propojení na zákazníka vůbec nedojde). Ochrana před tzv. spoofingem je pro zákazníky a zákaznice všech tří operátorů zdarma, ať už jde o mobilní čísla nebo pevné linky.

    Ladislav Hagara | Komentářů: 7
    včera 03:44 | Komunita

    Společnost Meta (Facebook) předává React, React Native a související projekty jako JSX nadaci React Foundation patřící pod Linux Foundation. Zakládajícími členy React Foundation jsou Amazon, Callstack, Expo, Huawei, Meta, Microsoft, Software Mansion a Vercel.

    Ladislav Hagara | Komentářů: 3
    včera 01:22 | IT novinky

    Samsung na akci Galaxy Unpacked February 2026 (YouTube) představil své nové telefony Galaxy S26, S26+ a S26 Ultra a sluchátka Galaxy Buds4 a Buds4 Pro. Telefon Galaxy S26 Ultra má nový typ displeje (Privacy Display) chránící obsah na obrazovce před zvědavými pohledy (YouTube).

    Ladislav Hagara | Komentářů: 5
    včera 00:22 | Nová verze

    Byla vydána grafická knihovna Mesa 26.0.1 s podporou API OpenGL 4.6 a Vulkan 1.4. Je to první stabilní verze po 26.0.0, kde se novinky týkají mj. výkonu ray tracingu na GPU AMD a HoneyKrisp, implementace API Vulkan pro macOS.

    |🇵🇸 | Komentářů: 0
    25.2. 20:22 | Nová verze

    Byla vydána nová verze 4.6 multiplatformního integrovaného vývojového prostředí (IDE) pro rychlý vývoj aplikaci (RAD) ve Free Pascalu Lazarus (Wikipedie). Využíván je Free Pascal Compiler (FPC) 3.2.2.

    Ladislav Hagara | Komentářů: 0
    25.2. 18:00 | Nová verze

    Byla vydána nová verze 3.23.0 FreeRDP, tj. svobodné implementace protokolu RDP (Remote Desktop Protocol). Opravuje 11 bezpečnostních chyb.

    Ladislav Hagara | Komentářů: 0
    25.2. 17:44 | Zajímavý článek

    Španělský softwarový inženýr oznámil, že se mu podařilo na dálku ovládat sedm tisíc robotických vysavačů po celém světě. Upozornil tak na slabé kybernetické zabezpečení těchto technologií a jejich možné a snadné zneužití. Nesnažil se hacknout všechny robotické vysavače po světě, ale pouze propojil svůj nový DJI Romo vysavač se zařízením Playstation. Aplikace podle něj ihned začala komunikovat se všemi sedmi tisíci spotřebiči a on je

    … více »
    Ladislav Hagara | Komentářů: 10
    Které desktopové prostředí na Linuxu používáte?
     (18%)
     (6%)
     (0%)
     (11%)
     (27%)
     (2%)
     (5%)
     (2%)
     (13%)
     (26%)
    Celkem 964 hlasů
     Komentářů: 25, poslední 3.2. 19:50
    Rozcestník

    Dotaz: Nahrazení části řádku v souboru řádkem z jiného souboru, aneb řešení strojového překladu *.ass

    29.4.2018 12:31 hujer
    Nahrazení části řádku v souboru řádkem z jiného souboru, aneb řešení strojového překladu *.ass
    Přečteno: 285×

    Zdravím. Prvotní motivace pro tento dotaz je strojový překlad titulků ve formátu *.ass. Google umí jen *.srt a *.sub, pokud mu to naservíruju jako kompletní text, v překladu zmrší znakové sekvence.

    Takže mě napadlo (sekvence 0,0,0,, je před každým textem a nikde jinde):

     1. grep -oP '(?<=0,0,0,,).*' titulky.ass > vystup.txt

    2. Tím získám soubor, kde každá textová linka je na novém řádku. Ten můžu bez problémů prohnat překladačem.

    3. A teď musím přeloženými řádky nahradit ty původní. Pro každý řádek s 0,0,0,, v souboru titulky.ass nahraď to, co je za 0,0,0,, tím řádkem ze souboru vystup.txt.

    Pomohli byste mi prosím s třetím bodem? Díky.

    Odpovědi

    29.4.2018 12:53 Kit | skóre: 46 | Brno
    Rozbalit Rozbalit vše Re: Nahrazení části řádku v souboru řádkem z jiného souboru, aneb řešení strojového překladu *.ass
    Zkusil bych AWK getline.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    29.4.2018 15:49 hujer
    Rozbalit Rozbalit vše Re: Nahrazení části řádku v souboru řádkem z jiného souboru, aneb řešení strojového překladu *.ass

    Na getline jsem se díval, nepochopil jsem, jak jej v mém případě použít. Zatím umím přečíst řádek ve vystup a i pomocí sed to nahradit. Jenom to zatím ale nahrazuje úplně všechny, takže už mu jen nějak říct, aby nahradil pouze první výskyt po předchozím:

    cat vystup | while read -r line; do
    sed "s/0,0,0,,.*/0,0,0,,$line/" tit.ass > kontrolni
    done
    29.4.2018 17:15 Kit | skóre: 46 | Brno
    Rozbalit Rozbalit vše Re: Nahrazení části řádku v souboru řádkem z jiného souboru, aneb řešení strojového překladu *.ass
    awk '/0,0,0/{getline <"preklad.ass"} {print}' original.ass
    
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    29.4.2018 19:00 hujer
    Rozbalit Rozbalit vše Re: Nahrazení části řádku v souboru řádkem z jiného souboru, aneb řešení strojového překladu *.ass

    Díky. Tohle přepíše všechny řádky obsahující 0,0,0 na řádek z překladu. Je však potřeba zachovat původní řádek až po 0,0,0,, včetně a to za tím nahradit překladem. Např.

    originál:

    Dialogue: 0,0:00:07.50,0:00:09.90,film_Italics,Kaz,0,0,0,,Simple original

    Dialogue: 0,0:00:09.50,0:00:09.90,film_Italics,Kaz,0,0,0,,Two

    překlad:

    Jednoduchý originál

    Dva

    výsledek:

    Dialogue: 0,0:00:07.50,0:00:09.90,film_Italics,Kaz,0,0,0,,Jednoduchý originál

    Dialogue: 0,0:00:09.50,0:00:09.90,film_Italics,Kaz,0,0,0,,Dva

    29.4.2018 19:54 Kit | skóre: 46 | Brno
    Rozbalit Rozbalit vše Re: Nahrazení části řádku v souboru řádkem z jiného souboru, aneb řešení strojového překladu *.ass
    Mohl jsi mi ten vzorek dat poslat rovnou, abych to měl na čem otestovat.
    awk '/0,0,0,,/{sub("0,0,0,,.*$", "0,0,0,,"); line=$0; getline <"preklad.ass"; $0=line $0;} {print}' original.ass
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    29.4.2018 22:18 hujer
    Rozbalit Rozbalit vše Re: Nahrazení části řádku v souboru řádkem z jiného souboru, aneb řešení strojového překladu *.ass

    Jo no. Chtěl jsem na to přijít, ale jak tak vidím, mám ve zpracování textu veliké mezery. Děkuji za to awk, funguje jak má. S malou úpravou jsem vytvořil skript, který všechny *.ass v dané složce přeloží pomocí Google translate na P-*.ass. Je nutné nainstalovat balík apt install translate-shell

    for file in *.ass; do
    grep -oP '(?<=,,).*' "$file" > vycuc.txt
    sed -i 's/\\N//g' vycuc.txt
    sed -i 's/^ *//' vycuc.txt
    trans sk:cs file://./vycuc.txt > preklad.txt
    awk '/,,/{sub(",,.*$", ",,"); line=$0; getline <"preklad.txt"; $0=line $0;} {print}' "$file" > "P-$file"
    done
    rm *.txt
    David Watzke avatar 29.4.2018 13:06 David Watzke | skóre: 74 | blog: Blog... | Praha
    Rozbalit Rozbalit vše Re: Nahrazení části řádku v souboru řádkem z jiného souboru, aneb řešení strojového překladu *.ass
    Na to bych použil třeba python a procházel oba soubory po řádcích.
    “Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.