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:44 | Pozvánky

    Přemýšlíte, jak začít prázdniny? Už v úterý 1. července se bude konat Virtuální Bastlírna, tedy online setkání bastlířů, techniků, vědců i akademiků, kde se ve volné diskuzi probírají novinky ze světa techniky, ale i jiných zajímavých témat.

    Za poslední měsíc jsme byli svědky plamenů několika raket. Zatímco malá raketa od Hondy se úspěšně vznesla a opět přistála, raketa od SpaceX se rozhodla letět všemi směry najednou. Díkybohu méně … více »
    Uprdkávač | Komentářů: 0
    včera 23:44 | Komunita

    Linus Torvalds zmínil, že souborový systém Bcachefs zřejmě odstraní z mainline Linuxu v začleňovacím okně pro vydání 6.17. Kent Overstreet mu totiž posílá kód s novou funkcionalitou i pro začlenění do kandidátů na vydání, kdy očekává pouze opravy chyb. Ken Overstreet byl již dříve z vývoje vyloučen kvůli konfliktní komunikaci.

    Fluttershy, yay! | Komentářů: 9
    27.6. 11:55 | IT novinky

    Ministerstvo průmyslu a obchodu propaguje Microsoft. Ten ve spolupráci s Ministerstvem průmyslu a obchodu spouští AI National Skilling Plan v ČR. "Iniciativa Microsoftu přináší konkrétní a praktickou podporu právě tam, kde ji nejvíc potřebujeme – do škol, firem i veřejné správy.", říká ministr průmyslu a obchodu Lukáš Vlček.

    Ladislav Hagara | Komentářů: 29
    27.6. 10:55 | Zajímavý projekt

    Jste český ISP? Vyplněním krátkého dotazníku můžete pomoci nasměrovat vývoj nové generace routerů Turris Omnia [𝕏].

    Ladislav Hagara | Komentářů: 4
    27.6. 01:33 | IT novinky

    Celkové tržby společnosti Canonical za rok 2024 byly 292 milionů dolarů (pdf). Za rok 2023 to bylo 251 milionů dolarů.

    Ladislav Hagara | Komentářů: 1
    27.6. 01:22 | Nová verze

    Byla vydána verze 1.88.0 programovacího jazyka Rust (Wikipedie). Podrobnosti v poznámkách k vydání. Vyzkoušet Rust lze například na stránce Rust by Example.

    Ladislav Hagara | Komentářů: 0
    27.6. 01:11 | Nová verze

    Distribuce Tails specializující se ochranu online soukromí uživatele byla vydána ve verzi 6.17. Mimo jiné aktualizuje Tor Browser (14.5.4) a opravuje několik chyb.

    Fluttershy, yay! | Komentářů: 0
    26.6. 21:11 | Nová verze Ladislav Hagara | Komentářů: 0
    26.6. 13:11 | IT novinky

    Město Lyon posiluje svou digitální suverenitu a postupně nahrazuje software od společnosti Microsoft bezplatnými alternativami, zejména OnlyOffice pro kancelářské aplikace a Linux a PostgreSQL pro systémy a databáze.

    Ladislav Hagara | Komentářů: 9
    26.6. 11:44 | Zajímavý projekt

    Evropská občanská iniciativa Stop Destroying Videogames se snaží o to, aby vydavatelé, kteří spotřebitelům v Evropské unii prodávají videohry nebo na ně udělují licence, měli povinnost tyto hry ponechat ve funkčním (hratelném) stavu i po ukončení podpory ze své strany. Podpořit podpisem tuto iniciativu můžete v Systému pro online sběr podpisů.

    trekker.dk | Komentářů: 5
    Jaký je váš oblíbený skriptovací jazyk?
     (59%)
     (28%)
     (7%)
     (2%)
     (0%)
     (1%)
     (3%)
    Celkem 331 hlasů
     Komentářů: 16, poslední 8.6. 21:05
    Rozcestník

    Dotaz: Aplikace (Bash 5+ ) v celém terminálu poskakuje

    13.1.2022 15:47 host
    Aplikace (Bash 5+ ) v celém terminálu poskakuje
    Přečteno: 747×
    Zdravím, v terminále používám celou obrazovku pro výpis textů s čísel, přesunuji pozice výpisu pomocí šipek na klávesnici a pomocí tput cup x y. Když ale mačkám šipku na klávesnici rychleji nebo ji držím, obraz začne poskakovat nahoru a dolů. Vím, že Bash není zrovna vhodný pro takové aplikace ale je to již poslední problém se kterým si nevím rady jak to opravit. Poradí někdo? Děkuji.

    Odpovědi

    13.1.2022 15:54 z_sk | skóre: 34 | blog: analyzy
    Rozbalit Rozbalit vše Re: Aplikace (Bash 5+ ) v celém terminálu poskakuje
    Ošetriť, ze na vstupe môže prijať iba max 10 (Unicode) znakov za sekundu a zbytok zahodiť.

    Prepísať aplikácie do ncurses.

    Ojedinele, zvýšiť maximálnu rýchlosť prúdenia dát cez tty.
    debian.plus@protonmail.com
    13.1.2022 20:21 host
    Rozbalit Rozbalit vše Re: Aplikace (Bash 5+ ) v celém terminálu poskakuje
    Ahoj, můžeš prosím trochu rozvést tu první možnost? Nemůžu nic najít, děkuji.
    Gréta avatar 13.1.2022 21:40 Gréta | skóre: 37 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
    Rozbalit Rozbalit vše Re: Aplikace (Bash 5+ ) v celém terminálu poskakuje

    asi jako myslel že si v tom loopu kde koukáš jakej je jakoby uživatelem máčknutej čudlik si budeš nějak pamatovat čas vod posledního máčknutí a když ten rozdíl bude menčí neř třeba 100ms tak misto akce ten vstup zahodíš :D ;D

    asi něco jako todlecto snad (nevim jak děláš s inputem)

    
    #!/usr/bin/env bash
    
    #kdy naposled sme něco psali do terminálku
    naposled=0
    
    # nekonečnej loop (vypneš ctrl+c)
    while true; do
    
        # skováme si máčknutej znak do proměný 'písmenko'
        stty cbreak
        pismenko=`dd if=/dev/tty bs=1 count=1 2>/dev/null`
        stty -cbreak
    
        # chcem milisekundy
        tedko=$(($(date +%s%N)/1000000))
        # spočitáme jakej je jako rozdíl mezi posledním máčknutím a časem teďkonc
        ((delta=tedko-naposled))
    
        # když je delta víc jak 100ms tak napišem jaký se jako písmenko máčklo a skováme do proměný 'naposled' novej čas
        if [ $delta -gt 100 ]
        then
            echo "macknuty pismenko: $pismenko"
            naposled=$tedko
        fi
    done
    
    13.1.2022 22:56 host
    Rozbalit Rozbalit vše Re: Aplikace (Bash 5+ ) v celém terminálu poskakuje
    Děkuji za ukázku, nemůžu to vyzkoušet, píše mi to chybu které nerozumím.

    řádek 15: 1642110614N: hodnot je pro základ příliš velká (chybný token je „1642110614N“)
    Gréta avatar 13.1.2022 23:21 Gréta | skóre: 37 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
    Rozbalit Rozbalit vše Re: Aplikace (Bash 5+ ) v celém terminálu poskakuje

    to nevim :O :O to vypadá jakobytam zustalo takový to N a % chtělo asi udělat modulo :O :O

    co ti vypiše příkaz

    date +%s%N

    jakou máš verzi date :O :O

    date --version
    14.1.2022 00:35 host
    Rozbalit Rozbalit vše Re: Aplikace (Bash 5+ ) v celém terminálu poskakuje
    date +%s%N
    1642116726N
    
    date --version
    date: illegal option -- -
    usage: date [-jnRu] [-d dst] [-r seconds] [-t west] [-v[+|-]val[ymwdHMS]] ... 
                [-f fmt date | [[[mm]dd]HH]MM[[cc]yy][.ss]] [+format]
    
    
    Gréta avatar 16.1.2022 02:18 Gréta | skóre: 37 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
    Rozbalit Rozbalit vše Re: Aplikace (Bash 5+ ) v celém terminálu poskakuje

    neni to jakoby macOS nebo bsd?? :O :O date tam prej neumí nanosekundy :O :O

    mohla by ale jako fungovat epochrealtime proměná hele :O ;D

    nejdřiv si ji zkus vypsat příkazem

    echo $EPOCHREALTIME

    jestli ti jako funguje + koukni jestli to piše desetinou čárku ',' nebo tečku '.' a podletohodlectoho předělej řádek 15 by se dával dopryč ten správnej znak

    #!/usr/bin/env bash
     
    #kdy naposled sme něco psali do terminálku
    naposled=0
     
    # nekonečnej loop (vypneš ctrl+c)
    while true; do
     
        # skováme si máčknutej znak do proměný 'písmenko'
        stty cbreak
        pismenko=`dd if=/dev/tty bs=1 count=1 2>/dev/null`
        stty -cbreak
     
        # chcem milisekundy
        tedko=$((${EPOCHREALTIME//,}/1000))
        # spočitáme jakej je jako rozdíl mezi posledním máčknutím a časem teďkonc
        ((delta=tedko-naposled))
     
        # když je delta víc jak 100ms tak napišem jaký se jako písmenko máčklo a skováme do proměný 'naposled' novej čas
        if [ $delta -gt 100 ]
        then
            echo "macknuty pismenko: $pismenko"
            naposled=$tedko
        fi
    done
    
    17.1.2022 15:15 GNU is not unix!
    Rozbalit Rozbalit vše Re: Aplikace (Bash 5+ ) v celém terminálu poskakuje
    BSD date je POSIX2 only, GNU date ma ficury navic. Je ale mozne doinstalovat (nebo uz ho snad i mas) gdate. Pak treba v macOS:

    date +%s%N

    1642428553N

    gdate +%s%N

    1642428709323360000
    17.1.2022 15:21 GNU is not unix!
    Rozbalit Rozbalit vše Re: Aplikace (Bash 5+ ) v celém terminálu poskakuje
    Pokud jej nemas tak v BSD
    pkg install coreutils
    v macOS
    brew install coreutils
    5.4.2022 14:26 z_sk | skóre: 34 | blog: analyzy
    Rozbalit Rozbalit vše Re: Aplikace (Bash 5+ ) v celém terminálu poskakuje
    Prípadne ešte buferovať výstup. Napr. tty ma nastavené nejakú rýchlosť, takže limitovať takto dátový tok, aby neprekročil tty. Pripadne aj buffer a limitovať draw.
    debian.plus@protonmail.com

    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.