abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    včera 21:00 | IT novinky

    Od 3. listopadu 2025 budou muset nová rozšíření Firefoxu specifikovat, zda shromažďují nebo sdílejí osobní údaje. Po všech rozšířeních to bude vyžadováno někdy v první polovině roku 2026. Tyto informace se zobrazí uživateli, když začne instalovat rozšíření, spolu s veškerými oprávněními, která rozšíření požaduje.

    Ladislav Hagara | Komentářů: 0
    včera 17:11 | Humor

    Jste nuceni pracovat s Linuxem? Chybí vám pohodlí, které vám poskytoval Microsoft, když vás špehoval a sledoval všechno, co děláte? Nebojte se. Recall for Linux vám vrátí všechny skvělé funkce Windows Recall, které vám chyběly.

    Ladislav Hagara | Komentářů: 1
    včera 16:11 | Komunita

    Společnost Fre(i)e Software oznámila, že má budget na práci na Debianu pro tablety s cílem jeho vyžívání pro vzdělávací účely. Jako uživatelské prostředí bude použito Lomiri.

    Ladislav Hagara | Komentářů: 0
    26.10. 17:11 | IT novinky

    Proběhla hackerská soutěž Pwn2Own Ireland 2025. Celkově bylo vyplaceno 1 024 750 dolarů za 73 unikátních zranitelností nultého dne (0-day). Vítězný Summoning Team si odnesl 187 500 dolarů. Shrnutí po jednotlivých dnech na blogu Zero Day Initiative (1. den, 2. den a 3. den) a na YouTube.

    Ladislav Hagara | Komentářů: 4
    26.10. 13:33 | Komunita

    Byl publikován říjnový přehled dění a novinek z vývoje Asahi Linuxu, tj. Linuxu pro Apple Silicon. Pracuje se na podpoře M3. Zanedlouho vyjde Fedora Asahi Remix 43. Vývojáře lze podpořit na Open Collective a GitHub Sponsors.

    Ladislav Hagara | Komentářů: 0
    25.10. 15:44 | Zajímavý software

    Iniciativa Open Device Partnership (ODP) nedávno představila projekt Patina. Jedná se o implementaci UEFI firmwaru v Rustu. Vývoj probíhá na GitHubu. Zdrojové kódy jsou k dispozici pod licencí Apache 2.0. Nejnovější verze Patiny je 13.0.0.

    Ladislav Hagara | Komentářů: 0
    25.10. 05:11 | Zajímavý článek

    Obrovská poptávka po plynových turbínách zapříčinila, že datová centra začala používat v generátorech dodávajících energii pro provoz AI staré dobré proudové letecké motory, konvertované na plyn. Jejich výhodou je, že jsou menší, lehčí a lépe udržovatelné než jejich průmyslové protějšky. Proto jsou ideální pro dočasné nebo mobilní použití.

    karkar | Komentářů: 9
    24.10. 19:55 | Nová verze

    Typst byl vydán ve verzi 0.14. Jedná se o rozšiřitelný značkovací jazyk a překladač pro vytváření dokumentů včetně odborných textů s matematickými vzorci, diagramy či bibliografií.

    Ladislav Hagara | Komentářů: 0
    24.10. 13:33 | Bezpečnostní upozornění

    Specialisté společnosti ESET zaznamenali útočnou kampaň, která cílí na uživatele a uživatelky v Česku a na Slovensku. Útočníci po telefonu zmanipulují oběť ke stažení falešné aplikace údajně od České národní banky (ČNB) nebo Národní banky Slovenska (NBS), přiložení platební karty k telefonu a zadání PINu. Malware poté v reálném čase přenese data z karty útočníkovi, který je bezkontaktně zneužije u bankomatu nebo na platebním terminálu.

    Ladislav Hagara | Komentářů: 21
    24.10. 13:22 | Upozornění

    V Ubuntu 25.10 byl balíček základních nástrojů gnu-coreutils nahrazen balíčkem rust-coreutils se základními nástroji přepsanými do Rustu. Ukázalo se, že nový "date" znefunkčnil automatickou aktualizaci. Pro obnovu je nutno balíček rust-coreutils manuálně aktualizovat.

    Ladislav Hagara | Komentářů: 13
    Jaké řešení používáte k vývoji / práci?
     (36%)
     (47%)
     (20%)
     (19%)
     (23%)
     (17%)
     (21%)
     (17%)
     (18%)
    Celkem 279 hlasů
     Komentářů: 14, poslední 14.10. 09:04
    Rozcestník

    Dotaz: Vim vložit rádek na určitou pozici v souboru

    29.4.2019 12:57 Jack Hokus | skóre: 34 | blog: LostHeaven
    Vim vložit rádek na určitou pozici v souboru
    Přečteno: 330×
    Ahoj,

    potřeboval bych poradit. Mám webovou stránku, která obsahuje menu, které je dělané jako klasický seznam, tento seznam obsahuje každá stránka.

    Když potřebuji přidat nebo odebrat nějakou položku v menu, musím menu editovat na všech stránkách.

    Chtěl bych se zeptat, jak by to šlo udělat ve VIMu najdednou. Něco se mi podařilo najít.

    Takto lze otevřít všechny soubory s příponou .html - :n ./**.html. Nahrazení textu by se dalo udělat třeba takto - :bufdo %s/Windows/linux/.

    Poznámka:Tento příklad je jen ilustrační, vytvořil jsem si dva soubory v obou řádek textu a nahradil jsem slovo Windows slovem Linux.

    Děkuji

    Petr

    http://www.jackhokus.cz/

    Odpovědi

    29.4.2019 14:12 finn | skóre: 43 | blog: finnlandia | 49° 44´/13° 22´
    Rozbalit Rozbalit vše Re: Vim vložit rádek na určitou pozici v souboru
    Řekl bych, že používáš špatné kladivo. Na tyhle úkoly se hodí líp třeba sed nebo perl.
    Užívej dne – možná je tvůj poslední.
    29.4.2019 19:18 ed
    Rozbalit Rozbalit vše Re: Vim vložit rádek na určitou pozici v souboru
    vim (v příkazovém režimu) je v podstatě ed (resp. ex) a tím pádem jako sed. Tzn. řádek vložíme příkazem a. Lze kombinovat s bufdo:
    :a2
    test
    .
    
    vloží text / řádek:

    test
    
    za druhý řádek v souboru.
    :/pokus/
    test
    .
    
    udělá totéž za (prvním od aktulální pozice) řádkem obsahujícím pokus
    29.4.2019 14:21 debian+
    Rozbalit Rozbalit vše Re: Vim vložit rádek na určitou pozici v souboru
    Musi to byt vo vim? Tu mas v php (neosetruje chyby, okrem ak nenajde subory, nerobi nic):
    html subor (nutne minimum pre kod):
    <header>
    	<ul>
    		<li>jeden</li>
    		<li>dva</li>
    		<li>dva</li>
    	</ul>
    </header>
    
    PHP kod:
    <?
    
    define("CESTA_K_PRIECINKU", ".");
    
    function najdi_vsetky_subory()
    {
    	$cesta=CESTA_K_PRIECINKU;
    	$subory=`find $cesta -name "*.html"`;
    	$subory_pole=explode("\n", $subory);
    	unset($subory_pole[count($subory_pole)-1]);
    	
    	return $subory_pole;
    }
    
    function prida_polozku_menu($path_file, $html_item)
    {
    	$html=file_get_contents($path_file);
    	
    	/* hlada koniec menu v header */
    	$poz=strpos($html, '<header');
    	$poz=strpos($html, "\n\t</ul",$poz); /* hlada ul so zac. riadku */
    	
    	/* vytvara novy subor v pamety */
    	$subor=substr($html, 0, $poz);
    	$subor.=$html_item;
    	$subor.=substr($html, $poz);
    	
    	file_put_contents($path_file, $subor);
    }
    
    function odobere_polozku_menu($path_file, $html_item)
    {
    	$html=file_get_contents($path_file);
    	
    	/* hlada koniec menu v header */
    	$html=str_replace($html_item, '', $html);
    	
    	file_put_contents($path_file, $html);
    }
    
    $subory_cesta=najdi_vsetky_subory();
    foreach($subory_cesta as $subor_cesta)
    {
    	echo $subor_cesta."\n";
    	
    	// ukazka pridania
    	prida_polozku_menu($subor_cesta, "\n\t\t<li>pridane</li>");
    	
    	// ukazka odobratia
    	odobere_polozku_menu($subor_cesta, "\t\t<li>jeden</li>\n");
    }
    ?>
    
    29.4.2019 17:05 debian+
    Rozbalit Rozbalit vše Re: Vim vložit rádek na určitou pozici v souboru
    vložit rádek na určitou pozici v souboru
    <?php
    
    /*
     * kladne cislo  - od zaciatku
     * kladne cislo neexistuje pozicia - prida na koniec
     * 0 - prida na koniec
     * zapocne cislo - prida od konca 
     * zapocne cislo neexistuje pozicia - neurobi nic
     */
    function pridaj_riadok($path, $position, $line)
    {
    	$riadky=file($path);
    	$pocet=count($riadky);
    	
    	if($position < (-$pocet))
    		return;
    	if($position < 0)
    		$index=$pocet+$position-1;
    	else
    		if($position == 0 || $position > $pocet)
    		{
    			$index=$pocet;
    			$riadky[$index]=$line."\n";
    			goto preskoc;
    		}
    		else
    			$index=$position-2;
    
    	$riadky[$index].=$line."\n";
    preskoc:
    	
    	file_put_contents($path, $riadky);
    }
    
    // pridaj_riadok('bla.html', 0, '<p>!!!</p>');
    
    ?>
    29.4.2019 17:15 pavele
    Rozbalit Rozbalit vše Re: Vim vložit rádek na určitou pozici v souboru
    :args ./*.html

    :argdo set ff=unix|w
    29.4.2019 20:21 Kit | skóre: 46 | Brno
    Rozbalit Rozbalit vše Re: Vim vložit rádek na určitou pozici v souboru
    Přesně kvůli tomu byly vyvinuty skriptovací jazyky, například PHP. Mohou generovat HTML či jiné formáty on-line či off-line. Stačí udržovat jeden soubor s menu a při jeho modifikaci vygenerovat novou sadu HTML.

    Nejraději na tohle používám XSLT, protože za mne řeší dost věcí lépe než různé frameworky a je to mnohem rychlejší. Menu, data i slovníky stačí udržovat v XML.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    Josef Kufner avatar 29.4.2019 21:10 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Vim vložit rádek na určitou pozici v souboru
    Správné řešení je navštívit https://www.staticgen.com/, vybrat si generátor statických webů a použít ten.

    Jinak koukni na ed (nikoliv sed) a napiš si pro něj skript. Stejné příkazy jdou použít i ve vimu. V dokumentaci ed (info ed) hledej "Line addressing" a "Commands".

    Trochu lepší řešení je umístit si do souboru značky (HTML komentáře na samostatné řádky) a mezi ně skriptem vkládat soubor s menu (a předtím odstranit starý obsah).
    Hello world ! Segmentation fault (core dumped)
    k3dAR avatar 29.4.2019 22:41 k3dAR | skóre: 63
    Rozbalit Rozbalit vše Re: Vim vložit rádek na určitou pozici v souboru
    # nahrazeni Windows za linux
    sed 's/Windows/linux/' -i *.html
    
    # nahrazeni vsech vyskytu (v kazdem radku)
    sed 's/Windows/linux/g' -i *.html
    
    # pridani radku "linux", nad radek zacinajici "Windows"
    sed 's/^Windows/Linux\nWindows/' -i *.html
    
    # pridani radku "linux", nad radek obsahujici jen slovo "Windows"
    sed 's/^Windows$/Linux\nWindows/' -i *.html
    porad nemam telo, ale uz mam hlavu... nobody

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.