Byla vydána verze 9.1 open source virtualizační platformy Proxmox VE (Proxmox Virtual Environment, Wikipedie) založené na Debianu. Přehled novinek v poznámkách k vydání a informačním videu.
Byl aktualizován seznam 500 nejvýkonnějších superpočítačů na světě TOP500. Nejvýkonnějším superpočítačem zůstává El Capitan od HPE (Cray) s výkonem 1,809 exaFLOPS. Druhý Frontier má výkon 1,353 exaFLOPS. Třetí Aurora má výkon 1,012 exaFLOPS. Nejvýkonnější superpočítač v Evropě JUPITER Booster s výkonem 1,000 exaFLOPS je na čtvrtém místě. Nejvýkonnější český superpočítač C24 klesl na 192. místo. Karolina, GPU partition klesla na 224. místo a Karolina, CPU partition na 450. místo. Další přehledy a statistiky na stránkách projektu.
Microsoft představil Azure Cobalt 200, tj. svůj vlastní SoC (System-on-Chip) postavený na ARM a optimalizovaný pro cloud.
Co způsobilo včerejší nejhorší výpadek Cloudflare od roku 2019? Nebyl to kybernetický útok. Vše začalo změnou oprávnění v jednom z databázových systémů a pokračovalo vygenerováním problém způsobujícího konfiguračního souboru a jeho distribucí na všechny počítače Cloudflare. Podrobně v příspěvku na blogu Cloudflare.
Byla vydána (Mastodon, 𝕏) první RC verze GIMPu 3.2. Přehled novinek v oznámení o vydání. Podrobně v souboru NEWS na GitLabu.
Eugen Rochko, zakladatel Mastodonu, tj. sociální sítě, která není na prodej, oznámil, že po téměř 10 letech odstupuje z pozice CEO a převádí vlastnictví ochranné známky a dalších aktiv na neziskovou organizaci Mastodon.
Byla vydána nová major verze 5.0 svobodného 3D softwaru Blender. Přehled novinek i s náhledy a videi v obsáhlých poznámkách k vydání. Videopředstavení na YouTube.
Cloudflare, tj. společnost poskytující "cloudové služby, které zajišťují bezpečnost, výkon a spolehlivost internetových aplikací", má výpadek.
Letos se uskuteční již 11. ročník soutěže v programování Kasiopea. Tato soutěž, (primárně) pro středoškoláky, nabízí skvělou příležitost procvičit logické myšlení a dozvědět se něco nového ze světa algoritmů – a to nejen pro zkušené programátory, ale i pro úplné začátečníky. Domácí kolo proběhne online od 22. 11. do 7. 12. 2025 a skládá se z 9 zajímavých úloh různé obtížnosti. Na výběru programovacího jazyka přitom nezáleží – úlohy jsou
… více »Byla vydána nová verze 2.52.0 distribuovaného systému správy verzí Git. Přispělo 94 vývojářů, z toho 33 nových. Přehled novinek v příspěvku na blogu GitHubu a v poznámkách k vydání.
Řešení dotazu:
< --- > binmode(STDIN, ":utf8"); > binmode(STDOUT, ":utf8"); > > 18,19c21 < my $hyp = new TeX::Hyphen; < --- > my $hyp = new TeX::Hyphen '/usr/share/texmf-dist/tex/csplain/base/czhyphen.tex', 'style' => 'czech',;
Groff umí dělit slova, dokonce má i slovník s českým dělení slov (ukradený z TeXu). Jen se mu musí říci, že jazyk je čeština parametrem -mcs. Příklad manuálové stránky natažené na šířku terminálu včetně dělených slov:
(echo ".ll ${COLUMNS}\n"; bzcat /usr/share/man/cs/man1/shigofumi.1.bz2) | /usr/bin/preconv | groff -Tutf8 -mandoc -mcs
... řádek textu zadané šířky další řádek blbě vycházejícíTotiž můžeš zarovnat:
... řádek textu zadané šířky další řádek blbě vychá- zejícínebo:
... řádek textu zadané šířky další řádek blbě vycháze- jícícož není ani v jednom případě do bloku.
Těby dived ptyzruně. Měji šlucry tří chré lážlotist vumrou tiper v nic gláti úmýpech. Vlydi trou- di prýv k paská sro prytě fly- křu v kust. Oří o půcpa a vimoj opo trouchetrá utě děšležrokla a mlehřou. Puďni šru vonitědre crodra vremhrn niv, nit těpoma- bud zroum nědě hlysk srážlo věti v chévu břat z mřidis. Vrůštniž hrec z divluděře důd hrovu mru- fí hlů člymflů miť. Dě timan vé vřep dředi hlíboumrů otoučpa- bi vadigu skecru krel opiv ha- ti. Flůchlavrum o mrepré z glouš stomřá, cláni ratikřes sámřáč- lit šle a matěňáďsé. Z dělkác vostáčloř děť nip chlapréleň s myktý. Fi mlíďglůch v clů ně- chreť nichra kra zytý pepo zlo- famne leř. Třužláč klyť i vydě vo těž ďodlo hružlech drbětrévře tlezaz myv. Mežrůst šlévro nyd.A kdyby to někdo potřeboval, tady je kód:
#!/usr/bin/env python3
def monoblock(text,width=80,lang='czech',emergencystretch='2em'):
content=r'''
\documentclass[]{article}
\usepackage{polyglossia}
\setdefaultlanguage{%s}
%%\usepackage{showhyphens}
\usepackage{fontspec}
\setmainfont{Latin Modern Mono}
\pagestyle{empty}
\usepackage{ragged2e}
\lefthyphenmin=2
%% tune emergencystretch by hand until happy
\emergencystretch=%s
\parindent=0pt
\begin{document}
\begin{minipage}{%dex}
\RaggedRight
%s
\end{minipage}
\end{document}
'''%(lang,emergencystretch,width,text)
import tempfile, subprocess, os.path, webbrowser, time
with tempfile.TemporaryDirectory() as tmpDir:
tex,pdf=[tmpDir+'/main.'+ext for ext in ('tex','pdf')]
print(tex)
f=open(tex,'w')
f.write(content)
f.close()
subprocess.call(['lualatex',tex],cwd=tmpDir)
txt=subprocess.check_output(['pdftotext','-raw',pdf,'-']).decode('utf-8')
webbrowser.open('file://'+os.path.abspath(pdf))
time.sleep(2)
return expandToBlock(txt,width)
def expandToBlock(txt,wd):
import re, random
ll=txt.split('\n')
lens=[len(l) for l in ll]
maxWd=max(lens)
if maxWd>wd: print('WARN: max unexpanded text width %d is greater than required width %d. Increasing to %d.'%(maxWd,wd,maxWd))
wd=maxWd
for i,l in enumerate(ll):
# skip last paragraph line
if i+1==len(ll) or (i+1<len(ll) and ll[i+1]==''): continue
pats=[r'… \b',r'\. \b',r': \b',r', \b',r'\) \b',r'\b \(',r'\b \b']
patReps=['… ','. ',': ',', ',') ',' (',' ']
for ex in range(1,5): # expand to multiple spaces
for pat,prep in zip([p.replace(' ',ex*' ') for p in pats],patReps):
matches=list(re.finditer(pat,l))
if not matches: continue
#random.shuffle(matches)
todo=min(len(matches),wd-len(l))
m2=random.sample(matches,todo)
# print('use %d occurrences of "%s" (out of %d)'%(todo,pat,len(matches)))
# replace from right to left to preserve indices
for m in sorted(m2,key=lambda x: -x.span()[0]): l=l[:m.span()[0]]+prep.replace(' ',(ex+1)*' ')+l[m.span()[1]:]
if len(l)==wd: break
if len(l)==wd: break
ll[i]=l
return '\n'.join(ll)
if __name__=='__main__':
print('\n\n'+monoblock('Těby dived ptyzruně. Měji šlucry tří chré lážlotist vumrou tiper v nic gláti úmýpech. Vlydi troudi prýv k paská sro prytě flykřu v kust. Oří o půcpa a vimoj opo trouchetrá utě děšležrokla a mlehřou. Puďni šru vonitědre crodra vremhrn niv, nit těpomabud zroum nědě hlysk srážlo věti v chévu břat z mřidis. Vrůštniž hrec z divluděře důd hrovu mrufí hlů člymflů miť. Dě timan vé vřep dředi hlíboumrů otoučpabi vadigu skecru krel opiv hati. Flůchlavrum o mrepré z glouš stomřá, cláni ratikřes sámřáčlit šle a matěňáďsé. Z dělkác vostáčloř děť nip chlapréleň s myktý. Fi mlíďglůch v clů něchreť nichra kra zytý pepo zlofamne leř. Třužláč klyť i vydě vo těž ďodlo hružlech drbětrévře tlezaz myv. Mežrůst šlévro nyd.',width=40,emergencystretch='2em'))
Tiskni
Sdílej: