V dokumentově orientované databázi MongoDB byla nalezena a v upstreamu již opravena kritická bezpečností chyba CVE-2025-14847 aneb MongoBleed.
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.
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.
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.
Yazi je správce souborů běžící v terminálu. Napsán je v programovacím jazyce Rust. Podporuje asynchronní I/O operace. Vydán byl v nové verzi 25.12.29. Instalovat jej lze také ze Snapcraftu.
Od soboty do úterý probíhá v Hamburku konference 39C3 (Chaos Communication Congress) věnovaná také počítačové bezpečnosti nebo hardwaru. Program (jiná verze) slibuje řadu zajímavých přednášek. Streamy a záznamy budou k dispozici na media.ccc.de.
Byl představen nový Xserver Phoenix, kompletně od nuly vyvíjený v programovacím jazyce Zig. Projekt Phoenix si klade za cíl být moderní alternativou k X.Org serveru.
XLibre Xserver byl 21. prosince vydán ve verzi 25.1.0, 'winter solstice release'. Od založení tohoto forku X.Org serveru se jedná o vůbec první novou minor verzi (inkrementovalo se to druhé číslo v číselném kódu verze).
Wayback byl vydán ve verzi 0.3. Wayback je "tak akorát Waylandu, aby fungoval Xwayland". Jedná se o kompatibilní vrstvu umožňující běh plnohodnotných X11 desktopových prostředí s využitím komponent z Waylandu. Cílem je nakonec nahradit klasický server X.Org, a tím snížit zátěž údržby aplikací X11.
Byla vydána verze 4.0.0 programovacího jazyka Ruby (Wikipedie). S Ruby Box a ZJIT. Ruby lze vyzkoušet na webové stránce TryRuby. U příležitosti 30. narozenin, první veřejná verze Ruby 0.95 byla oznámena 21. prosince 1995, proběhl redesign webových stránek.
Pokud jsme vše zdárně nainstalovali, napsali zdrojový kód, tak vzhůru do
práce. Nejdříve probereme základní variantu. Máme vstupní soubor
example.ly. Jak jej dostaneme do nějaké prohlížitelné podoby?
ly2dvi example.ly převede kód za pomoci LaTeXu do výstupního
souboru example.dvi. Přidáme-li přepínač -P,
dostaneme PostScriptový výstup. V případě -p pak dostaneme
PDF.
Teď k druhé a pro mnohé asi zajímavější variantě. Protože formát souboru
.ly neumožňuje integrovat notový zápis s textem, tak existuje i možnost, jak
včlenit kód Lilypondu přímo do zdrojového textu LaTeXu, TeXInfa či HTML.
Předvedeme si pouze variantu pro LaTeX, druhé dvě varianty jsou totiž velmi
podobné této a zájemce si konkrétní syntax rád dohledá v manuálu. Vlastní
převod je navržen tak, že speciální skript lilypond-book projde
LaTeXový (HTML, TeXinfo) soubor a zpracuje označené úseky Lilypondem. Pak
vytvoří nový soubor, kde úseky kódu nahradí vloženým obrázkem (eps, png).
\lilypond{...}
...
\begin{lilypond}
...
\end{lilypond}
První - jednodušší varianta se hodí zejména pro krátké zápisy (několik not). Jak vidíte, v LaTeXu je připraveno také celé prostředí pro Lilypond. Má několik nepovinných parametrů:
epsverbatim, smallverbatim, intertext=intertext. Na závěr se vloží vygenerovaný
výstup.filename=11pt, 13pt, 16pt, 20pt, 16ptsingleline, multilineKromě těchto parametrů je definováno ještě několik dalších
(no/fragment, no/indent, noquote, printfilename, relative), které
mají celkem jasný význam.
Kód uvnitř prostředí je plnohodnotným zdrojovým textem Lilypondu. Bez
problémů se zalamuje přes hranice stran, rozezná dokonce sazbu do sloupců a
uzpůsobí tak své rozměry. Tato vlastnost je však omezena pouze na příkazy
\onecolumn, \twocolumn a balíček multicols.
Pro toto prostředí jsou také definovány dvě speciální makra, které je možno
podle potřeby předefinovat. Jsou to \preLilypondExample a
\postLilypondExample. Tato makra se vykonávají jak jinak než na
konci a na začátku prostředí (představme si je někde uvnitř
\begin{lilypond} a \end{lilypond}). Většinou se
ponechávají prázdná, ale lze je použít k nastavení vlastního vzhledu
vložených obrázků. Budeme-li například chtít před a za příkladem udělat čáru,
můžeme to udělat takto:
\def\preLilypondExample{\par\noindent\hrulefill\par\noindent}
Prostředí v dokumentu HTML vypadá takto:
<lilypond verbatim>
<c16 e> <c e g>
</lilypond>
a v TeXinfo pak:
@lilypond[20pt, eps]
\relative c' {
c d e f
}
@end lilypond
Pro další podrobnosti (už jich snad k tomuto tématu moc není) odkazuji na patřičnou část manuálu.
K většině značkovacích jazyků existují různé pomocné editory, kterým se více či méně daří zefektivnit práci na kódu. Například pro jazyk HTML jsou jich stovky. Jazyk Lilypondu není zdaleka tak rozšířen a z toho také plyne výrazně nižší počet těchto prostředků. Asi tak tři. Prvním je grafický frontend Denemo, zmíněný již v první části tohoto seriálu. Hlavním problémem je neaktivita tohoto projektu. Je to však jediné klikací prostředí, které pro Lilypond existuje. Dle mého osobního názoru je dobré tak akorát na to, aby se uživatel naučil, jak některé konstrukce, které nakliká, vypadají v kódu Lilypondu.
Dalšími dvěma prostředky jsou módy pro emacs a ViM. Nejsa uživatelem emacsu neporeferuji příliš o první variantě. Nicméně alespoň něco. Mezi standardní požadavky patří syntax-highlighting. Další možnosti, které toto prostředí podporuje, jsou různé výpomoci při kompilaci a náhledy. Též jsou přítomny různé zkratky pro rychlejší psaní not a tagů. Většina těchto možností je přístupná z menu. Opět téměř samozřejmostí je inteligentní odsazování.
Jak je to s ViMem? Hůř. V současné distribuci je sice soubor
vimrc, ale nenechte se zmást. Je to spíš takový pozůstatek.
Obsahuje jen několik maker pro kompilaci a ta se spíš nedají použít. Raději
si napište vlastní. Kde se ovšem blýská na lepší časy, je konference lilypond-devel. V současné době se
připravuje kvalitní soubor pro ViM včetně syntax-highlightingu, který je už
teď údajně lepší než emacsový.
Co ovšem může některým uživatelům výrazně pomoci, je možné propojení xdvi s patřičným editorem. Bohužel většina distribucí nabízí teTeX, který obsahuje upravenou verzi xdvi (xdvik), která neodpovídá současné verzi tohoto programu. Ujistěte se tedy, že máte alespoň verzi 22.36. Údajně je tato možnost též podporována prohlížečem KDVI v KDE 3.0, kde musíte povolit vlastnost "Inverse search". V případě, že nemáte ani jeden z těchto programů, tak zde je xdvi. Druhým požadavkem je textový editor umožňující přijímat externí příkazy. Tím se náš výběr omezí na emacs, GViM a NEdit.
Ve zdrojovém souboru musíme zapnout generování speciálních informací
takto: #(set-point-and-click! 'line) přesun na odpovídající
řádek, nebo #(set-point-and-click! 'line-column) přesun na
řádek a sloupec. Podle dokumentace je mód line-column funkční
pouze v emacsu (a to ještě po aplikaci patche dodaného s Lilypondem), ale my
si ukážeme jak jej použít i ve ViMu. V emacsu jsem tento mód nikdy nepoužil,
takže pouze napíšu, co říká dokumentace. Do souboru ~/.emacs
přidáte řádek (server-start) a proměnnou prostředí
XEDITOR na emacsclient --no-wait +%l:%c
%f (v případě line vynecháte :%c). Teď už
můžete spustit xdvi a kliknout třeba na některou notu. V emacsu se otevře
odpovídající zdrojový soubor a skočí se na patřičnou část kódu.
Pro NEdit proměnnou XEDITOR nastavíme na hodnotu nc
-noask +%l %f
Teď tedy slíbené nastavení pro GViM. Stačí export XEDITOR=gvim
--remote +:%l:norm%c| %f. Upozornění pro zapřisáhlé nepoužívače GViMu
ve prospěch ViMu. ViM tuto možnost neposkytuje, protože není schopen běžet v
serverovém módu. Tuto možnost má opravdu jen grafické rozhraní.
A co proboha ta čeština? Pokud budete sázet jen notové party, tak tento
problém nemusíte řešit. Pokud ovšem budete chtít vidět nějaký ten háček a
čárku, tak je to slabší. Problém je v tom, že ještě stále neexistuje jednotná
podoba českého LaTeXu a druhý problém je v systému ovládání fontů samotného
Lilypondu. Lilypond standardně používá Knuthovy Computer Modern fonty.
ly2dvi umí používat babel, takže kódování není problém, ovšem
háčky a čárky nejsou zrovna estetické.
Pro ty, co mají nainstalovanou českou variantu - Cs-fonty (součást instalace
cslatexu a csplainu), stačí použít tento patch, respektive zaměnit všechny
výskyty CMR fontů v souboru scm/fonts.scm. Patch záměrně není
vztažen ke konkrétní distribuci, ale pouze k souboru
$PREFIX/share/lilypond/1.x.x/scm/font.scm. Tak snad bude zaručena
jeho použitelnost pro co největší spektrum verzí (tento soubor se už hodně
dlouho nezměnil). K čemu už jsem patch neposlal, je soubor
lilypond-book. Tedy pokud budete chtít, tak zaměňte v tomto
souboru jediný výskyt slova latex za cslatex.
Tím jsme se zbavili problémů s češtinou jako takovou. Větší problém, je to, že ani Češi nejsou jednotni v tom, jak se vlastně mají označovat jednotlivé akordy. S potěšením jsem zjistil, že v tom nejsme sami. V Lilypondu tedy existuje hned několik základních módů označení akordů. První a výchozí je banter. Vychází ze systému navrženého jistým Haroldem Banterem a je z použitých nejbližší českým jménům. Další varianty jsou american a jazz. Ovšem i v těchto názvech se najdou výjimky, které se českým čtenářům nebudou příliš líbit. Mollové akordy se označují například jako Am, což je u nás méně časté označení. Zde je ovšem síla propojení Lilypondu se Scheme. Jména akordů jsou definována v tomto jazyce a případné změny, či výjimky lze snadno podchytit.
Projekt má za sebou již poměrně dlouhý vývoj a značně vyzrál. Výstup již může konkurovat komerčním programům a leckdy je i předčí (z vlastní zkušenosti). Budoucnost je celkem slibná. Pevné jádro vývojářů stále pokračuje v práci s neutuchajícím nadšením. Nezbývá tedy než poděkovat oběma hlavním autorů za jejich práci a jít sázet kytičky (nebo notičky?). Těžko totiž asi v současné době najdete lepší free software tohoto typu.
Nebylo by slušné nezmínit se například o souvisejícím projektu Mutopia, který shromažďuje notové záznamy (většinou vytvořené právě v Lilypondu). Jedná se o skladby, na které se již nevztahuje žádný copyright, tedy především o skladby klasické. Je to vlastně takový hudební protějšek projektu Guttenberg
Poznámka pro experimentátory: v CVS je dostupná vývojová řada 1.7.xx. Pokud se rozhodnete si hrát s touto verzí, tak buďte varováni, že se syntaxe opět mění a není zaručeno, že všechny v seriálu zmiňované postupy budou fungovat bez problémů. Například přechody mezi scheme a Lilypondem mají již syntaxi změněnu.
Poznámka pro ostatní: pokud bojujete z množstvím chybových hlášení překladače a nevládnete příliš angličtinou smíchanou s mnoha hudebními výrazy, tak stahujte aktuální verzi, která již obsahuje můj patch (PO) s českými hláškami. Tímto vás také vyzývám, k zasílání připomínek k překladu na moji adresu.
Nástroje: Tisk bez diskuse
Tiskni
Sdílej: