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 17:11 | Zajímavý projekt

Na Kickstarteru běží kampaň na podporu USB RTC pro Raspberry Pi aneb hodiny reálného času (nejenom) pro Raspberry Pi připojitelné přes USB.

Ladislav Hagara | Komentářů: 2
dnes 16:00 | Nová verze

Google Chrome 90 byl prohlášen za stabilní. Nejnovější stabilní verze 90.0.4430.72 přináší řadu oprav a vylepšení (YouTube, Pete LePage z devadesátek :-)). Zdůraznit lze použití HTTPS jako výchozího protokolu při nezadání protokolu. Vylepšeny byly také nástroje pro vývojáře (YouTube). Opraveno bylo 37 bezpečnostních chyb.

Ladislav Hagara | Komentářů: 0
včera 11:00 | Zajímavý projekt

Björn Ståhl představil desktopové prostředí Pipeworld postavené na Arcanu, tj. na jeho vlastním display serveru, herním enginu a realtimovém multimediálním frameworku v jednom. Videoukázka na YouTube.

Ladislav Hagara | Komentářů: 6
včera 10:00 | Komunita

Společnost System76 prodávající počítače s předinstalovaným Pop!_OS nebo Ubuntu oznámila, že v Pop!_OS 21.04 bude nové desktopové prostředí COSMIC vycházející z GNOME. Představení prostředí v příspěvku na blogu.

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

nnn (Wikipedie), někdy také n³, je neortodoxní terminálový správce souborů. V den čtvrtých narozenin projektu byla vydána nová verze 4.0. Její kódový název je Sushi.

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

Byly zveřejněny informace o bezpečnostní chybě CVE-2021-3472 v X.Org Serveru a XWaylandu. Chyba je zneužitelná k lokální eskalaci práv (pokud X server běží pod právy roota). Opravena je v upstream verzích X.Org Serveru 1.20.11 a XWaylandu 21.1.1.

Ladislav Hagara | Komentářů: 0
včera 07:00 | Nová verze

Bylo vydáno FreeBSD 13.0. Podrobnosti v poznámkách k vydání.

Fluttershy, yay! | Komentářů: 0
včera 01:00 | Zajímavý projekt

Collapse OS vznikl jako svobodný operační systém pro počítače v případě „pomalého kolapsu civilizace“ sestavitelné a udržovatelné ze součástek rozšířených zařízení jako kalkulátory Texas Instruments, a to za účelem programování dalších jednočipů pro automatizaci. Autor po roce a půl projekt označil za hotový, ale plánuje pokračovat v jeho vylepšování. Ke stažení jsou zdrojové kódy (pod GNU GPLv3) a dokumentace.

Fluttershy, yay! | Komentářů: 0
13.4. 14:33 | Komunita

Nvidia podpoří projekt Common Voice částkou 1,5 milionu dolarů. Mozilla píše o demokratizaci a diverzifikaci hlasové technologie. Nvidia prostě použije otevřenou databázi hlasových záznamů k trénování svého systému Jarvis, viz úvodní přednáška CEO Nvidie Jensena Huanga na NVIDIA GTC 2021.

Ladislav Hagara | Komentářů: 0
13.4. 09:00 | IT novinky

Tento týden probíhá virtuální konference NVIDIA GTC 2021 (GPU Technology Conference). Doporučit ke zhlédnutí lze úvodní přednášku CEO Nvidie Jensena Huanga. Z kuchyně představil celou řadu novinek (NVIDIA Grace CPU, NVIDIA DRIVE Atlan, AI-Capable Supercomputer Alps, …). Dění na konferenci lze sledovat na Twitteru.

Ladislav Hagara | Komentářů: 3
Kolik času v průměru denně trávíte videohovory/-konferencemi? (ať už v práci, škole nebo soukromě)
 (51%)
 (13%)
 (16%)
 (11%)
 (7%)
 (1%)
 (2%)
Celkem 324 hlasů
 Komentářů: 7, poslední 8.4. 12:14
Rozcestník

Code completion ve VIMu II.

24.5.2005 19:43 | Přečteno: 1949× | 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.