Před 25 lety, ve čtvrtek 29. dubna 1999, byla spuštěna služba "Úschovna".
Byla vydána nová verze 24.04.28 s kódovým názvem Time After Time svobodného multiplatformního video editoru Shotcut (Wikipedie) a nová verze 7.24.0 souvisejícího frameworku MLT Multimedia Framework. Nejnovější Shotcut je vedle zdrojových kódů k dispozici také ve formátech AppImage, Flatpak a Snap.
Byla vydána verze 5.30 dnes již open source operačního systému RISC OS (Wikipedie).
V aktuálním příspěvku na blogu počítačové hry Factorio (Wikipedie) se vývojář s přezývkou raiguard rozepsal o podpoře Linuxu. Rozebírá problémy a výzvy jako přechod linuxových distribucí z X11 na Wayland, dekorace oken na straně klienta a GNOME, změna velikosti okna ve správci oken Sway, …
Rakudo (Wikipedie), tj. překladač programovacího jazyka Raku (Wikipedie), byl vydán ve verzi #171 (2024.04). Programovací jazyk Raku byl dříve znám pod názvem Perl 6.
Společnost Epic Games vydala verzi 5.4 svého proprietárního multiplatformního herního enginu Unreal Engine (Wikipedie). Podrobný přehled novinek v poznámkách k vydání.
Byl vydán Nextcloud Hub 8. Představení novinek tohoto open source cloudového řešení také na YouTube. Vypíchnout lze Nextcloud AI Assistant 2.0.
Vyšlo Pharo 12.0, programovací jazyk a vývojové prostředí s řadou pokročilých vlastností. Krom tradiční nadílky oprav přináší nový systém správy ladících bodů, nový způsob definice tříd, prostor pro objekty, které nemusí procházet GC a mnoho dalšího.
Microsoft zveřejnil na GitHubu zdrojové kódy MS-DOSu 4.0 pod licencí MIT. Ve stejném repozitáři se nacházejí i před lety zveřejněné zdrojové k kódy MS-DOSu 1.25 a 2.0.
Canonical vydal (email, blog, YouTube) Ubuntu 24.04 LTS Noble Numbat. Přehled novinek v poznámkách k vydání a také příspěvcích na blogu: novinky v desktopu a novinky v bezpečnosti. Vydány byly také oficiální deriváty Edubuntu, Kubuntu, Lubuntu, Ubuntu Budgie, Ubuntu Cinnamon, Ubuntu Kylin, Ubuntu MATE, Ubuntu Studio, Ubuntu Unity a Xubuntu. Jedná se o 10. LTS verzi.
Řešení dotazu:
#include <stdio.h> int main (void) { int a; int b; int c; int d; /* za tento komentar chci vlozit */ return (0); }po:
#include <stdio.h> int main (void) { int a; int b; int c; int d; /* za tento komentar chci vlozit */ int a; int b;return (0); } int c; int d;Jde o Vim verze 7.2
INSERT INTO tab1 (name) VALUES ("abc"); INSERT INTO tab1 (name) VALUES ("def"); /* chci vytvorit novy SQL prikaz s temi stringy - mezi tyhle dva inserty */ INSERT INTO tab2 (num) VALUES (1); INSERT INTO tab2 (num) VALUES (2);výsledek:
INSERT INTO tab1 (name) VALUES ("abc"); INSERT INTO tab1 (name) VALUES ("def"); /* chci vytvorit novy SQL prikaz s temi stringy - mezi tyhle dva inserty */ abc defINSERT INTO tab2 (num) VALUES (1); INSERT INTO tab2 (num) VALUES (2);Jasně, kdyby to byl další insert, tak si zkopíruju celé řádky a blokově přepíšu to co potřebuju (tabulka, sloupce,...), ale o to tu teď nejde. Jde o to, jestli je tohle insert-replace chování správné a pokud ano, tak jak provést čistý insert s blokem textu?
abc defa vložil ho na prázdný řádek příkazem "p" (paste). Nevím k čemu to má být dobré? Každopádně se vim zachoval standardně, odsunul vše co je na následujících řádcích doprava a vložil blok tam, kam jste chtěl. Spíš bych čekal že ho budete vkládat třeba na místo kde je "1" aby blok
1 2nahradil blokem
abc def? Tak pokud najedete na jedničku a dáte "p", tak se to vloží tam, před(nebo za) 1 a 2 se vloží abc a def. 1 a 1 pak ještě musíte blokově smazat. Pokud chcete vytvořit nový SQL příkaz, tak ho ale musíte přece nejdřív vytvořit ;), tedy napsat nějaké to nové INSERT INTO a pak až vkládat blok, ne? Nic takového (ani pokus o to) ve vašem příkladu nevidím :( Takže nevím jestli se to chová nějak opravdu divně nebo jen něco divného děláte :)
Pokud chcete vytvořit nový SQL příkaz, tak ho ale musíte přece nejdřív vytvořit ;), tedy napsat nějaké to nové INSERT INTO a pak až vkládat blok, ne? Nic takového (ani pokus o to) ve vašem příkladu nevidím :( Takže nevím jestli se to chová nějak opravdu divně nebo jen něco divného děláte :)(OT, ale...) Já bych to řešil tak, že bych si nakopíroval hodnoty a pak přes makro bych doplnil to SQL okolo. Ale tak jak píšete by to taky šlo.
INSERT INTO tab1 (name) VALUES ("abc"); INSERT INTO tab1 (name) VALUES ("def"); /* chci vytvorit novy SQL prikaz s temi stringy - opravit tyto dva inserty */ INSERT INTO tab2 (num) VALUES (1); INSERT INTO tab2 (num) VALUES (2);
INSERT INTO tab1 (name) VALUES ("abc"); INSERT INTO tab1 (name) VALUES ("def"); /* chci vytvorit novy SQL prikaz s temi stringy - opravit tyto dva inserty */ INSERT INTO tab2 (num) VALUES (1abc); INSERT INTO tab2 (num) VALUES (2def);ještě smazat blokově 1 a 2 (bývalo by bylo lepší předem)
INSERT INTO tab1 (name) VALUES ("abc"); INSERT INTO tab1 (name) VALUES ("def"); /* chci vytvorit novy SQL prikaz s temi stringy - opravit tyto dva inserty */ INSERT INTO tab2 (num) VALUES (abc); INSERT INTO tab2 (num) VALUES (def);voilà. Další možnost:
INSERT INTO tab1 (name) VALUES ("abc"); INSERT INTO tab1 (name) VALUES ("def"); /* chci vytvorit novy SQL prikaz s temi stringy - opravit tento jeden insert (se nevleze) */ INSERT INTO tab2 (num) VALUES (1); DELETE * FROM tab2 where id='foo';
INSERT INTO tab1 (name) VALUES ("abc"); INSERT INTO tab1 (name) VALUES ("def"); /* chci vytvorit novy SQL prikaz s temi stringy - opravit tento jeden insert (se nevleze) */ INSERT INTO tab2 (num) VALUES (1abc); DELETE * FROM tab2 where id='foodef';moje chyba, neohlídal jsem si počet řádků.
Tiskni Sdílej: