Richard Stallman dnes v Liberci přednáší o svobodném softwaru a svobodě v digitální společnosti. Od 16:30 v aule budovy G na Technické univerzitě v Liberci. V anglickém jazyce s automaticky generovanými českými titulky. Vstup je zdarma i pro širokou veřejnost.
sudo-rs, tj. sudo a su přepsáné do programovacího jazyka Rust, nahradí v Ubuntu 25.10 klasické sudo. V plánu je také přechod od klasických coreutils k uutils coreutils napsaných v Rustu.
Fedora se stala oficiální distribucí WSL (Windows Subsystem for Linux).
Společnost IBM představila server IBM LinuxONE Emperor 5 poháněný procesorem IBM Telum II.
Byla vydána verze 4.0 multiplatformního integrovaného vývojového prostředí (IDE) pro rychlý vývoj aplikaci (RAD) ve Free Pascalu Lazarus (Wikipedie). Přehled novinek v poznámkách k vydání. Využíván je Free Pascal Compiler (FPC) 3.2.2.
Podpora Windows 10 končí 14. října 2025. Připravovaná kampaň Konec desítek (End of 10) může uživatelům pomoci s přechodem na Linux.
Již tuto středu proběhne 50. Virtuální Bastlírna, tedy dle římského číslování L. Bude L značit velikost, tedy více diskutujících než obvykle, či délku, neboť díky svátku lze diskutovat dlouho do noci? Bude i příští Virtuální Bastlírna virtuální nebo reálná? Nejen to se dozvíte, když dorazíte na diskuzní večer o elektronice, softwaru, ale technice obecně, který si můžete představit jako virtuální posezení u piva spojené s učenou
… více »Český statistický úřad rozšiřuje Statistický geoportál o Datový portál GIS s otevřenými geografickými daty. Ten umožňuje stahování datových sad podle potřeb uživatelů i jejich prohlížení v mapě a přináší nové možnosti v oblasti analýzy a využití statistických dat.
Kevin Lin zkouší využívat chytré brýle Mentra při hraní na piano. Vytváří aplikaci AugmentedChords, pomocí které si do brýlí posílá notový zápis (YouTube). Uvnitř brýlí běží AugmentOS (GitHub), tj. open source operační systém pro chytré brýle.
Ř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: