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 00:44 | Bezpečnostní upozornění

    Dne 21. října 2026 vydal projekt Node.js bezpečnostní aktualizace opravující deset zranitelností, včetně jedné umožňující potenciální vzdálené spuštění kódu (RCE). Nejzajímavější je CVE-2026-111497, chyba dekodéru Brotli, kterou objevili výzkumníci využívající OpenAI Codex Security. Chyba je v nativním dekodéru Brotli, nikoli v samotném JavaScriptu. Speciálně vytvořený komprimovaný vstup způsobí, že dekodér zamění

    … více »
    vencour | Komentářů: 0
    včera 17:44 | IT novinky

    Francouzský výrobce kabelů Nexans upozornil na napjaté dodávky elektrických kabelů. Výstavba nové výrobní linky pro některé typy kabelů může trvat přibližně tři roky. Datacentra potřebují rozsáhlé nízkonapěťové a středněnapěťové rozvody. Poptávka roste současně s modernizací elektrických sítí. Někteří odběratelé proto uzavírají výrazně delší dodavatelské smlouvy [Reuters].

    vencour | Komentářů: 6
    včera 14:44 | Zajímavý projekt

    Představena byla (𝕏) virtuální platforma FLYBENCH FPV, která nováčky provede zapojením a konstrukcí dronů.

    Ladislav Hagara | Komentářů: 3
    včera 04:11 | Nová verze

    Google Chrome 156 byl prohlášen za stabilní. Přehled novinek v poznámkách k vydání. Opraveno bylo 353 bezpečnostních chyb. Vylepšeny byly také nástroje pro vývojáře.

    Ladislav Hagara | Komentářů: 0
    22.10. 20:22 | IT novinky

    Indická společnost eMudhra po bezpečnostním incidentu, tj. kompromitaci soukromých klíčů osmi mezilehlých certifikátů své certifikační autority, opouští globální byznys s SSL/TLS certifikáty.

    Ladislav Hagara | Komentářů: 4
    22.10. 15:44 | Bezpečnostní upozornění

    Dle Phoronixu zveřejnila společnost Trend Micro prostřednictvím programu Zero Day Initiative (ZDI) několik hlášení bezpečnostních zranitelností přímo na veřejném mailing listu LKML, přestože některé chyby dosud nemají opravu začleněnou do hlavní větve jádra. Mezi hlášenými problémy jsou dvě zranitelnosti s hodnocením CVSS 9.0, týkající se SMB Direct a KSMBD, které mohou umožnit vzdálené spuštění kódu. Další hlášení se týkají … více »

    vencour | Komentářů: 0
    22.10. 15:33 | Nová verze

    Správce hesel KeePassXC byl vydán ve verzi 2.8.0. Přechází na Qt 6, podporuje vkládání hesel s Waylandem, rychlé odemykání pomocí Polkitu nebo možnost nastavení klávesových zkratek (seznam změn).

    ʚĭɞ 🍉 | Komentářů: 0
    22.10. 15:22 | Nová verze

    Databáze DuckDB (Wikipedie) byla vydána ve verzi 2.0.0 LTS. S kódovým názvem Cinnamon Teal (čírka skořicová). S vyladěným protokolem Quack.

    Ladislav Hagara | Komentářů: 0
    22.10. 11:11 | Bezpečnostní upozornění

    V implementaci Broadcom 802.11 byla zjištěna chyba ve zpracování WPS/EAP, týká se to SDK od roku 2010. Broadcom podle výzkumníka Quentina Kaisera odmítl CVE přidělit. Modemy Huawei a Technicolor jsou používány i v ČR, v LTE routerech, běžných domácích routerech a firemních přístupových bodech, jejich současný počet a zranitelnost konkrétních verzí však zatím neznáme. Více detailů a demo. GitHub / Broadcom 802.11 SDK Detection Toolkit.

    vencour | Komentářů: 7
    22.10. 05:11 | Nová verze

    Byla vydána nová verze 10.8 z Debianu vycházející linuxové distribuce DietPi pro (nejenom) jednodeskové počítače. Přehled novinek v poznámkách k vydání. Přibyl balíček DietPi WireGuard.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (9%)
     (7%)
     (4%)
     (20%)
     (30%)
     (9%)
     (5%)
     (2%)
     (14%)
     (20%)
    Celkem 2901 hlasů
     Komentářů: 33, poslední 20.10. 23:44
    Rozcestník

    Code completion ve VIMu

    22.5.2005 17:55 | Přečteno: 3136× | HOWTOs | poslední úprava: 25.5.2005 09:51

    Ve zprávičkách jsem zahlédl informaci o doplňování kódu ve skvělém editoru VIM, který se učím používat. Pořád mi v něm ale něco chybělo, rozhodl jsem se tedy IComplete vyzkoušet (domovská stránka a screenshoty). Nakonec to nebylo tak jednoduché, jak by se mohlo na první pohled zdát.

    ICompletion je napsáno v C, na Vim je napojeno pomocí skriptu a nových vlastností Vim7, které umožňují doplňování kódu závislé na kontextu. Po napsání strukturovaného typu se Vám v dolní čáasti obrazovky otevře další okno, které obsahuje seznam členů a metod objektu se stručným popisem. IComplete dokáže napovídat také seznam argumentů právě psané funkce, jména lokálních i globálních proměnných či funkcí, jména statických členů a metod objektu. Přestože nedosahuje kvalit doplňování některých komerčních vývojových prostředí, nabízí to, co spousta lidí již dlouho ve Vimu hledá.

    K funkci je potřeba Vim7, který jsem objevil snad jen v distribuci Gentoo. Musel jsem tedy provést stažení a kompilaci kódu, což se překvapivě neprovádí známou trojicí, ale systémem Aap.

    mkdir ~/aap
    cd ~/aap
    cvs -d:pserver:anonymous@cvs-pserver.sf.net:80/cvsroot/a-a-p checkout Exec
    cd Exec
    su
    ./aap install
    

    Update Aap se provede posloupností:

    cd ~/aap/Exec
    ./aap uninstall
    cvs update
    ./aap install
    
    Aap nemusíte instalovat jako root, pak se Vám nahraje do ~/lib a vytvoří link v ~/bin, později ale stejně budete pravděpodobně instalovat Vim7 pro celý systém, takže je to možná zbytečné.

    Po instalaci aap si vytvoříme adresář ~/viminstall a v tomto adresáři spustíme:

    aap -f http://www.a-a-p.org/vim7/main.aap
    su
    aap install
    

    Pro update programu:

    aap uninstall
    aap update
    aap install
    

    Nyní bychom měli mít nainstalovaný Vim7 v /usr/local. Podíváme se tedy na IComplete, kde je situace již podstatně jednodušší. Stáhneme poslední verzi, kterou najdeme zde, rozbalíme a použijeme klasiku. Problém může nastat, pokud v systému máte nainstalované exuberant-tags, ale alias ctags neexistuje, pak předejte configure ještě parametr CTAGS_CMD=exuberant-ctags.

    ./configure --datadir=/usr/local/share
    make
    su
    make install
    

    Máme vše nainstalováno, ale ještě není vyhráno. Vytvoříme si testovací soubor test.cc s obsahem:

    #include <string>
    #include <iostream>
    
    using namespace std;
    
    typedef struct pokus {
       int a;
       string b;
       char c;
    } pokus;
    
    main() {
       pokus p;
       string str = "blabla";
       p.a = str.length();
       cout << str << ", pocet znaku: " << p.a << endl;
    }
    

    Provedením icomplete -l 15 -c 6 test.cc byste měli dostat

    class:pokus | scope:
    a:                            int a
    b:                            string b
    c:                            char c
    

    To už máme téměř vyhráno, aby nám fungovalo doplňování i u STL tříd, musíme do souboru /etc/icomplete.conf přidat cesty k hlavičkovým souborům. U mě na Mandriva Linuxu LE2005 se nacházejí v adresáři /usr/include/c++/3.4.3. Nyní zkuste spustit icomplete -l 15 -c 14 test.cc a pokud máte štěstí dostanete přehled členů a metod třídy string.

    Spusťte nainstalovaný Vim /usr/local/bin/vim a vyzkoušejte napsat za str tečku nebo ->, mělo by fungovat též doplňování statických členů a metod po ::. Doplňování kódu si vynutíme stiskem Ctrl-X, Ctrl-U, rebuild cache provedeme Ctrl-X, Ctrl-X, Ctrl-U, co chceme doplnit vybíráme vpřed pomocí Ctrl-J nebo zpět Ctrl-K.

    Doufám, že Vám tento návod pomohl a nemuseli jste si vyměnit několik mejlů s autorem jako já :-). Další informace naleznete na stránce projektu.

           

    Hodnocení: -

    zatím nehodnoceno
            špatné • dobré        

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

    Komentáře

    Vložit další komentář

    22.5.2005 20:53 doubleZ | skóre: 24 | blog: smazano
    Rozbalit Rozbalit vše mozna
    heh, mozna to zkusim:-) kazdopadne diky za zapis, pokud to budu zkouset, tak mi zapis pomohl, btw, jak je na tom vim7 se stabilitou?
    elviin avatar 25.5.2005 00:17 elviin | skóre: 29 | blog: elviin | Plzeň-Praha
    Rozbalit Rozbalit vše Re: mozna
    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.