Do prodeje jde tichá bezdrátová herní myš Logitech PRO X2 SUPERSTRIKE s analogovými spínači s haptickou odezvou (HITS, Haptic Inductive Trigger System). Cena je 4 459 Kč.
Microsoft na GitHubu zveřejnil zdrojový kód projektu LiteBox, jedná se o 'knihovní operační systém' (library OS) zaměřený na bezpečnost, využívající systémovou architekturu LVBS k ochraně jádra před útoky z uživatelského prostoru. LiteBox je napsán v Rustu a uvolněný pod licencí MIT. Projekt je teprve v rané fázi vývoje.
BreezyBox je open-source shell a virtuální terminál pro populární jednočip ESP32. Nabízí základní unixové příkazy, sledování aktuálního pracovního adresáře (CWD), jednoduchý instalátor a spouštěč aplikací v podobě ELF binárních souborů, zabudovaný HTTP server nebo třeba ovládání WiFi - ukázka použití coby 'malého osobního počítače'. Ačkoliv je BreezyBox inspirovaný BusyBoxem, oproti němu má tento projekt několik externích závislostí, zejména na ESP-IDF SDK. BreezyBox je dostupný pod licencí MIT.
Byl představen cross-assembler xa.sh, napsaný čistě v Bourne shell skriptu. Tento nástroj umožňuje zpracovávat assemblerový kód pro Intel 8080, přičemž je možné snadno přidat podporu i pro další architektury, například 6502 a 6809. Skript využívá pouze různé běžné unixové příkazy jako jsou awk, sed nebo printf. Skript si lze stáhnout z GitHubového repozitáře projektu.
Byla představena nová verze modelu Claude Opus 4.6 od společnosti Anthropic. Jako demonstraci možností Anthropic využil 16 agentů Claude Opus 4.6 k vytvoření kompilátoru jazyka C, napsaného v programovacím jazyce Rust. Claude pracoval téměř autonomně, projekt trval zhruba dva týdny a náklady činily přibližně 20 000 dolarů. Výsledkem je fungující kompilátor o 100 000 řádcích kódu, jehož zdrojový kód je volně dostupný na GitHubu pod licencí Creative Commons.
Kultovní britský seriál The IT Crowd (Ajťáci) oslavil dvacáté výročí svého prvního vysílání. Sitcom o dvou sociálně nemotorných pracovnících a jejich nadřízené zaujal diváky svým humorem a ikonickými hláškami. Seriál, který debutoval v roce 2006, si i po dvou dekádách udržuje silnou fanouškovskou základnu a pravidelně se objevuje v seznamech nejlepších komedií své doby. Nedávné zatčení autora seriálu Grahama Linehana za hatecrime však vyvolává otázku, jestli by tento sitcom v současné Velké Británii vůbec vznikl.
Společnost JetBrains oznámila, že počínaje verzí 2026.1 budou IDE založená na IntelliJ ve výchozím nastavení používat Wayland.
Společnost SpaceX amerického miliardáře Elona Muska podala žádost o vypuštění jednoho milionu satelitů na oběžnou dráhu kolem Země, odkud by pomohly zajistit provoz umělé inteligence (AI) a zároveň šetřily pozemské zdroje. Zatím se ale neví, kdy by se tak mělo stát. V žádosti Federální komisi pro spoje (FCC) se píše, že orbitální datová centra jsou nejúspornějším a energeticky nejúčinnějším způsobem, jak uspokojit rostoucí poptávku po
… více »Byla vydána nová verze 2.53.0 distribuovaného systému správy verzí Git. Přispělo 70 vývojářů, z toho 21 nových. Přehled novinek v poznámkách k vydání.
Spolek OpenAlt zve příznivce otevřených řešení a přístupu na 216. sraz, který proběhne v pátek 20. února od 18:00 v Red Hat Labu (místnost Q304) na Fakultě informačních technologií VUT v Brně na ulici Božetěchova 1/2. Tématem srazu bude komunitní komunikační síť MeshCore. Jindřich Skácel představí, co je to MeshCore, předvede nejrůznější klientské zařízení a ukáže, jak v praxi vypadá nasazení vlastního repeateru.
sh -c 'xsel | xvkbd -file - 2>/dev/null'To jsem v GNOME nastabil na ThinkVantage tlačítko (nefunguje to s kombinacemi dvou kláves - respektive funguje, ale musí se prvně sekundu, během které je nutné uvolnit obě klávesy, spát a to mi nevyhovovalo) a všechno bylo super. Používal jsem to hlavně ve vimu (teď se určitě dozvím, že vim na to už dávno má nějakou funkci) na programování, takže jsem si dlouho nevšiml, že to nefunguje s diakritikou. Když ale vyberu něco jako "ěščřžýáíé", vyleze z toho "ÄÅ¡ÄÅÅÃáÃé". Zkusil jsem nastavit české locale, ale nepomohlo to. xvkbd používá xaw toolkit, který nerozumí unicode. V tom asi bude problém, ale moc nevím, co s tím, nemá někdo radu? (I když teď jsem objevil, že totéž zvládne shift+insert - to je sice trochu nešikovná zkratka, ale aspoň funguje. Prý nejde přemapovat, tak to nebudu zkoušet)
Řešení dotazu:
iconv by nepomohl?
.
#!/bin/bash
aa=0
for randstring in `xsel`
do
if [[ "$randstring" =~ [ěščřžýáíéúůóťďň] ]]
then
xxx=`xsel|sed 's/ě/\\\[ecaron]/g' |sed 's/š/\\\[scaron]/g' |sed 's/č/\\\[ccaron]/g' |sed 's/ř/\\\[rcaron]/g' |sed 's/ž/\\\[zcaron]/g' |sed 's/ý/\\\[yacute]/g' |sed 's/á/\\\[aacute]/g' |sed 's/í/\\\[iacute]/g' |sed 's/é/\\\[eacute]/g' |sed 's/ú/\\\[uacute]/g' |sed 's/ů/\\\[uring]/g' |sed 's/ó/\\\[oacute]/g' |sed 's/ď/\\\[dcaron]/g' |sed 's/ň/\\\[ncaron]/g' |sed 's/ť/\\\[tcaron]/g'`
xvkbd -text "$xxx" 2>/dev/null
aa=1
break
else
aa=0
fi
done
if [[ $aa -eq 0 ]]
then
xsel | xvkbd -file - 2>/dev/null
fi
Přijde mi, že -file je rychlejší než -text, tak když tam nejsou žádné české znaky, používám file.
Rozbije se to na věcech jako ü atp., ale s těmi se moc často nesetkávám a když, tak je jednoduché to do skriptu dodat.
sed -e "výraz 1" -e "výraz 2" -e "výraz 3";)
xvkbd -text "---8<-----\nToday date is: $(date +%Y%m%d)\n---8<-----" 2>/dev/nullsprávně napíše několik řádků, kdežto (když je v xsel je několik řádků)
xx=`xsel |sed ':a;N;$!ba;s/\n/\\n/g'` xvkbd -text "$xx" 2>/dev/null\"vše dá na jednu řádku:-/.
#!/bin/bash
aa=0
for randstring in `xsel`
do
if [[ "$randstring" =~ [ěščřžýáíéúůóťďň] ]]
then
xxx=`xsel|sed '
s/ě/\\\[ecaron]/g
s/š/\\\[scaron]/g
s/č/\\\[ccaron]/g
s/ř/\\\[rcaron]/g
s/ž/\\\[zcaron]/g
s/ý/\\\[yacute]/g
s/á/\\\[aacute]/g
s/í/\\\[iacute]/g
s/é/\\\[eacute]/g
s/ú/\\\[uacute]/g
s/ů/\\\[uring]/g
s/ó/\\\[oacute]/g
s/ď/\\\[dcaron]/g
s/ň/\\\[ncaron]/g
s/ť/\\\[tcaron]/g
:a;N;$!ba;s/\n/\\\\n/g'`
xvkbd -text "$xxx" 2>/dev/null
aa=1
break
else
aa=0
fi
done
if [[ $aa -eq 0 ]]
then
xsel | xvkbd -no-jump-pointer -file - 2>/dev/null
#xsel | xvkbd -file - 2>/dev/null
fi
#!/bin/bash
aa=0
for randstring in `xsel`
do
if [[ "$randstring" =~ [ěščřžýáíéúůóťďň] ]]
then
xxx=`xsel|sed 's/ě/\\\[ecaron]/g
s/š/\\\[scaron]/g
s/č/\\\[ccaron]/g
s/ř/\\\[rcaron]/g
s/ž/\\\[zcaron]/g
s/ý/\\\[yacute]/g
s/á/\\\[aacute]/g
s/í/\\\[iacute]/g
s/é/\\\[eacute]/g
s/ú/\\\[uacute]/g
s/ů/\\\[uring]/g
s/ó/\\\[oacute]/g
s/ď/\\\[dcaron]/g
s/ň/\\\[ncaron]/g
s/ť/\\\[tcaron]/g' |sed ':a;N;$!ba;s/\n/\\\\n/g'`
xvkbd -no-jump-pointer -text "$xxx" 2>/dev/null
aa=1
break
else
aa=0
fi
done
if [[ $aa -eq 0 ]]
then
xsel | xvkbd -no-jump-pointer -file - 2>/dev/null
fi
click.c:
#include <unistd.h>
#include <stdio.h>
#include <X11/Xlib.h>
#include <X11/Xutil.h>
int main(int argc, char* argv[]) {
Display *display = XOpenDisplay(NULL);
XEvent event = {0};
if(display == NULL) {
fprintf(stderr, "Failed to open Display!\n");
return 1;
}
event.type = ButtonPress;
event.xbutton.button = 2;
event.xbutton.same_screen = True;
/* Get mouse owner */
XQueryPointer(display, RootWindow(display, DefaultScreen(display)), &event.xbutton.root,
&event.xbutton.window, &event.xbutton.x_root, &event.xbutton.y_root, &event.xbutton.x,
&event.xbutton.y, &event.xbutton.state);
event.xbutton.subwindow = event.xbutton.window;
/* Get the deepest subwindow of owner */
while(event.xbutton.subwindow)
{
event.xbutton.window = event.xbutton.subwindow;
XQueryPointer(display, event.xbutton.window, &event.xbutton.root, &event.xbutton.subwindow,
&event.xbutton.x_root, &event.xbutton.y_root, &event.xbutton.x, &event.xbutton.y,
&event.xbutton.state);
}
if(XSendEvent(display, PointerWindow, True, 0x1000, &event) == 0) {
fprintf(stderr, "Failed to send ButtonPress!\n");
}
XFlush(display);
usleep(100000);
event.type = ButtonRelease;
/* Middle mouse press mask */
event.xbutton.state |= 0x200;
if(XSendEvent(display, PointerWindow, True, 0xfff, &event) == 0) {
fprintf(stderr, "Failed to send ButtonRelease!\n");
}
XFlush(display);
XCloseDisplay(display);
return 0;
}
Kompilace:gcc click.c -o click -Wall -pedantic -lX11click posle aktivnimu oknu simulaci prostredniho tlacitka (pozor, nektere aplikace vyzaduji povoleni symulovanych udalosti, napr.: xterm - Allow SendEvents).xterm, gvim, chrome a nejaka java.
~/.Xdefaults je oznacen jako deprecated.~/.Xdefaults nepouzivam): do ~/.Xresourcex vlozim radek XTerm*allowSendEvents: true (mozna tahle syntaxe by zabrala i v ~/.Xdefaults), pak si pockam na restart X, nebo rucne spustim xrdb -merge ~/.Xresources.sleep 3 && ./click a do 3 sekund presunout ukazatel mysi na spravne okno.
.
$ xdotool click 2;)
Tiskni
Sdílej: