Ve Würzburgu dnes začala konference vývojářů a uživatelů desktopového prostředí KDE Akademy 2024. Sledovat lze také online (YouTube, Mastodon, 𝕏, …)
Byla vydána nová major verze 14 svobodného systému pro řízení přístupu k síti (NAC) PacketFence (Wikipedie). Přehled novinek v oznámení o vydání. Pro uživatele předchozích verzí jsou k dispozici poznámky k aktualizaci.
Jak nahrávat zvuk z webového prohlížeče na Linuxu s PipeWire pomocí Nahrávání zvuku (Sound Recorder) a Helvum případně qpwgraph, článek na webu Libre Arts.
Open source platforma Home Assistant (Demo, GitHub, Wikipedie) pro monitorování a řízení inteligentní domácnosti byla vydána ve verzi 2024.9.
České bezpečnostní instituce, jmenovitě Vojenské zpravodajství (VZ) a Bezpečnostní informační služba (BIS), ve spolupráci s americkou Agenturou pro kybernetickou a infrastrukturní bezpečnost (CISA), Federálním úřadem pro vyšetřování (FBI), Národní bezpečností agenturou (NSA) a dalšími mezinárodními partnery ze Spojeného království, Austrálie, Kanady, Německa, Nizozemska, Estonska, Ukrajiny a Lotyšska vydaly upozornění (
… více »Byla vydána (𝕏) srpnová aktualizace aneb nová verze 1.93 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a animovanými gify v poznámkách k vydání. Ve verzi 1.93 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.
Společnost Laravel stojící za stejnojmenným open source PHP frameworkem získala investici 57 milionů dolarů od společnosti Accel. Především na Laravel Cloud.
Byla vydána verze 1.81.0 programovacího jazyka Rust (Wikipedie). Podrobnosti v poznámkách k vydání. Řešena je také zranitelnost CVE-2024-43402. Vyzkoušet Rust lze například na stránce Rust by Example.
Vládní CERT vydal (𝕏) novou verzi nástroje maldump. Ten slouží k extrakci souborů z karantén různých antivirových programů. A to jak z živého systému, tak z obrazu disku.
Řešení dotazu:
Funkce getch() z unixové knihovny (n)curses? Tak povídej...Ja s céčkom len začínam, na nete som našiel getch() a putgh(), vo win fungovali s knihovňou stdio.h, nevedel som, že mám použiť inú knihovňu pre linux, na nete som našiel, že to nefunguje, preto som sa spýtal skúsenejších. Teda knihovňa sa volá: curses.h?
conio.h
je zalezitost DOS/Windows.
Jedna z moznosti je pouzit curses .. len ono to ma svoj dovod, preco sa to vola "curses". A nesuvisi to s cursorom ;)
Ale k veci. Ak sa ucis C, predpokladam, ze getch* fcie pouzivas na typicke ukazkove priklady. Raz pri jednom programe som potreboval fciu, co by sa spravala presne ako getche .. na public forach som nasiel vtedy toto (davam ti aj cely program s trivialnou ukazou):
#include <stdio.h> #include <termios.h> /* mygetch() */ #include <unistd.h> /* mygetch() */ int mygetch(); int main() { fprintf(stdout, "press something .. \n"); char c = (char)mygetch(); fprintf(stdout, "you've pressed: %c\n", c); return 0; } /* borrowed from public forums */ int mygetch() { struct termios oldt,newt; int ch; tcgetattr( STDIN_FILENO, &oldt ); newt = oldt; newt.c_lflag &= ~( ICANON | ECHO ); tcsetattr( STDIN_FILENO, TCSANOW, &newt ); ch = getchar(); tcsetattr( STDIN_FILENO, TCSANOW, &oldt ); return ch; }
mygetch()
sa tu sprava presne ako getche()
v DOSe. Manualova stranka k tcgetattr by ti k tomu povedala viac (riadok 24 nastavuje co sa bude robit po stisku, ak to poviem tak zjednodusene).
c = getchar();
while (getchar() != Enter)
;
mygetch
fcia. len osetrenie vstupu je elegantnejsie. ber to s humorom, ale ked vidim taketo slucky, tak ma vzdy napadne citat z pelisok: "komu tim prospejete!" :)
ked sa zacina ucit, tak nepotrebuje (zatial) riesit ako to funguje - zavola si mygetch()
a sustredi sa na problem, ktory riesi v ulohe.
getch
(teda orig fcia z conio.h
) tak musi spravit nejaky kompromis.
na niektore priklady, reps. ukazky problemu sa proste ten getch()
hodi, ci uz len na nejaky vyber z menu alebo nejake very easy eye candy ukazky (co niekedy celkom tiez potesi, ked sa clovek zacina ucit a nejedna sa o serioznu vec)
Ideme v céčku od základov a využívame len to, čo bolo v lekciách. Programy testujem na win aj na linuxe podľa toho v akom prestredí ich vytvorili ich tvorcovia - začiatočníci.Co by si cakal od zaciatocnika? Tak isto nebol uvedeny vek zacinajuceho programatora. Ja s tebou inak suhlasim, som za dodrziavanie best practices, nech sa ich ucia pokial mozno co najskor. Ale su to zaciatocnici - a vtedy to treba brat trosku s rezervou. Inak sa mi tento priklad hodi analogicky na to, ako sa vela krat hovorilo, ze z akych dovodov niekto pise shellove skripty v bash-y, ked ani len v tom scripte nevyuziva ziaden bashism. A napriek tomu sa mrte skriptov v komunitach zacina tym odpornym:
/bin/bash
. So much for compatibility :/ .. ale to som uz mimo temu..
z akych dovodov niekto pise shellove skripty v bash-y, ked ani len v tom scripte nevyuziva ziaden bashism.Z jednoduchých: udělal to někdy naopak (tedy bashový skript s intepretem /bin/sh) a dostal vynadáno -- oprávněně. No a /bin/bash je prostě autorova volba interpretu. Skript nemusí obsahovat shodou okolností žádné bashismy, když má ještě pět řádků, ale čeká se, že je bude obsahovat, až se rozroste na padesát -- skript v bashi je to přitom celou dobu.
Z jednoduchých: udělal to někdy naopak (tedy bashový skript s intepretem /bin/sh) a dostal vynadáno -- oprávněně.no toho cloveka, co mu vynadal treba pouzit uz tebou spomenute riesenie - obesit na platane.
Tiskni
Sdílej: