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 15:00 | Nová verze

    Všem vše nejlepší do nového roku 2026.

    Ladislav Hagara | Komentářů: 6
    dnes 13:33 | Zajímavý software

    Crown je multiplatformní open source herní engine. Zdrojové kódy jsou k dispozici na GitHubu pod licencí MIT a GPLv3+. Byla vydána nová verze 0.60. Vyzkoušet lze online demo.

    Ladislav Hagara | Komentářů: 0
    dnes 12:11 | Zajímavý článek

    Daniel Stenberg na svém blogu informuje, že po strncpy() byla ze zdrojových kódů curlu odstraněna také všechna volání funkce strcpy(). Funkci strcpy() nahradili vlastní funkcí curlx_strcopy().

    Ladislav Hagara | Komentářů: 1
    dnes 03:00 | Nová verze

    Byla vydána nová verze 25.12.30 svobodného multiplatformního video editoru Shotcut (Wikipedie) postaveného nad multimediálním frameworkem MLT. Shotcut je vedle zdrojových kódů k dispozici také ve formátech AppImage, Flatpak a Snap.

    Ladislav Hagara | Komentářů: 0
    včera 18:55 | IT novinky

    Společnost Valve publikovala přehled To nej roku 2025 ve službě Steam aneb ohlédnutí za nejprodávanějšími, nejhranějšími a dalšími nej hrami roku 2025.

    Ladislav Hagara | Komentářů: 0
    včera 16:11 | Komunita

    Byly publikovány výsledky průzkumu mezi uživateli Blenderu uskutečněného v říjnu a listopadu 2025. Zúčastnilo se více než 5000 uživatelů.

    Ladislav Hagara | Komentářů: 0
    včera 03:33 | Bezpečnostní upozornění

    V dokumentově orientované databázi MongoDB byla nalezena a v upstreamu již opravena kritická bezpečností chyba CVE-2025-14847 aneb MongoBleed.

    Ladislav Hagara | Komentářů: 0
    29.12. 23:11 | IT novinky

    Při úklidu na Utažské univerzitě se ve skladovacích prostorách náhodou podařilo nalézt magnetickou pásku s kopií Unixu V4. Páska byla zaslána do počítačového muzea, kde se z pásky úspěšně podařilo extrahovat data a Unix spustit. Je to patrně jediný známý dochovaný exemplář tohoto 52 let starého Unixu, prvního vůbec programovaného v jazyce C.

    NUKE GAZA! 🎆 | Komentářů: 14
    29.12. 15:55 | Komunita

    FFmpeg nechal kvůli porušení autorských práv odstranit z GitHubu jeden z repozitářů patřících čínské technologické firmě Rockchip. Důvodem bylo porušení LGPL ze strany Rockchipu. Rockchip byl FFmpegem na porušování LGPL upozorněn již téměř před dvěma roky.

    NUKE GAZA! 🎆 | Komentářů: 7
    29.12. 15:44 | Zajímavý software

    K dispozici je nový CLI nástroj witr sloužící k analýze běžících procesů. Název je zkratkou slov why-is-this-running, 'proč tohle běží'. Klade si za cíl v 'jediném, lidsky čitelném, výstupu vysvětlit odkud daný spuštěný proces pochází, jak byl spuštěn a jaký řetězec systémů je zodpovědný za to, že tento proces právě teď běží'. Witr je napsán v jazyce Go.

    NUKE GAZA! 🎆 | Komentářů: 1
    Kdo vám letos nadělí dárek?
     (31%)
     (1%)
     (25%)
     (1%)
     (1%)
     (1%)
     (11%)
     (10%)
     (18%)
    Celkem 212 hlasů
     Komentářů: 22, poslední dnes 15:34
    Rozcestník

    Code completion ve VIMu II.

    24.5.2005 19:43 | Přečteno: 2126× | takruzne

    Po tom, co jsem zkousel pracovat s programem IComplete, jsem dosel k zaveru, ze je to asi nejvydarenejsi doplnovani, co se tyka C, C++. Ja jsem osobne zkousel jen C++ zdrojaky, takze s C a Javou se muzou objevit jine zaludnosti, nebo taky ne. Tenhle zapis navazuje volne na tento blog Martina Fialy.

    Aktualni verzi icomplete bych pochvalil pro jeji rychlost a prehlednost nastaveni i vubec vzhledu. V podstate se da rici, ze je to prijemny doplnek Vimu, a az na male drobnosti je to pouzitelna verze.

    V souboru /etc/icomplete.conf nebo pripadne v ~/.icompleterc muzete urcit prohledavane cesty. Cesty se neprohledavaji rekurzivne. Takze kdyz nastavite jednu cestu na /usr/include/, pak jeste musite dodat napriklad pro STL /usr/include/c++/3.4/. Lze take urcit cestu k headrum napr. takto: #include <boost/regex.hpp> s tim, ze nedefinujete /usr/include/boost v konfigurakach, ale vystacite si s /usr/include/.

    Jak psal Martin, pro aktualizaci cache je urcena serie klaves Ctrl-X, Ctrl-X, Ctrl-U a pro vyvolani napovedy za operatory ::, . a -> Ctrl-X,Ctrl-U. Pokud je trida/struktura/template deklaravana primo v souboru, kde je zaroven i pouzita, pak je nutne pouzit zmineny update cache, a nebo, pokud to nezabere, i zmenit/premazat/umazat nejaky #include <...>, aby se tak donutil icomplete aktualizovat cache. V jinych pripadech mi to spolehlive za temito operatory doplnovalo.

    Operatory . a -> v kombinaci s *, tj. ->* a .* v pripade ukazatelu na clensky funkce se nedoplnuji. Pristupovat pomoci :: ke globalnimu cokoliv nelze. Jedine bez ::.

    V pripade sablon to take neni 100%. Nastavaji v podstate dva problemy: Pokud napr. mame sablonu trid pro manipulaci objektu v poli, tj. mame definovany operator [], ktery vraci const T& nebo T&, pak IComplete nedoplnuje metody, cleny tridy(class, typename) T. To same plati i pro operator ().

    ...
    ....
    
    Array strArray;
    strArray[0].capacity(); //nedoplni
    
    Druhy problem je doplneni typu:
    template 
    struct GetEasyType
    {
    public:
      typedef T value_type;
      typedef T& reference;
      typedef const T& const_reference;
    };
    
    typedef GetEasyType<std::string>::const_reference const_reference;
    //opet za >:: icomplete nedoplni
    
    

    Jmenny prostory. Pracuji pekne s tim, ze obsahuji podmnozinu uvedenych problemu, krome updatu cache pomoci zmeny #includu. Po zadani std:: okamzite (mam 900Mhz) na vas vyskoci nabidka vsech moznosti. Nabidka je doplnovana dynamicky s tim, jak pridavate/ubirate #includy. Takze po zadani #include <exception> se std:: pekne a okamzite doplni o tridu std::exception.

    Vykreslovani se mi taky libi. Je poteseni pro oko videt, jak se vam snazi Vim poradit, i kdyz nekomu to mozna nebude prijemny, tak ja sem ocenil, jak se snazi za kazdym operatorem pristupu reagovat. Nekdy se nabidka scvrkne do jednoho zahybu, takze pro ty, kdo z vas pouzivate folding, nez bude dalsi verze, tak muzete misto set foldmethod=marker pouzit setlocal foldmethod=marker a misto napr. set foldmarker={,} pouzit setlocal foldmarker={,}

           

    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ář

    elviin avatar 24.5.2005 19:48 elviin | skóre: 29 | blog: elviin | Plzeň-Praha
    Rozbalit Rozbalit vše oprava
    K doplnovani metod sablon trid:
    Array <std::string> strArray;
    strArray[0].capacity(); //nedoplni
    
    
    24.5.2005 20:25 iZaak | skóre: 2 | blog: ECHO_Echo_echo_cho
    Rozbalit Rozbalit vše Jiné jazyky
    Hmm, nice. Jen mě napadlo, jestli existuje i něco podobného pro php. Popřípadě nějaká osobní zkušenost.. ;)
    Vím, že nic nevím... Ale pracuju na tom.
    25.5.2005 08:50 Martin Lebeda | skóre: 22 | blog: Martinuv_blog | Plzeň
    Rozbalit Rozbalit vše Re: Jiné jazyky
    Mě by se zase nejvce hodilo PL/SQL a Perl, nejlepší by asi byl obecný interface nad externí generátor seznamu proměnných, funkcí, tříd atd (nejlépe seznamu vč. specifikace očekávaných parametrů).
    Ku8aZ avatar 26.5.2005 11:47 Ku8aZ | skóre: 17
    Rozbalit Rozbalit vše Tags soubor
    Zajimalo by me, jestli jde nejak nastavit soubor tags, ktery se vytvari, aby se vytvarel pouze na jedno misto a ne do . adresare...
    Čeho se vlastně člověk bojí, když se bojí tmy...? jabber: ku8az AT jabbim.cz
    elviin avatar 20.6.2005 16:18 elviin | skóre: 29 | blog: elviin | Plzeň-Praha
    Rozbalit Rozbalit vše Icomplete 0.2.1

    Založit nové vláknoNahoru

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