Open source router Turris Omnia NG Wired je v prodeji. Jedná se o Turris Omnia NG bez Wi-Fi. Je připraven pro zamontování do racku.
Sníh roztál a roztávají i bastlíři. Žene se na nás celá řada konferencí a seminářů technického rázu. Zajímá vás, jaké? Pak se připojte k 60. Virtuální Bastlírně, tedy k veřejné diskuzi bastlířů, techniků, učitelů i vědců. Jako vždy přijde na přetřes spousta novinek ze světa hardwaru, softwaru i bizáru. Na začátek lze očekávat hardwarová témata, tedy například nový KiCAD 10, nové akcelerátory LLM s nízkou spotřebou, nejvíce fosforeskující
… více »IuRe (Iuridicum Remedium) v rámci programu Digitální svobody zveřejnila analýzu dopadů a efektivity systémů ověřování věku v digitálním prostoru, která srovnává implementace ověřování věku v Austrálii, Velké Británii a Evropské unii.
Multiplatformní emulátor terminálu Ghostty byl vydán ve verzi 1.3 (𝕏, Mastodon). Přehled novinek a vylepšení v poznámkách k vydání.
Byla vydána nová verze 14.4 svobodného unixového operačního systému FreeBSD. Podrobný přehled novinek v poznámkách k vydání.
Databáze DuckDB (Wikipedie) byla vydána ve verzi 1.5.0. S kódovým názvem Variegata (husice rajská). Přináší řadu vylepšení, včetně nového ergonomičtějšího CLI klienta nebo podporu pro typ VARIANT a vestavěný typ GEOMETRY.
V pátek 6. a sobotu 7. března proběhl v pražském sídle Nejvyššího kontrolního úřadu (NKÚ) Hackathon veřejné správy 7.1. Publikovány byly vytvořené aplikace. V kategorii projektů rozvíjených z krajského kola zvítězil tým „Mackokládi“. Čtyři středoškoláci ze Dvora Králové uspěli s aplikací KompaZ. Jde o digitálního průvodce, který pomůže s rychlou a srozumitelnou orientací v životních i krizových situacích „krok za krokem“. Aplikace
… více »QGIS, svobodný desktopový GIS, byl vydán v nové hlavní verzi 4.0. Změny zahrnují několik nových analytických a editačních funkcí, rozšíření podpory 3D, více možností úprav uživatelského rozhraní či mnoho dalších zlepšení použitelnosti. Řada 3.44 má aktualizace plánovány do září.
Dan Blanchard vydal knihovnu pro Python chardet v nové verzi 7.0.0. S novou verzí byla knihovna přelicencována z LGPL na MIT. Souhlasili s tím všichni přispěvatelé? Dan Blanchard souhlasy vůbec neřešil. Zaúkoloval umělou inteligenci (Claude), aby knihovnu zcela přepsala a výslovně jí nařídil, aby nepoužila žádný LGPL kód. Dan Blanchard tvrdí, že se jedná o clean room design. Protistrana argumentuje, že umělá inteligence byla trénována
… více »Andy Nguyen si na svou herní konzoli PlayStation 5 (PS5) pomocí exploitu Byepervisor nainstaloval Linux (Ubuntu). V Linuxu si spustil Steam a PS5 tak proměnil v Steam Machine. Na PS5 může hrát hry, které jsou vydané pouze pro PC a jsou na Steamu [Tom's Hardware].
Zdravim, pokousim se napsat jednoduchou syntaxi pro muj osobni editurek. Vstup bude jako slovnik. Jen keyword a jeho syntaxe. Nic vic. Zatim to skoro funguje az na par malickosti ktere poznate ze zdrojaku. Pr: slovo Program mi obarvi dobre s Programy uz ma problemy :) Neporadi nekdo ? BTW : gtksourcebuffer a pygtkcodbuffer nechci pouzit.
#-------------------------------------------------------------------
# Tag Buffer
# Pokus o napsani vlastniho jednoducheho syntax parseru
# vstup: data v podobe slovniku
# key je Keyword a value je typ tagu pouzity
# pro syntaxi
# com dot tbs-software at spooky.ln [ reverse it !!! ]
#-------------------------------------------------------------------
import gtk
class TagBuffer(gtk.TextBuffer):
def __init__(self, keywords):
gtk.TextBuffer.__init__(self)
self.keywords = keywords
self.redTag = gtk.TextTag(name="Red")
self.redTag.set_property("foreground", "dark red")
self.redTag.props.family="Courier"
self.greenTag = gtk.TextTag(name="Green")
self.greenTag.set_property("foreground", "dark green")
self.greenTag.props.family="Courier"
self.blueTag = gtk.TextTag(name="Blue")
self.blueTag.set_property("foreground", "dark blue")
self.blueTag.props.family="Courier"
self.get_tag_table().add(self.redTag)
self.get_tag_table().add(self.greenTag)
self.get_tag_table().add(self.blueTag)
self.connect_after("insert-text", self.__text_insert)
def __text_insert(self,buffer, cursor, text, length):
def __getWordStart(cursor):
character = cursor.get_char()
if character.isalnum() is False:
if character in ("-", "_", "^"):
pass
else:
return False
if cursor.starts_line():
return True
cursor.backward_char()
character = cursor.get_char()
cursor.forward_char()
if character.isalnum() or character in ("_", "-", "^"):
return False
return True
start = cursor.copy()
while __getWordStart(start) is False:
start.backward_char()
if start.get_text(cursor) in self.keywords:
self.apply_tag_by_name(self.keywords[start.get_text(cursor)], start, cursor)
else:
pass
buffer = TagBuffer({"Program": "Red", "Load_AVI": "Green", "^header": "Blue"})
view = gtk.TextView(buffer)
window = gtk.Window()
window.set_default_size(500, 400)
window.connect("destroy", gtk.main_quit)
window.add(view)
window.show_all()
gtk.main()
Zkus konferenci o Pythonu, chodí tam víc Pythonistů než na Ábíčko.
Tiskni
Sdílej: