Bygg det
Bygga Kate från källkod på Linux
Just nu finns Kates källkod i GitLab-instansen invent.kde.org. Den här handledningen förklarar hur man bygger Kate utan att röra den allmänna installationen.
Alla saker sker i en extra utvecklingskatalog. Det undviker behov av administratörsrättigheter och gör det alltid möjligt att använda det allmänt installerade Kate om den aktuella byggda versionen är trasig.
Eftersom den här handledningen introducerar en installation som gör det möjligt att utveckla andra delar av KDE:s programvara, talar vi i det följande om att ställa in en utvecklingsmiljö för KDE. Erforderliga KDE-ramverk kompileras förutom programdelarna i Kate. Det underlättar bidrag till alla nivåer av KDE:s programvara.
Välj Kates och KDE:s utvecklingskatalog
Välj själv en plats där all utveckling av Kate och KDE ska hamna. Förutom användarens lokala inställningsfiler förorenas ingenting utanför katalogen. Du kan återanvända den för utveckling av valfri del av KDE:s programvara.
För återstående delar av beskrivningen använder vi
~/projects/kde
Anpassa det gärna.
Installera kdesrc-build
Att installera är mer eller mindre bara att duplicera den nuvarande versionen
mkdir -p ~/projects/kde/src
cd ~/projects/kde/src
git clone https://invent.kde.org/sdk/kdesrc-build.git
För att underlätta senare användning, det är bäst att skapa en symbolisk länk till skriptet kdesrc-build i någon katalog i din sökväg, t.ex. om du har någon user local bin:
ln -s ~/projects/kde/src/kdesrc-build/kdesrc-build ~/bin
Ställa in kdesrc-build
kdesrc-build har ett särskilt inställningssteg som kan ställa in saker åt dig, se den här introduktionen.
Här visar vi bara en ~/.config/kdesrc-buildrc som är god nog för Kates utvecklingsbehov.
Du kan bara kopiera och klistra in versionen nedan i din hemkatalog som ~/.config/kdesrc-buildrc och ställa in sökvägarna efter dina behov. Om du håller dig till sökvägen ~/projects/kde som vi valde ovan, bör den vara användbar oförändrad.
global
# använd den senaste KF6- och Qt6-baserade programvaran.
branch-group kf6-qt6
# använd ninja för snabbare inkrementell ombyggnad, stäng av några Qt 5-saker för att ha mindre
# beroenden
cmake-options -G "Ninja" -DBUILD_WITH_QT6=ON -DQT_MAJOR_VERSION=6 -DPHONON_BUILD_QT5=OFF -DBUILD_QT5=OFF
# clangd verktyg
compile-commands-export yes
compile-commands-linking yes
# plan struktur
directory-layout flat
# installationskatalog för KDE-programvara
install-dir ~/projects/kde/usr
# Katalog för nerladdad källkod
source-dir ~/projects/kde/src
# Katalog att bygga KDE i innan installation normalt i förhållande till källkodskatalogen
build-dir ~/projects/kde/build
end global
include ${module-definitions-dir}/kf6-qt6.ksb
Viktiga saker för att få en bra erfarenhet av att utveckla Kate (eller andra delar av KDE) med Kate beskrivs nedan i detalj.
Integrering med LSP
# clangd verktyg
compile-commands-export yes
compile-commands-linking yes
Raderna säkerställer att CMake genererar compile_commands.json-filerna som krävs för clangd-baserad LSP-integrering. Förutom att bara generera dem i byggkatalogen skapar länkningsalternativet symboliska länkar tillbaka till källkodskatalogerna. Det möjliggör användning av LSP-insticksprogrammet utan inställning inuti Kate (och andra editorer).
Installera nödvändiga beroenden (valfritt)
kdesrc-build tillhandahåller ett initialt inställningssteg för att installera de nödvändiga paketen för flera vanliga distributioner för att börja utveckla. Det är användbart om du inte är säker på om alla nödvändiga utvecklingspaket är installerade på systemet och du inte vill ta hand om det själv manuellt. Eftersom det försöker installera paket för din distribution kräver det här steget administratörsrättigheter för paketinstallationen. För att göra det, starta bara:
kdesrc-build --initial-setup
Vi har redan skapat en .config/kdesrc-buildrc, som lämnas orörd. För vidare användning behöver du inte heller ändra dina inställningar av skalet.
Bygg Kate och beroenden
För att utföra en kompilering av Kate och alla nödvändiga beroenden i KDE skriv nu bara:
kdesrc-build --include-dependencies kate
Det tar några minuter på en ny dator. Dags att ta en fika eller fundera på vad du egentligen vill implementera.
Så länge KF 6-versionen av våra beroenden inte ingår i din distribution, kan det vara vettigt att bygga några fler delar för att få bättre stil och en terminalintegrering:
kdesrc-build --include-dependencies breeze plasma-integration kwayland-integration konsole kate
Om du bara vill bygga Kate utan beroenden eftersom du är säker på att du har tillräckligt med nya saker på ditt system, kan du prova:
kdesrc-build --no-include-dependencies kate
Men med tanke på att kompileringstiderna är låga på moderna datorer är det bekvämare att helt enkelt bygga alla delar, vilket säkerställer att du också har t.ex. de senaste och bästa ramverken för KSyntaxHighlighting och KTextEditor som finns.
Givet den här inställningen, har du möjlighet att bygga alla delar av KDE:s programvara med ett enkelt:
kdesrc-build
Kom ihåg: det kommer att ta en viss tid (och diskutrymme).
Om du under bygget ser några fel som visas med ett rött teckensnitt, följ den här guiden: How to solve build problems
Hur använder man de byggda sakerna?
För att starta den lokala versionen av Kate måste du först ställa in miljön riktigt för att säkerställa att rätt insticksprogram och andra saker laddas. Lyckligtvis är det väldigt enkelt:
source ~/projects/kde/build/kate/prefix.sh
kate
Ett fiffigt sätt att paketera det är att t.ex. skapa ett litet omgivande skript för att starta versionen av Kate från master-grenen i din lokala binärkatalog:
#!/bin/bash
source ~/projects/kde/build/kate/prefix.sh
exec kate "$@"
Hålla dina program uppdaterade
För att hålla den lokala versionen uppdaterad kan du helt enkelt använda ovanstående kommandon igen. De tar hand om att hämta nya ändringar från KDE:s arkiv samt bygga och installera dem med det lokala prefixet.
Utveckla!
Nu är den återstående frågan: Hur utvecklar man på bästa sätt?
Naturligtvis, om du vill utveckla Kate, kan det vara vettigt att använda Kate.
Med tanke på ovanstående förberedelser är det lätt att göra, starta bara den nya master-versionen av Kate och ange byggkatalogen:
kate ~/projects/kde/build/kate
Alternativt kan du navigera dit i terminalen och starta Kate därifrån, då öppnas den automatiskt:
cd ~/projects/kde/build/kate
kate
För att få bästa upplevelsen av det, se till att du åtminstone har projekt- och LSP-insticksprogrammen aktiverade. Om du vill ha en del byggintegration med grafiskt gränssnitt, aktivera även bygginsticksprogrammet.
Du får till slut ett nytt fönster i Kate som liknar det som visas nedan.
I den nedre verktygsvyn "Aktuellt projekt" har du normalt två terminaler. Den första terminalen är i din byggkatalog, här kan du t.ex. kör kommandona ninja och ninja install eller liknande. Den andra terminalen är i din källkatalog, perfekt för t.ex. kommandoradsanrop till git.
Givet ovanstående inställning, ska LSP-insticksprogrammet (om du har clangd installerat) fungera direkt.
Andra fiffiga saker som snabböppning av hela projekt, sök och ersätt, samt riktiga byggmål bör också ställas in.
Bidra tillbaka!
Skapa gärna en sammanfogningsförfrågan på invent.kde.org. För mer information se Gå med.
Få support?
Om du har frågor kan du ställa dem på vår e-postlista kwrite-devel@kde.org och/eller gå med i #kate på irc.libera.chat.
För mer information se Få hjälp.
Bygga Kate från källkod på Windows
För att bygga den KF5-baserade versionen av Kate/Kwrite kan du följa handledningen på KDE on Windows.
Bygga Kate från källkod på macOS
För att bygga den KF5-baserade versionen av Kate/Kwrite kan du följa handledningen på KDE on macOS.