V Brestu dnes začala konference vývojářů a uživatelů linuxové distribuce Debian DebConf25. Na programu je řada zajímavých přednášek. Sledovat je lze online.
Před 30 lety, tj. 14. července 1995, se začala používat přípona .mp3 pro soubory s hudbou komprimovanou pomocí MPEG-2 Audio Layer 3.
Výroba 8bitových domácích počítačů Commodore 64 byla ukončena v dubnu 1994. Po více než 30 letech byl představen nový oficiální Commodore 64 Ultimate (YouTube). S deskou postavenou na FPGA. Ve 3 edicích v ceně od 299 dolarů a plánovaným dodáním v říjnu a listopadu letošního roku.
Společnost Hugging Face ve spolupráci se společností Pollen Robotics představila open source robota Reachy Mini (YouTube). Předobjednat lze lite verzi za 299 dolarů a wireless verzi s Raspberry Pi 5 za 449 dolarů.
Dnes v 17:30 bude oficiálně vydána open source počítačová hra DOGWALK vytvořena v 3D softwaru Blender a herním enginu Godot. Release party proběhne na YouTube od 17:00.
McDonald's se spojil se společností Paradox a pracovníky nabírá také pomocí AI řešení s virtuální asistentkou Olivii běžící na webu McHire. Ian Carroll a Sam Curry se na toto AI řešení blíže podívali a opravdu je překvapilo, že se mohli přihlásit pomocí jména 123456 a hesla 123456 a získat přístup k údajům o 64 milionech uchazečů o práci.
Byla vydána (𝕏) červnová aktualizace aneb nová verze 1.102 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a videi v poznámkách k vydání. Ve verzi 1.102 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.
Byla vydána nová verze 2.4.64 svobodného multiplatformního webového serveru Apache (httpd). Řešeno je mimo jiné 8 bezpečnostních chyb.
Společnost xAI na síti 𝕏 představila Grok 4, tj. novou verzi svého AI LLM modelu Grok.
Ministerstvo vnitra odhalilo závažný kyberincident v IT systému resortu. Systém, do kterého se dostal útočník bez oprávnění, byl odpojen a nedošlo k odcizení dat [𝕏].
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 installAap 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.
Tiskni
Sdílej: