O víkendu 11. a 12. května lze navštívit Maker Faire Prague, festival plný workshopů, interaktivních činností a především nadšených a zvídavých lidí.
Byl vydán Fedora Asahi Remix 40, tj. linuxová distribuce pro Apple Silicon vycházející z Fedora Linuxu 40.
Představena byla služba Raspberry Pi Connect usnadňující vzdálený grafický přístup k vašim Raspberry Pi z webového prohlížeče. Odkudkoli. Zdarma. Zatím v beta verzi. Detaily v dokumentaci.
Byla vydána verze R14.1.2 desktopového prostředí Trinity Desktop Environment (TDE, fork KDE 3.5). Přehled novinek v poznámkách k vydání, podrobnosti v seznamu změn.
Dnešním dnem lze již také v Česku nakupovat na Google Store (telefony a sluchátka Google Pixel).
Apple představil (keynote) iPad Pro s čipem Apple M4, předělaný iPad Air ve dvou velikostech a nový Apple Pencil Pro.
Richard Biener oznámil vydání verze 14.1 (14.1.0) kolekce kompilátorů pro různé programovací jazyky GCC (GNU Compiler Collection). Jedná se o první stabilní verzi řady 14. Přehled změn, nových vlastností a oprav a aktualizovaná dokumentace na stránkách projektu. Některé zdrojové kódy, které bylo možné přeložit s předchozími verzemi GCC, bude nutné upravit.
Free Software Foundation zveřejnila ocenění Free Software Awards za rok 2023. Vybráni byli Bruno Haible za dlouhodobé příspěvky a správu knihovny Gnulib, nováček Nick Logozzo za front-end Parabolic pro yt-dlp a tým Mission logiciels libres francouzského státu za nasazování svobodného softwaru do praxe.
Před 10 lety Microsoft dokončil akvizici divize mobilních telefonů společnosti Nokia a pod značkou Microsoft Mobile ji zanedlouho pohřbil.
Fedora 40 release party v Praze proběhne v pátek 17. května od 18:30 v prostorách společnosti Etnetera Core na adrese Jankovcova 1037/49, Praha 7. Součástí bude program kratších přednášek o novinkách ve Fedoře.
Před několika měsíci jsem vytvořil program XML Web generátor, jak již název napovídá, program slouží ke generování webů. Práce není od té doby moc intenzivní, ale občas na to sáhnu. Nedávno jsem přidal dvě nové funkce: zvýrazňování syntaxe kódu v <pre/> a možnost vkládání grafů/diagramů.
Ačkoli je dneska asi většina webů dynamická a používá nějaký skriptovací/programovací jazyk na straně serveru, statické weby úplně nevymřely a čas od času se hodí. Vytvořit takový web je hračka, stačí k tomu textový editor a základní znalost (X)HTML značek. Jenže pak člověk zjistí, že by chtěl mít na všech stránkách nabídku s odkazy na ostatní stránky, nebo když se rozhodně změnit rozvržení stránky, musí to dělat na všech stránkách ručně.
Další věc je třeba RSS/Atom/Sitemap.xml, které se už vůbec člověku nebude chtít psát ručně. Vkládání záhlaví/zápatí je taky celkem nuda.
Proto je dobré ručně udržovat jen ty informace, které jsou jedinečné (obsah stránek) a všechno ostatní automaticky dogenerovat. A k tomu slouží tento program.
Ze sady vstupních XML dokumentů vytváří pomocí XSLT transformace webové stránky.
Formát vstupních dokumentů je velmi jednoduchý a vypadá takhle:
<stránka xmlns="https://trac.frantovo.cz/xml-web-generator/wiki/xmlns/strana"> <nadpis>Nadpis stránky</nadpis> <perex>Krátký popis</perex> <pořadí>10</pořadí> <text xmlns="http://www.w3.org/1999/xhtml"> <p>Sem už píšeme obsah stránky – normální (X)HTML, jak ho známe</p> </text> </stránka>
Je to vlastně jen hlavička obsahující nadpis a popis stránky, pořadí v nabídce (pokud chybí, stránka v nabídce nebude, ale vygeneruje se) a pak už následuje obsah stránky uvnitř <text/>, kam už píšeme standardní značky.
Kromě nich můžeme do textu vkládat i „makra“ – vlastní značky, ze kterých generátor něco vyrobí.
Do textu např. vložíme:
<m:měřák hodnota="95"/>
a ve vygenerované stránce bude:
Program obsahuje několik vestavěných maker a další si může dopsat uživatel sám (je to celkem triviální, stačí se inspirovat u těch už hotových).
Více se o programu dočtete na jeho oficiální stránkách nebo v článku Generujeme jednoduchý web pomocí XML.
Funkce, které jsem nedávno přidal:
Když člověk vkládá na web nějakou ukázku kódu, je dobré mít tam zvýrazněnou syntaxi, je to přehlednější. Je škoda, že se o to nemůže postarat prohlížeč sám od sebe, ale co se dá dělat. Do generátoru jsem přidal možnost zvýrazňování – do zdrojového souboru jednoduše vložíme:
<m:pre jazyk="bash">#!/bin/bash # Matrixový spořič :–) case "$1" in start) echo -e "\033[22;32m"; cat /dev/urandom | hexdump; ;; stop) echo -e "\033[0m"; ;; *) $0 start; ;; esac</m:pre>
a generátor z toho vyrobí:
U složitějších zdrojáků oceníte možnosti XML – kód můžete uzavřít do <![CDATA[…]]>, a pak v něm nemusíte řešit escapování (např. generika v Javě). Časem (snad) bude v generátoru možnost vkládat externí soubory přes XInclude.
Bylo by asi zbytečné psát si vlastní zvýrazňovač syntaxe, tak jsem použil už hotový – Pygments – a propojil ho s generátorem.
Občas potřebujeme do stránky vložit diagram, třeba UML, nebo nějaký jiný – obrázek řekne víc. Proto jsem přidal toto makro – do zdrojového souboru vložíme:
<m:diagram orientace="vodorovně"> A -> B; B -> C; </m:diagram>
a generátor z toho vyrobí:
Atribut orientace
je nepovinný (výchozí je svisle).
Jako atribut je taky možné uvést název (zobrazuje se pod grafem).
Vygenerovaný obrázek je ve formátu SVG, takže hezky škáluje, když si ho chce uživatel přiblížit. Časem budou i bitmapové obrázky (PNG), pro případ, že by SVG nešlo zobrazit (<img/> vnořený do <object/>).
Syntaxe použitá pro popis diagramů je vám asi povědomá – použil jsem Graphviz. Můžete pomocí něj tvořit mnohem složitější a hezčí grafy, než jsou tyto ukázky.
Stejně jako Pygments je to externí nástroj volaný při transformaci. Pokud v systému chybí příkaz pygmentize
a stránka obsahuje kódy, které se mají zvýraznit, jen se vypíše varování a stránka se vygeneruje bez zvýraznění (to není taková tragédie). Ale pokud stránka obsahuje diagramy a příkaz dot
chybí, generování spadne – je potřeba Graphviz doinstalovat. Pokud uživatel tyto funkce nechce využívat, samozřejmě tyto programy nainstalované mít nemusí, generátor bude fungovat bez nich.
Tiskni Sdílej: