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.
Byla vydána nová verze 10.3 sady aplikací pro SSH komunikaci OpenSSH. Přináší řadu bezpečnostních oprav, vylepšení funkcí a oprav chyb.
wget www.seznam.cz
--06:13:25-- http://www.seznam.cz/
=> `index.html'
Resolving www.seznam.cz... 194.228.32.3
Connecting to www.seznam.cz|194.228.32.3|:80... connected.
HTTP požadavek odeslán, program čeká na odpověď ... 200 OK
Délka: neudáno [text/html]
[ <=> ] 31 595 --.--K/s
06:13:25 (5.98 MB/s) - `index.html' saved [31595]
Potřebuji získat to index.html. Pokud bych tento výstup poslal rourou, např. wget http://www.seznam.cz 2>&1|grep saved|sed -e 'blabla', tak sice získám název, ale přijdu tím o ostatní omáčku z wgetu. Potřeuji i tu omáčku i ten název... Dík za tip!
deb http://ftp.cz.debian.org/debian jessie main contrib non-freewget http://www.seznam.cz 2>&1|tee /dev/stderr|grep saved
Ale fakt jsem nečekal, že mi poradíš zrovna ty...
Ted jěště musím sesmolit ten sed, co mi z 07:00:11 (6.83 MB/s) - `index.html.31' saved [31612]
dá to index.html
deb http://ftp.cz.debian.org/debian jessie main contrib non-free$ echo "07:00:11 (6.83 MB/s) - \`index.html.31' saved [31612]" 07:00:11 (6.83 MB/s) - `index.html.31' saved [31612] $ echo "07:00:11 (6.83 MB/s) - \`index.html.31' saved [31612]" | \ sed -e "s:[[:print:]]*\`::" -e "s?' saved \[[[:digit:]]*\]??g" index.html.31
(Nebo už konečně začal dělat na tom Informixu...
)
-O file
--output-document=file
wget $URL 2>&1 | tee /dev/stderr | grep saved | awk '{ print(substr($5, 2, length($5)-2)); }'
Dík všem a hlavně Davidovi
deb http://ftp.cz.debian.org/debian jessie main contrib non-freedeb http://ftp.cz.debian.org/debian jessie main contrib non-free
file=$(wget $url 2>&1 | sed -n "2{h;s/.*\`\(.*\)'$/\1/p;g};w /dev/stderr")
wget http://seznam.czstáhne něco jiného než
wget http://seznam.cz/index.htmlAle přitom název souboru bude v obou případech 'index.html'. Takže buď ten název souboru známe (je součástí URL) nebo ho neznáme a pak je to index.html. Nebo jsou nějaké výjimky?
#!/usr/bin/env python
import sys,os,urlparse,urllib2
conn = urllib2.urlopen(sys.argv[1])
realurl = conn.geturl()
parsed = urlparse.urlsplit(realurl)
url_path = parsed[2] # Here is the path
filename = os.path.split(url_path)[1]
if not filename:
print 'No filename available, using "index.html"'
filename = 'index.html'
file(filename, 'w').write(conn.read())
Jestliže se pokusím stáhnout
http://kf.fyz.fce.vutbr.cz/pub/bletak to název souboru nenajde a stáhne to do "index.html". Zatímco
http://kf.fyz.fce.vutbr.cz/pub/blaobsahuje konkrétní název souboru, ačkoli to z pouhé adresy nelze poznat. No a v tomto případě se použije název "bla". Zrovna tak to udělá i wget.
ahoj 2 slunce 3 moře 1 člověk 5 atd...
deb http://ftp.cz.debian.org/debian jessie main contrib non-free
nejsem lamka
Ahoj všem a užijte si sluníčka!
deb http://ftp.cz.debian.org/debian jessie main contrib non-freewget -q -O- ... | sed ... | ...Případně pokud by se jednalo o slušný web, mohl byste k vyčištění použít
xsltproc.
#!/usr/bin/env python
import os,sys,elementtree.ElementTree, urllib2
words = {}
def add_to_words(text):
for word in text.split():
try:
words[word] += 1
except KeyError:
words[word] = 1
def find_text(elem):
text = elem.text
if text:
add_to_words(text)
for e in elem: find_text(e)
conn = urllib2.urlopen(sys.argv[1])
doc = elementtree.ElementTree.parse(conn).getroot()
conn.close()
find_text(doc)
for k in words:
print "%d: %s" %(words[k], k)
Kéž by všechny stránky byly v XHTML strict...chorchoj:14:22:02 ~$ wget -q abclinuxu.cz chorchoj:14:22:26 ~$ tidy -xml index.html line 18 column 1 - Error: unexpected </head> in <meta> line 56 column 98 - Error: unexpected </a> in <img> line 57 column 6 - Error: unexpected </div> in <img> line 77 column 1 - Error: unexpected </div> in <img> line 77 column 7 - Error: unexpected </div> in <img> line 96 column 25 - Error: unexpected </form> in <input> 0 warnings, 51 errors were found! Not all warnings/errors were shown. This document has errors that must be fixed before using HTML Tidy to generate a tidied up version. To learn more about HTML Tidy see http://tidy.sourceforge.net Please send bug reports to html-tidy@w3.org HTML and CSS specifications are available from http://www.w3.org/ Lobby your company to join W3C, see http://www.w3.org/ConsortiumZkoušel jsem i víc stránek - na každé je nějaký problém. Neznáte někdo nějaký jiný způsob, jak z HTML udělat well-formed XML?
#!/usr/bin/env python
import os,sys,elementtree.ElementTree, urllib2
words = {}
def find_text(elem):
for word in elem.text.split():
words[word] = words.get(word, 0) + 1
for e in elem: find_text(e)
url = 'http://www.w3schools.com/xml/plant_catalog.xml'
conn = urllib2.urlopen(url)
doc = elementtree.ElementTree.parse(conn).getroot()
conn.close()
find_text(doc)
w = [(y,x) for x,y in words.items()]
w.sort()
for num, word in w:
print "%d: %s" %(num, word)
... ale jinak to trpí tím samým neduhem co předchozí verze.
w = [(y,x) for x,y in words.items()]
w.sort()
for num, word in w:
print "%d: %s" %(num, word)
jde v Python 2.4 nahradit
for word, num in sorted(
words.iteritems(),
key=lambda x: x[::-1],
reverse=True
):
print "%d: %s" %(num, word)Principiálně je to totéž jakow = [(y,x) for x,y in words.iteritems()]
w.sort()
for num, word in w:
print "%d: %s" %(num, word)Ale vypadá to víc perlish :) (jinak to použití iteritems místo items by mělo ušetřit trochu paměti, ještě trošku paměti by mělo ušetřit
for word in sorted(
words.iterkeys(),
key=lambda x: (words[x], x),
reverse=True
):
print "%d: %s" %(words[word], word)ale tam už bude kulhat rychlost) Aneb správný perlista dokáže napsat perlový kód v jakémkoli jazyku 
Pichi varuje: Tento příspěvek není kritika, jen má sloužit jako studijní materiál.
w = [(y,x) for x,y in words.iteritems()]
del words #šetříme pamětí
w.sort()
for num, word in w:
print "%d: %s" %(num, word)

lynx -dump www.abclinuxu.cz \ | sed -e 's/[^a-z0-9]\+/ /g' -e 's/[ \t]\+/\n/g' \ | sort \ | uniq -c \ | sort -n
Tiskni
Sdílej: