
Pokud používáte KDE nebo distribuci jako Manjaro, openSUSE nebo Fedora s Plasmou, dříve či později se s tím setkáte. KWrite a Kate v nabídce aplikacíNa první pohled se zdají být téměř stejné a ve skutečnosti se mnoho lidí diví, proč jsou obě nainstalovány, zda se jedná o stejnou aplikaci, nebo zda lze jednu smazat, aniž by se smazala druhá.
Realita je taková, že KWrite a Kate Jsou to dva velmi blízcí „bratři“.Sdílejí téměř celý interní engine, ale jsou navrženy pro různé účely: jeden jako lehký a jednoduchý editor a druhý jako pokročilé editační prostředí pro programování a rozsáhlé projekty. Pojďme se blíže podívat na to, co je odlišuje, co mají společného, odkud pocházejí a kdy se vyplatí který z nich používat.
Původ a vztah mezi KWrite a Kate
Asi dvacet let, KWrite a Kate šly v ekosystému KDE vždy ruku v ruce.Historicky byl KWrite prvním: jednooknový textový editor (SDI), který se v raných verzích KDE nacházel jako typický „poháněný“ poznámkový blok.
Postupem času se jeden z hlavních vývojářů KDE rozhodl vytvořit Kate jako varianta pro více dokumentů (MDI)Kate, navržená pro práci s více záložkami, více panely a programátorsky orientovanými funkcemi, byla explicitně vytvořena jako nejvýkonnější verze KWrite pro více dokumentů.
Po mnoho let, Oba projekty se ubíraly poněkud odlišnými vývojovými cestami.KWrite se změnil jen málo: zůstal jednoduchým editorem s občasnými vylepšeními a opravami chyb, ale bez toho, aby se stal obrovským „balíčkem“. Kate mezitím obdržela reimplementace funkcí, jako je systém záložek, správa relací, pokročilé pluginy, integrovaný terminál a podpora projektů.
Základní editační systém, který oba používali, je však stejný: knihovna KTextEditor frameworku KDEDíky tomu nabízejí KWrite i Kate velmi výkonný editační zážitek, mnohem lepší než typický obyčejný poznámkový blok, i když KWrite může vizuálně vypadat „základně“.
Jedna kódová základna: když Kate „sežere“ KWrite
V posledních letech bylo ohledně projektu učiněno důležité rozhodnutí: Vyhněte se duplicitnímu kódu a nechte KWrite přímo znovu používat kódovou základnu Katevypnutím pokročilejších funkcí. Tento nápad vznikl, když chtěli do KWrite přidat záložky.
Vývojář (Waqar, velmi aktivní v projektu) začal implementovat podpora řas v KWriteProblém byl v tom, že záložky v Kateině repozitáři byly již několikrát přepsány, a to jak v jádru, tak pomocí pluginů, a nedávalo smysl přidávat další implementaci, která by vyžadovala dlouhodobou údržbu.
Aby se předešlo této duplicitě, tým se rozhodl, že KWrite by neměl nezávislou kódovou základnuale používal by stejné jádro jako Kate s „oříznutým“ režimem. KWrite je nyní postaven jako druh Kate zjednodušila práci bez relací, bez pluginů a s nejčistším rozhranímTechnicky se mezi nimi liší hlavně funkce main a některé kontroly ve sdíleném kódu pro aktivaci nebo skrytí částí rozhraní.
Díky této změně, Bylo odstraněno přibližně tisíc řádků kódu specifického pro KWrite. A ke společnému kódu bylo nutné přidat jen několik řádků kódu. Výsledkem je, že oba editory sdílejí prakticky veškerou logiku, včetně moderního systému tabulací, parsování parametrů příkazového řádku a základního chování při úpravách.
Nicméně, i když sjednotili vnitřní základnu, KWrite si stále uchovává svou vlastní osobnostNesdílí instance mezi okny, nemá správu relací, nenačítá pokročilé pluginy, nenabízí integrovaný terminálový nebo serverový jazyk (LSP) a další. Pokud tyto funkce chcete, budete muset zvolit Kate.
KTextEditor: běžný editační engine
KWrite i Kate Spoléhají na stejnou editační knihovnu, KTextEditor, součást frameworku KDE. Tato knihovna poskytuje téměř všechna výkonná „magická“ editační funkce, která vidíte v obou programech, a používají ji i další aplikace, jako je KDevelop a další KDE IDE.
To znamená, že Čistý zážitek z psaní, výběru, zvýrazňování a manipulace s textem je prakticky identický. mezi KWrite a Kate. Pokud si zvyknete na jeden, nebudete mít problém s používáním druhého, nebo dokonce KDevelopu, protože chování textového pole je konzistentní v celé rodině.
Díky KTextEditoru mají oba editory zvýrazňování syntaxe pro nespočet jazyků, analýza specifických režimů (například Podpora MarkdownHTML, Python, C atd.), editační nástroje, jako je automatické odsazení, číslování řádků, miniaturní zobrazení dokumentu a další funkce, které jdou daleko za rámec prostého editoru.
Instalace a distribuce na různých systémech
Obecně platí, že pokud používáte KDE Plasma, S největší pravděpodobností již máte KWrite nainstalován ve výchozím nastavení.Kate, na druhou stranu, ji možná budete muset nainstalovat ručně, v závislosti na rozvržení.
Na systémech založených na RPM, jako je Fedora, je to tak jednoduché, jako spustit něco jako sudo dnf nainstalujte kwrite kateV jiných distribucích mají balíčky stejné nebo velmi podobné názvy. Navíc, Oba jsou publikovány nezávisleKWrite je k dispozici na apps.kde.org/kwrite a Kate na apps.kde.org/kate.
V ekosystému KDE, Můžete je nainstalovat z Discover přímo na ploše.KWrite je také distribuován jako Flatpak pro prostředí, kde preferujete tento typ samostatného balíčku. Například v Manjaro je uvidíte v Pamac jako samostatné programy, i když z velké části sdílejí zdrojový kód a závislosti.
Je to důležitý detail Nejsou na sobě jako balíčky závisléJinými slovy, můžete mít pouze KWrite, pouze Kate nebo obojí současně, aniž by se vzájemně rušily, bez záměny konfigurací a bez přímých konfliktů závislostí. Fungují jako „dobře vychovaná dvojčata“.
KWrite: lehký editor, ale vůbec ne levný.
Pokud otevřete KWrite s očekáváním něčeho jako notebook extrémně omezené, budete překvapeni, protože Je to lehký editor, ale s několika pokročilými funkcemi.Můžete jej spustit z nabídky aplikací a začít psát tak, jak je, ukládat jednotlivé texty, poznámky, malé skripty atd.
Mezi funkce, které se mu tradičně připisují, patří: Export HTML, zámek režimu výběru, sledování kódu a záložkyDíky tomu všemu je velmi užitečný jak pro psaní poznámek, tak pro neformální úpravu kódu. Nabízí také automatické doplňování slov a další pomůcky pro psaní.
Má Konfigurovatelné zvýrazňování syntaxe pro více jazykůNabízí také výběr režimu ukončení řádku (Unix, Windows, Macintosh) a možnost zvolit kódování textu. I když kódování souboru ne vždy automaticky detekuje, při otevírání souborů často používá výchozí systémové nastavení, v případě potřeby jej můžete ručně změnit.
Další skvělá funkce je to Umožňuje práci se vzdálenými soubory prostřednictvím protokolů, jako je FTP nebo Fish.integrace se síťovou infrastrukturou KDE. To usnadňuje úpravu souborů umístěných na serverech bez nutnosti nastavovat složitá externí řešení.
KWrite také obsahuje možnost používejte různé komponenty díky technologii KParts (Ve starších verzích se jednalo o významnou inovaci.) To umožňovalo například vkládání konzole Konsole do editoru nebo jiných komponent. Později byl jako výchozí textový editor přijat engine Kate, čímž se tato integrace upevnila.
V historickém kontextu KDE, KWrite byl součástí balíčku kdebase. A v poslední době je distribuován společně s Kate, s kódem ve vyhrazeném podadresáři repozitáře. To vše posiluje myšlenku, že se nejedná o zcela samostatný projekt, ale spíše o jiný aspekt stejné základní technologie.
Sdílené funkce: záložky, zvýrazňování a další
Protože KWrite i Kate jsou založeny na KTextEditoru, sdílejí některé nástroje, které se od základních editorů výrazně liší. Například Pro rychlý pohyb v dokumentu můžete použít dočasné záložky..
Pomocí jednoduché klávesové zkratky, jako například Ctrl+B pro vytvoření záložkyPak na ně můžete přejít z nabídky záložek. Nejsou uloženy v souboru (nemění skutečný obsah), ale při práci představují elegantní způsob, jak označit důležité části. Mnohem praktičtější než nechávat v textu náhodná slova jako „foobar“ a muset je později hledat, což byste nakonec mohli zapomenout smazat.
Další klíčovou funkcí je zvýrazňování syntaxe a režimy dokumentuV nabídce nástrojů můžete aktivovat automatickou kontrolu pravopisu, která zvýrazňuje chyby podtržením, a zvolit specifické režimy pro konkrétní formáty: Markdown, HTML, Python, C/C++ atd. Každý režim používá jiné schéma zvýrazňování, které vám pomůže lépe číst a porozumět obsahu.
Pokud chcete být konkrétnější, můžete přímo zvolit typ zvýraznění bez ohledu na režimTo platí pro případ, že chcete vynutit určité vizuální schéma. Tato flexibilita znamená, že stejný editor lze použít jak pro psaní prostého textu, tak pro rychlé ladění úryvku kódu.
Kromě toho si mnoho uživatelů obzvláště cení Přehled dokumentů je na pravé straně.Druh vertikální miniatury celého textu. I když vypadá malá, je překvapivě užitečná pro vyhledávání sekcí, nadpisů nebo úryvků kódu a přechod na přibližnou oblast jediným kliknutím.
Co nabízí Kate, co KWrite ne?
Velká otázka zní: pokud je „čistá a jednoduchá“ úprava textu téměř stejná, Proč přejít z KWrite na Kate? Odpověď se skrývá ve všem, co obklopuje text, když pracujete jako programátor nebo se složitými projekty: panely, pluginy, relace a terminál.
Kate přidává jednu postranní panel, kde si můžete prohlédnout souborový systém nebo adresář projektuDále zvládá koncept „projektu“, takže dokáže propojit soubory navzájem (například soubor .cpp s jeho .h nebo několik konfiguračních souborů stejného modulu) a nabídnout vám chytřejší navigaci mezi nimi.
Zahrnuje také a integrovaný terminál, který se spouští pomocí klávesy (obvykle F4)To vám umožňuje spouštět příkazy, kompilovat, spouštět skripty nebo používat konzolové nástroje, aniž byste museli opustit samotný editor. Obsah dokumentu můžete dokonce odeslat přímo do terminálu, což šetří značné množství času potřebného k vývoji a skriptování.
Dalším plusem je správa relacíKate dokáže ukládat různé konfigurace oken, záložek, otevřených projektů a předvoleb, takže máte pro každý typ práce různé profily (například jedno prostředí pro C++, jiné pro úpravy na webu, další pro poznámky k dokumentaci atd.).
Také Kate Podporuje širokou škálu pluginů Ty přidávají pokročilé funkce: integraci s jazykovými servery (LSP) pro inteligentní automatické doplňování, statickou analýzu, vylepšené terminály, ladění, nástroje specifické pro daný jazyk a mnoho dalšího. Právě tento ekosystém rozšíření v praxi dělá z Kate pro mnoho vývojářů jakési mini-IDE.
Z těchto důvodů mnoho uživatelů popisuje Kate jako velmi kompletní nástroj pro programátoryKWrite, ačkoli je vnímán jako „čistý“ editor pro rychlé nebo jednoduché úkoly, stále nabízí výkonné možnosti.
Praktické rozdíly v rozhraní a chování
Když porovnáte obě okna vedle sebe, zjistíte, že Rozhraní KWrite a rozhraní Kate jsou téměř identické. v prvcích, které sdílejí: panel nástrojů, textová oblast, boční miniaturní zobrazení, základní nabídky… Hlavní rozdíl spočívá v dalších panelech a zobrazeních.
V KWrite Neuvidíte boční zobrazení nástrojů Tyto funkce se v Kate objevují v průzkumníku projektů, ukotveném terminálu a dalších panelech odvozených od pluginů. Výchozí nastavení pro panel nástrojů a adresní řádek (cesta k souboru) se také mění; v závislosti na režimu je lze povolit nebo zakázat.
Na behaviorální úrovni KWrite Nesdílí instance ani relace.Pokaždé, když ho otevřete, funguje jako samostatný editor a nezapojuje se do pokročilé správy relací. Také nenačítá složité pluginy, takže nebudete mít k dispozici některé „luxusní“ funkce, které Kate nabízí.
V obou můžete použít karty s velmi podobným chovánímOtevírání více dokumentů, rychlé otevírání, rozdělení zobrazení do panelů atd. je významným vylepšením oproti striktní verzi KWrite s jedním oknem z doby před 20 lety. Dnes, díky sdílení kódu s Kate, může KWrite podporovat karty, aniž by zatěžoval ostatní funkce.
Využití v reálném světě: od lehké editace až po profesionální rozvoj
Mezi uživateli KDE existují poměrně jasné názory na to, kdy dává smysl použít KWrite, Kate nebo dokonce KDevelopObecně je KWrite vnímán jako nejlehčí, KDevelop jako nejtěžší zaměřený na velké projekty a Kate jako něco mezi tím, ideální pro každodenní práci programátorů, kteří nepotřebují mega-IDE.
Mnoho lidí, kteří jsou v KDE noví, se ptá, který si vybrat, a obvyklá odpověď zní asi takto: Pokud chcete jen upravovat text, dělat si poznámky nebo přehrávat nějaké skripty či konfigurační soubory, KWrite je více než dostačující.Pokud pravidelně programujete, pracujete s velkým množstvím souborů a oceňujete funkce jako projekty, integrovaný terminál a relace, pak je Kate mnohem vhodnější volbou.
Existují dokonce i uživatelé, kteří i bez použití KDE jako primárního desktopového prostředí, Nadále se spoléhají na KWrite, protože se jim líbí jeho rovnováha mezi jednoduchostí a výkonem.Typickým příkladem je někdo v XFCE, kdo spravuje některé KDE aplikace jako Krusader nebo KWrite, protože jsou pro něj nezbytné, a upravuje závislosti, aby se vyhnul tomu, co považuje za „nafouklé“ (komponenty jako kactivities, knowstuff nebo kuserfeedback, pokud je nevyužívá).
Existují také případy, kdy se lidé snaží hledejte alternativy KWrite mimo KDE (jako některé samostatné editory GTK nebo Qt) a při jejich testování zjistili, že jim chybí klíčové funkce, jako je režim blokové editace (částečný vertikální výběr řádků) nebo robustní chování při komentování více řádků. Dokud nenajdou náhradu, která splňuje všechny tyto funkce, nakonec zůstanou u KWrite jako svého primárního nástroje.
Další editory v prostředí KDE: KDevelop a KEdit
V ekosystému KDE se ne všechno točí kolem KWrite a Kate; Existují i další aplikace související s úpravou a vývojem textu, jako například KDevelop nebo veterán KEdit.
KDevelop je Plné IDE, mnohem těžšíJe navržen pro velké projekty, komplexní refaktoring, integrované ladění, průvodce a širokou škálu nástrojů a zároveň využívá KTextEditor jako editační engine. Pokud jste zvyklí na Kate nebo KWrite, bude vám tedy psaní povědomé, ale co se týče rozhraní a požadavků na zdroje, je to úplně jiná liga.
KEdit, ze své strany, V některých prostředích stále existuje jako alternativní editor.Jednou z jeho historických vlastností je podpora obousměrného textu, relevantní pro jazyky s psaním zprava doleva. Kdysi byl součástí balíčku kdeaddons a sloužil specifickému segmentu, co se týče typů textu.
V každém případě průměrný uživatel KDE dnes většinou pracuje v rámci KWrite jako lehký editor, Kate jako pokročilé editační prostředí A když potřebujete ještě více, KDevelop je specializované IDE.
Licencování, technologie a údržba
Na technické úrovni, KWrite (a potažmo Kate) Je napsán v C++ s využitím Qt jako rozhraní. a distribuován pod licencí LGPL. Díky tomu je svobodným softwarem, integrovatelným do jiných projektů a spravovaným poměrně velkým týmem vývojářů v rámci komunity KDE.
Jejich repozitáře kódu jsou hostováno na infrastruktuře KDE a zrcadleno na platformách jako GitHubTo platí jak pro samotný editor, tak pro podkladové frameworky, jako jsou KTextEditor a KSyntaxHighlighting. Existují také systémy pro sledování chyb, kde lze hlásit chyby a sledovat jejich řešení.
Tým to neustále povzbuzuje k vývoji se připojují noví spolupracovníciAť už jde o přidání funkcí, vylepšení detailů nebo zlepšení výkonu, skutečnost, že KWrite a Kate nyní sdílejí téměř veškerý svůj kód, znamená, že každá oprava nebo vylepšení automaticky ovlivní oba editory, čímž se sníží úsilí o duplicitu a zvýší se celková kvalita.
V praxi se to promítá do Každé i malé vylepšení, které se dostane do repozitáře, prospívá celému ekosystému editorů KDE.nejen pro Kate a KWrite, ale také pro aplikace, které jejich frameworky používají, což posiluje jejich roli jako reference v rámci desktopu Plasma.
Při pohledu na celkový obraz je pro koncového uživatele KDE dnes těžké najít lepší rovnováhu mezi lehký, ale výkonný editor jako KWrite y všestranný vývojářský nástroj jako Katezejména s vědomím, že oba běží paralelně, sdílejí stejný základ, nejsou v konfliktu a pokrývají vše od nejjednoduššího použití poznámkového bloku až po velmi náročné programovací pracovní postupy.