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 15:33 | IT novinky

    Po 26 letech od protiprávního policejního zásahu, který byl spuštěn na základě podnětu společnosti Microsoft, Obvodní soud pro Prahu 2 rozsudkem potvrdil, že Mironet prokázal významnou část svého nároku na náhradu škody vůči Ministerstvu spravedlnosti ČR. Soudem nyní přiznaná část nároku znamená rekordní odškodné, jaké kdy české soudy přiznaly za nesprávný postup státu. Spor byl rozdělen na několik škod, u pravomocně uzavřených částí

    … více »
    Ladislav Hagara | Komentářů: 15
    včera 15:22 | Nová verze

    Lehké desktopové prostředí LXQt bylo vydáno ve verzi 2.4.0. Jde o převážně opravné vydání s drobnými vylepšeními podpory Waylandu.

    |🇵🇸 | Komentářů: 0
    včera 12:44 | IT novinky

    Počítačová hra Kingdom Come: Deliverance 2 českého studia Warhorse získala cenu BAFTA v kategorii nejlepší příběh. V konkurenci pěti dalších nominovaných děl porazila i úspěšnou francouzskou hru Clair Obscur: Expedition 33, která v letošním ročníku získala cenu za nejlepší hru roku.

    Ladislav Hagara | Komentářů: 1
    včera 12:22 | Komunita

    Projekt KDE oslaví v říjnu 30 let. Matthias Ettrich poslal 14. října 1996 do diskusní skupiny comp.os.linux.misc zprávu, která započala historii projektu. Důležité milníky jsou zobrazeny na časové ose KDE.

    Ladislav Hagara | Komentářů: 2
    včera 02:55 | Komunita

    Byly vyhlášeny výsledky letošní volby vedoucí/ho projektu Debian (DPL, Wikipedie). Poprvé povede Debian žena. Novou vedoucí je Sruthi Chandran. Letos byla jedinou kandidátkou. Kandidovala již v letech 2020, 2021, 2024 a 2025. Na konferenci DebConf19 měla přednášku Is Debian (and Free Software) gender diverse enough?

    Ladislav Hagara | Komentářů: 16
    včera 00:55 | Nová verze

    Byla vydána nová verze 10.3 z Debianu vycházející linuxové distribuce DietPi pro (nejenom) jednodeskové počítače. Přehled novinek v poznámkách k vydání. Přidána byla podpora Orange Pi 4 LTS. Přibyl balíček Prometheus.

    Ladislav Hagara | Komentářů: 0
    19.4. 18:55 | Nová verze

    Implementace VPN softwaru WireGuard (Wikipedie) pro Windows, tj. WireGuard pro Windows a WireGuardNT, dospěly do verze 1.0.

    Ladislav Hagara | Komentářů: 2
    19.4. 16:11 | IT novinky

    V Pekingu dnes proběhl 2. ročník půlmaratonu humanoidních robotů. První 3 místa obsadili roboti Honor Lightning v různých týmech. Nový rekord autonomního robota je 50 minut a 26 sekund. Operátorem řízený robot to zvládl i s pádem za 48 minut a 19 sekund. Řízení roboti měli časovou penalizaci 20 %. Před rokem nejrychlejší robot zvládl půlmaraton za 2 hodiny 40 minut a 42 sekund. Aktuální lidský rekord drží Jacob Kiplimo z Ugandy s časem 57 minut a 20 sekund [𝕏].

    Ladislav Hagara | Komentářů: 6
    17.4. 17:11 | Zajímavý článek

    Stanislav Fort, vedoucí vědecký pracovník z Vlčkovy 'kyberbezpečnostní' firmy AISLE, zkoumal dopady Anthropic Mythos (nový AI model od Anthropicu zaměřený na hledání chyb, který před nedávnem vyplašil celý svět) a předvedl, že schopnosti umělé inteligence nejsou lineárně závislé na velikosti nebo ceně modelu a dokázal, že i některé otevřené modely zvládly v řadě testů odhalit ve zdrojových kódech stejné chyby jako Mythos (například FreeBSD CVE-2026-4747) a to s výrazně nižšími provozními náklady.

    MakeIranBombedAgain❗ | Komentářů: 8
    17.4. 12:44 | IT novinky

    Federální návrh zákona H.R.8250 'Parents Decide Act', 13. dubna předložený demokratem Joshem Gottheimerem a podpořený republikánkou Elise Stefanik coby spolupředkladatelkou (cosponsor), by v případě svého schválení nařizoval všem výrobcům operačních systémů při nastavování zařízení ověřovat věk uživatelů a při používání poskytovat tento věkový údaj aplikacím třetích stran. Hlavní rozdíl oproti kalifornskému zákonu AB 1043 a kolorádskému SB26-051 je ten, že federální návrh by platil rovnou pro celé USA.

    MakeIranBombedAgain❗ | Komentářů: 13
    Které desktopové prostředí na Linuxu používáte?
     (14%)
     (8%)
     (1%)
     (12%)
     (30%)
     (3%)
     (6%)
     (2%)
     (15%)
     (25%)
    Celkem 1367 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník

    Pomocné skripty pro Kate a KWrite

    18.3.2007 13:00 | Přečteno: 1762× | Jen tak | Výběrový blog | poslední úprava: 18.3.2007 13:04

    Na mém oblíbeném textovém editoru KWrite (a pro některé situace Kate) mi vždy vadilo, že neumožňuje snadné přidání pomocných editačních skriptů/maker do menu a do nástrojové lišty. Našel jsem si tedy berličku, která tuto vlastnost docela dobře supluje (nemusíte se namáhat... na Vim nepřejdu :-)).

    Kate má několik možností, jak s textem manipulovat pomocí externích nástrojů:

    Nástroje -> Externí nástroje

    Tohle se hodí na činnosti, které sice pracují s textem z právě otevřeného dokumentu, ale nesnaží se už výsledek své práce nacpat zpátky do editoru. Jinými slovy: chcete-li mít v menu (nebo v nástrojové liště) příkaz, který vezme právě editovaný text a odešle ho emailem, je to ideální. Stejně tak se to dá použít například pro jednoduché vyhledání označeného slova ve slovníku na webu a podobně.

    Daleko méně vhodné je používání "Externích nástrojů" k provádění editačních změn přímo v rámci editoru. Ačkoliv to je možné, není to zrovna šikovné - výjimkou jsou akce, které pracují s celým souborem a jejichž výsledkem je hodně jiný text. Důvodem je to, že ta operace se skládá z následujících (samozřejmě automatizovaných) kroků: ulož editovaný soubor, předej jeho obsah externímu nástroji, přepiš původní soubor výstupem daného nástroje (a uživatel pak musí odsouhlasit znovunačtení upraveného souboru v editoru). Tj. chcete-li provést změny v jediném řádku nebo odstavci, je lepší hledat jiné řešení. Ale pokud chcete vzít celý soubor, prohnat ho přes nějaký jiný program a výsledek pak dále editovat, stojí to za zvážení.

    Pluginy

    Kate umožňuje začlenění nových pluginů. Znamená to ovšem, že si takový plugin musíte naprogramovat. Pro uživatele, kteří umí C++, by to neměl být problém. Zvláště s pomocí ukázkového pluginu "Hello World", který je s Kate dodáván.

    Má to však dvě zásadní nevýhody: jednak už zmíněná podmínka (znalost C++), ale především komplikovanost celého procesu. Dejme tomu, že bych chtěl nástroj, který vezme právě označený text a prohodí v něm malá a velká písmena. (Jde to sice provést pomocí regulárních výrazů v Úpravy -> Nahradit, ale protože není možné nahrávat makra, muselo by se to pokaždé zadávat znovu.) Plugin by to sice mohl vyřešit (včetně třeba ikonky v toolbaru), ale to bych musel nejprve (napsat a) zkompilovat a nainstalovat knihovnu, která by takovou funkci poskytovala. Kvůli takové prkotině je to kanón na vrabce.

    On je to ostatně kanón na vrabce i v případě pluginů, které jsou s Kate přibaleny. Například dialogový boxík, do kterého lze zadat písmeno, ze kterého bude vytvořen uzavřený HTML tag (zadám b a do textu se vloží <b></b>). Potýkat se kvůli takové věci s .cpp, .h, .la, .so, Makefile atd. - to je fakt přehnané, když by na to stačilo deset řádků nějakého skriptu.

    Náznak rozumnějšího řešení jsem nalezl na stránkách KJSEmbed, které se věnují možnosti skriptování KPart aplikací pomocí JavaScript/ECMAScript enginu zabudovaného přímo do KDE: KJS. Mezi příklady uvedenými na těch stránkách je dokonce i jeden, který přidává jednoduchou javascriptovou funkci do KWrite prostřednictvím KPart::Plugin (html2text). Bohužel se mi tento příklad nepodařilo rozchodit. Pokud s tím někdo máte zkušenosti, podělte se, prosím.

    Pro KDE4 se připravuje systém Kross (tutoriál), který by měl umožňovat jednoduché přidávání skriptů do aplikací. Zatím je připravena podpora pro Ruby, Python a JavaScript (opět přes KJS). Ale to je budoucnost, já potřebuji pracovat teď.

    The Kate JavaScript API

    Poslední možnost. A zdálo by se, že ideální. Jediná chybka je, že skripty, které si pro Kate připravíte, je možné spouštět pouze v interní příkazové řádce editoru. Nejde je vložit do menu a tím pádem ani do nástrojové lišty. Nejde jim dokonce ani přiřadit klávesovou zkratku. Chcete-li skript spustit, musíte prostě napsat jeho název (nebo určený příkaz) do příkazové řádky. Autoři k tomu v nápovědě píší:

    We know that many of you will be disappointed because you can't add your scripts to the menu or assign shortcuts to them. Sorry, sometime in the future that will likely be possible.

    To zamrzí. Poskytované API sice není nějak extra rozsáhlé, ale pro základní operace bohatě stačí. Je tedy nutné toto omezení nějak obejít, aby bylo možné skripty snadno používat. Řešení je jednoduché, i když mi dost dlouho trvalo, než jsem si uvědomil, že by šlo použít.

    Na interní příkazovou řádku se přepíná klávesou F7 - objeví se jednořádkové vstupní pole, do kterého je možné zadávat příkazy. Naštěstí se po (úspěšném) provedení příkazu (tedy v tomto případě skriptu) vrátí "focus" zase do editačního pole s dokumentem, takže není nutné se tam ručně přepínat. Zbývá tedy přiřadit nejdůležitějším skriptům jednopísmenné názvy. Soubory se skripty naštěstí mohou být pojmenovány nějak normálně, protože název příkazu se určuje v souboru .desktop.

    Příklad (podobný příklad je i v nápovědě ke Kate, kde jsou i vysvětleny použité vlastnosti a funkce):

    ~/.kde/share/apps/katepart/scripts/bold.js

    // enclose selection in <b></b>
    
    if ( view.hasSelection() ) {
      column = view.selectionStartColumn;
      line = view.selectionStartLine;
      endcolumn = view.selectionEndColumn + 7;
    
      vysledek = view.selection().bold();
    }
    else {
      column = view.cursorColumn();
      var endcolumn;
      endcolumn = column + 3;
      line = view.cursorLine();
    
      nic = ""
      vysledek = nic.bold();
    }
    
    document.editBegin();
    if ( view.hasSelection() ) {
      view.removeSelectedText();
    }
    document.insertText( line, column, vysledek );
    view.setCursorPosition( line, endcolumn );
    document.editEnd();

    ~/.kde/share/apps/katepart/scripts/bold.desktop

    [Desktop Entry]
    Encoding=UTF-8
    Name=HTML tag &lt;b&gt;
    Comment=Enclose selection in &lt;b&gt;
    X-Kate-Command=b
    X-Kate-Help=&lt;p&gt;Usage: &lt;code&gt;b&lt;/code&gt;&lt;/p&gt;

    Skript se provede postupným stiskem tří kláves: F7 - b - Enter. Je to primitivní akce, ale čas to šetří velmi. Protože je ten skript načten do "katepart", tak ho lze využívat v Kate i KWrite.

           

    Hodnocení: 100 %

            špatnédobré        

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

    Komentáře

    Vložit další komentář

    18.3.2007 13:19 disorder | blog: weblog
    Rozbalit Rozbalit vše Re: Pomocné skripty pro Kate a KWrite
    nemusíte se namáhat... na Vim nepřejdu
    uf, kto by prechadzal na vim, ked existuje emacs? :P
    David Watzke avatar 18.3.2007 13:28 David Watzke | skóre: 74 | blog: Blog... | Praha
    Rozbalit Rozbalit vše Re: Pomocné skripty pro Kate a KWrite
    Co má společného textový editor s operačním systémem bez textového editoru?
    “Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
    18.3.2007 13:33 Lu-Tze | skóre: 15 | blog: Lu-Tzeho blog
    Rozbalit Rozbalit vše Re: Pomocné skripty pro Kate a KWrite
    I chytří lidé mohou psát hloupé komentáře...
    18.3.2007 14:51 Michal Vyskočil | skóre: 60 | blog: miblog | Praha
    Rozbalit Rozbalit vše Re: Pomocné skripty pro Kate a KWrite
    Gentoo Linux causes global warming! Hug a tree, use Debian!
    Ne vždy - viz dfs ;-)
    When your hammer is C++, everything begins to look like a thumb.
    18.3.2007 15:23 disorder | blog: weblog
    Rozbalit Rozbalit vše Re: Pomocné skripty pro Kate a KWrite
    co "ne vzdy"?
    18.3.2007 19:17 Michal Vyskočil | skóre: 60 | blog: miblog | Praha
    Rozbalit Rozbalit vše Re: Pomocné skripty pro Kate a KWrite
    No, že při použití zmiňovaného Debian From Scratch na tom budou stromy, o kterých píšeš v patičce, úplně stejně, jako v případě použití Gentoo :-D
    When your hammer is C++, everything begins to look like a thumb.
    18.3.2007 19:42 disorder | blog: weblog
    Rozbalit Rozbalit vše Re: Pomocné skripty pro Kate a KWrite
    1) ved to nikto nepouziva

    2) nie je tam "use DFS" :P
    18.3.2007 13:32 Lu-Tze | skóre: 15 | blog: Lu-Tzeho blog
    Rozbalit Rozbalit vše Re: Pomocné skripty pro Kate a KWrite
    Šlo by i přes dcop, ne? Přes SelectionInterface získám označený text, přes SelectionInterfaceExt zjistím jeho pozici (souřadnice: řádek, sloupec), pak ten text mohu prohnat libovolným filtrem, výběr smažu (SelectionInterface.removeSelectedTest()) a na uloženou pozici vložím výstup filtru (EditInterface.insertText(..)).
    18.3.2007 14:37 Robert Krátký | skóre: 94 | blog: Robertův bloček
    Rozbalit Rozbalit vše Re: Pomocné skripty pro Kate a KWrite
    No jo, ale jak takovou akci zakomponovat do UI?
    18.3.2007 14:51 Lu-Tze | skóre: 15 | blog: Lu-Tzeho blog
    Rozbalit Rozbalit vše Re: Pomocné skripty pro Kate a KWrite
    Např. přes ty external tools, přičemž v dialogu pro přidání nástroje nastavit save na none, aby to nepožadovalo uložení dokumentu. A přidat si external tools jako buttonek do toolbaru.

    Při spuštění toho skriptu by se jako první věc muselo zjistit, který dokument se právě edituje, nejspíš pomocí KateDocumentManager.activeDocument() a pak použít ty fce, jak jsem psal.

    Takový skript je stačí samozřejmě jenom jeden, jako parametr bych mu dával filrt, který se má použít.
    18.3.2007 14:56 Lu-Tze | skóre: 15 | blog: Lu-Tzeho blog
    Rozbalit Rozbalit vše Re: Pomocné skripty pro Kate a KWrite
    Důvodem je to, že ta operace se skládá z následujících (samozřejmě automatizovaných) kroků: ulož editovaný soubor, předej jeho obsah externímu nástroji, přepiš původní soubor výstupem daného nástroje (a uživatel pak musí odsouhlasit znovunačtení upraveného souboru v editoru).
    Ono totiž tohle není obecně pravda...

    Je tam např. i nástroj google selection, je jasné, že ten takhle nepracuje.
    18.3.2007 15:44 Robert Krátký | skóre: 94 | blog: Robertův bloček
    Rozbalit Rozbalit vše Re: Pomocné skripty pro Kate a KWrite
    Je tam např. i nástroj google selection, je jasné, že ten takhle nepracuje.
    To bylo míněno k druhu akce, která vrací výsledek zpět do editovaného souboru. Google selection jen vezme řetězec a šoupne ho Konqueroru, ať si s ním poradí. Není tam to vrácení výsledku zpět do otevřeného dokumentu.
    18.3.2007 15:46 Robert Krátký | skóre: 94 | blog: Robertův bloček
    Rozbalit Rozbalit vše Re: Pomocné skripty pro Kate a KWrite
    Např. přes ty external tools, přičemž v dialogu pro přidání nástroje nastavit save na none, aby to nepožadovalo uložení dokumentu.
    To je pravda. Nenapadlo mě, že při použití DCOP není nutné dokument ukládat a znovu načítat. Dík.
    25.3.2007 20:14 Robert Krátký | skóre: 94 | blog: Robertův bloček
    Rozbalit Rozbalit vše Re: Pomocné skripty pro Kate a KWrite
    Tak jsem to vyzkoušel a funguje to pěkně. Jediná (ale zato podstatná) nevýhoda je, že je to pomalé jak šnek. Příšerně pomalé. Na rozdíl od JavaScriptu, který je bleskový, jsou DCOP volání líné herky.
    18.3.2007 14:00 trekker.dk | skóre: 72
    Rozbalit Rozbalit vše Re: Pomocné skripty pro Kate a KWrite
    Jde to sice provést pomocí regulárních výrazů v Úpravy -> Nahradit, ale protože není možné nahrávat makra, muselo by se to pokaždé zadávat znovu.
    V Kate je možné regulární výraz uložit a poté znovupoužít, takže místo zadávání by mělo stačit pár kliknutí.
    Quando omni flunkus moritati
    18.3.2007 14:36 Robert Krátký | skóre: 94 | blog: Robertův bloček
    Rozbalit Rozbalit vše Re: Pomocné skripty pro Kate a KWrite
    Tak to nevím, jak uložit regexp (tedy kromě rozbalovacího seznamu naposled použitých výrazů)...
    18.3.2007 20:04 trekker.dk | skóre: 72
    Rozbalit Rozbalit vše Re: Pomocné skripty pro Kate a KWrite
    V Kate v tom dialogu "Nahradit", když zaškrtneš "Regulární výraz", tak se ti povolí tlačítko "Upravit". Po kliknutí se objeví "Editor regulárních výrazů", ve kterém zapíšeš regulární výraz a pomocí jednoho z tlačítek na nástrojové liště ho uložíš - objeví se ti pod "Složené regulární výrazy" - "Definováno uživatelem"
    Quando omni flunkus moritati
    18.3.2007 21:57 Robert Krátký | skóre: 94 | blog: Robertův bloček
    Rozbalit Rozbalit vše Re: Pomocné skripty pro Kate a KWrite
    V Kate v tom dialogu "Nahradit", když zaškrtneš "Regulární výraz", tak se ti povolí tlačítko "Upravit". Po kliknutí se objeví "Editor regulárních výrazů",
    No, to se mi právě neobjevoval. Bylo to jen drop-down menu zkratek pro rychlé zadání regexpů.

    Až teprve když jsem četl tento tvůj komentář, tak mi svitlo, že by to mohlo být propojeno s kregexpeditor - prográmek, pro který jsem nikdy neměl užití, protože samostatně je na nic... Tak jsem si ho teď znovu nainstaloval. Díky za postrčení.

    Založit nové vláknoNahoru

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