Protože je už po aprílu, můžou strahováci opět zveřejnit program další Virtuální Bastlírny, aniž by připravená témata působila dojmem, že jde o žert. Vězte tedy, že již v úterý 7. dubna od 20:00 proběhne VB, kde se setkají bastlíři, technici, učitelé i nadšenci do techniky a kde i vy se můžete zapojit do družného hovoru, jako by všichni seděli u pomyslného piva. Co mají bastlíři tento měsíc na srdci? Pravděpodobně by nás musel zasáhnout meteorit
… více »Byla vydána verze 26.1 aneb čtvrtletní aktualizace open source počítačového planetária Stellarium (Wikipedie, GitHub). Vyzkoušet lze webovou verzi Stellaria na Stellarium Web.
VOID (Video Object and Interaction Deletion) je nový open-source VLM model pro editaci videa, který dokáže z videí odstraňovat objekty včetně všech jejich fyzikálních interakcí v rámci scény (pády, kolize, stíny...) pomocí quadmaskingu (čtyřhodnotová maska, která člení pixely scény do čtyř kategorií: objekt určený k odstranění, překrývající se oblasti, objektem ovlivněné oblasti a pozadí scény) a dvoufázového inpaintingu. Za projektem stojí výzkumníci ze společnosti Netflix.
Design (GitHub) je 2D CAD pro GNOME. Instalovat lze i z Flathubu. Běží také ve webovém prohlížeči.
Příspěvek na blogu herního enginu Godot představuje aplikaci Xogot přinášející Godot na iPad a iPhone. Instalovat lze z App Storu. Za Xogotem stojí Miguel de Icaza (GitHub) a společnost Xibbon.
Na čem pracují vývojáři webového prohlížeče Ladybird (GitHub)? Byl publikován přehled vývoje za březen (YouTube).
ESP-IDF (Espressif IoT Development Framework), tj. oficiální vývojový framework pro vývoj aplikací na mikrokontrolérech řady ESP32, byl vydán v nové verzi 6.0. Detaily na portálu pro vývojáře.
DeepMind (Alphabet) představila novou verzi svého multimodálního modelu, Gemma 4. Modely jsou volně k dispozici (Ollama, Hugging Face a další) ve velikostech 5-31 miliard parametrů, s kontextovým oknem 128k až 256k a v dense i MoE variantách. Modely zvládají text, obrázky a u menších verzí i audio. Modely jsou optimalizované pro běh na desktopových GPU i mobilních zařízeních, váhy všech těchto modelů jsou uvolněny pod licencí Apache 2.0. Návod na spuštění je už i na Unsloth.
Cursor (Wikipedie) od společnosti Anysphere byl vydán ve verzi 3. Jedná se o multiplatformní proprietární editor kódů s podporou AI (vibe coding).
Průkopnická firma FingerWorks kolem roku 2000 vyvinula vícedotykové trackpady s gesty a klávesnice jako TouchStream LP. V roce 2005 ji koupil Apple, výrobu těchto produktů ukončil a dotykové technologie využil při vývoji iPhone. Multiplatformní projekt Apple Magic TouchstreamLP nyní implementuje funkcionalitu TouchStream LP na současném Apple Magic Trackpad, resp. jejich dvojici. Diskuze k vydání probíhá na Redditu.
Jak jsem slíbil (http://www.abclinuxu.cz/forum/show/168981), tak činím. Zkusil jsem popsat možnosti menu v IceWM.
Po letech mnoha letech používání počítače jsem získal některé návyky. Jedním z nich je používání kvalitního menu ve window manageru. Nejprve jsem používal zejména WindowMaker, tam je velmi dobré menu, ale já jsem jej tak nějak pomíjel a používal převážně dock. Pak přišlo období s IceWM, kdy jsem měl k dispozici ikony na liště a pak také ikony na ploše zajištěné aplikací Rox. Jenže plocha je sice dobrá úvodní spuštění hlavní aplikace, ale pak je neustále zakryta nějakými okny a tudíž je víceméně nepřístupná a na liště je omezené místo. Vím o tom, že jsou klávesové zkratky které ji dokáží vytáhnout do popředí, ale to mi připadalo nepohodlné, když jsem si chtěl jen spustit další okno s dalšími potřebnými daty a ono najednou všechno zmizelo. Nevím zda jsem začal používat počítač intenzivněji nebo prostě jen jiným způsobem, takže jsem objevil kouzlo menu.
Postupně jsem začínal více a více používat menu až nakonec jsem odboural ostatní způsoby spouštění aplikací a používám už téměř výhradně menu. (A samozřejmě klávesové zkratky.)
Nedávno jsem narazil na text ukazující, že někteří lidé považují IceWM za window manager druhé kategorie, který se nedá pořádně nastavit a nemá pořádné menu. Myslím že to není pravda, IceWM podle mého názoru má možnosti menu velmi dobré a pokusím se je popsat.
Základní statická forma menu vypadá takto:
prog "Terminál rxvt" "xterm" rxvt
prog "Gvim" "vim" gvim
menu "test" "folder" {
prog "OpenOffice" "ooo_gulls" openoffice
prog "Lyx" "emacs" lyx
}
prog "ROOT terminál" "control-center" rxvt -bg darkred -e su -
Na prvním místě je klíčové slovo prog nebo menu které říká, že se jedná
o spuštění programu, nebo submenu, které uvozuje vnořené submenu. Pak následuje
nadpis položky, pokud obsahuje mezeru nebo jiné "speciální" znaky, musí být v
uvozovkách, jinak uvozovky nejsou povinné. Následuje ikona.
Ikona může být název ikony dle konvence IceWM (viz.
manuál) nebo to může být i obecně jakýkoliv
grafický soubor ve formátu xpm s plnou cestou nebo bez cesty pokud se nachází v IconPath. Pokud je
IceWM kompilováno s podporou Imlib jsou podporovány další grafické formáty -
bmp, jpeg, ppm, tiff, gif, png, ps, xpm. Pokud se uživatel nechce ikonou
zabývat, napíše jako název ukony pomlčku a žádná ikona není zobrazena. Zajímavou
sbírku ikon lze najít na http://bbs.cvut.cz/~covex/icewm/iceicons/.
Pak následují složené závorky v případě submenu nebo příkaz pro provedení.
Součástí menu mohou být některé speciální položky.
separator slouží k vytvoření oddělovací čáry v menu.
runonce slouží ke zvláštnímu způsobu spouštění položek. Ono once
napovídá, že se IceWM podívá, zda již neexistuje okno zadané třídy a pokud ano,
nespouští další program, ale jen okno vytáhne do popředí.
runonce "title" icon_name "res_name.res_class" program_executable options runonce "title" icon_name "res_name" program_executable options runonce "title" icon_name ".res_class" program_executable options
restart slouží k přechodu do jiného wm. IceWM se ukončí a je nahrazen
zadaným wm.
restart "title" icon_name program_executable options
A nyní se dostáváme k zajímavějším možnostem menu. Bohužel dále uvedené možnosti mají jedno nepříjemné omezení - nejdou použít jako seznam položek v exitující větvi (sub)menu, ale jen jako samostatná submenu. Takže nelze napsat část větve staticky, pak zařadit např. dynamické položky a pokračovat zase statickými položkami na stejné úrovni.
Vložení dalšího souboru snad není třeba nijak upřesňovat funkce je zřejmá.
menufile Programs folder programs
Bude vytvořeno subnemu "Programs" s ikonou "folder" a jako položky se natáhne
obsah souboru programs. Pozor na jednu vlastnost - obsah souboru programs se natáhne
jen při vytváření menu - typicky při prvním zobrazení, další změny změny v
souboru programs se pak již nepromítnou do dalšího znovuvytvoření menu. Kdy
to bude závisí na nastavení IceWM - u mne při každé změně hlavního souboru.
Restart IceWM, samozřejmě, nové natažení menu vynutí kdykoliv.
Takto je třeba možno vkládat do menu součásti společné více uživatelům.
Menu lze i generovat programem. Položky se čtou ze standardního výstupu.
menuprog Gnome folder icewm-menu-gnome1 --list
Místo programu icewm-menu-gnome1 --list, lze dosadit jakýkoliv vlastní
generátor menu. menuprog se spouští též jen jednou při vytváření menu
stejně jako v předchozím případě při vkládání souboru. Takže tato varianta není
tak úplně dynamická.
A nyní se konečně dostáváme ke skutečně dynamicky generovanému menu.
Syntaxe je následující:
menuprogreload title icon timeout command
Timeout je zadáván v sekundách a určuje dobu platnosti položek získaných z výstupu příkazu. Pokud je timeout 0, pak se příkaz spouští při každém zobrazení podmenu.
Něco málo mnou používaných příkazů jako ilustrační příklad (exec v druhém
řádku není příkaz, ale název ikony - obrázku ozubeného kola
):
menuprogreload "Procházet..." folder 0 dirBrowserMenu.sh /home/martin roxopen.sh menuprogreload "Procesy" exec 0 process.sh
První položka umožňuje rekurzívní procházení adresářů, druhá je jednoduchý správce procesů.
Pokud někoho zajímá jak takový script vypadá, tady je dirBrowserMenu.sh:
#!/bin/bash
# Popis:
# $1 - adresář k prozkoumání
# $2 - příkzaz pro otevírání souborů
echo prog \"Otevřít...\" "folder" $2 $1
echo separator
find $1 -maxdepth 1 -mindepth 1 -type d -not -name '.*' \
-printf "menuprogreload \"%f\" folder 0 $0 \"%p\" $2\n"
echo separator
find $1 -maxdepth 1 -mindepth 1 -not -type d -not -name '.*' -not -name '*.clean' \
-printf "prog \"%f\" file $2 \"%p\"\n"
a tady je process.sh:
#!/bin/bash
top -U`whoami` -b -n1 | tail +8 | sed '/^[^[:space:]]*$/d' | \
awk '{print $1 " \"" $12 " (" $9 "; " $8 "; " $6 "; " $4 ")\"" }' | \
while read PID CAPTION; do
echo menu $CAPTION \"-\" {
echo prog '"renice +5" "-" renice +5' $PID
echo prog '"kill" "-" kill' $PID
echo prog '"kill -9" "-" kill -9' $PID
echo }
done
Nedělám si žádné nároky na úplnost a neprůstřelnost, ale u mne to funguje v dostatečné míře.
Jak vidno je menu v IceWM je jednoduché a přitom má dostatečné možnosti. Takže si každý snadno může menu vyrobit podle svých potřeb.
Tiskni
Sdílej: