Användararea [inloggning krävs] Om servernWebbapplikationer
Backup |
Handboken / Programmering / EmacsAllmänt om EmacsEmacs brukar liknas med en schweizisk armékniv, den är bra till mycket. Bland annat utgör Emacs en mycket kompetent utvecklingsmiljö för många programmeringsspråk och det är den aspekten vi ska titta närmare på i det här kapitlet. För att kunna utveckla effektivt måste ett antal kortkommandon sitta i ryggmärgen och det kräver viss övning. Dock går det fort att komma igång hjälpligt och sen får man lära sig mer och mer eftersom. Till slut ger du kortkommandona utan att tänka. Vad alla inte vet är att Emacs och XEmacs är två olika program. XEmacs knoppas av Emacs när Emacs version 19 höll på att utvecklas. Du kan läsa mer om vad som skiljer XEmacs och Emacs åt. Emacs på webbservernPå webbservern finns både XEmacs och Emacs installerat. När startar Emacs eller XEmacs från terminalen kommer dessa program att starta i egna fristående fönster om terminaln är medveten om en X-server Om man inte vill det så kan man använda växeln "-nw" som gör att XEmacs/Emacs startar i terminalfönstret. Det är inga konstigheter med att starta Emacs eller XEmacs men så här kan det se ut. #Startar Emacs i ett fristående fönsteremacs & #Startar Emacs i terminalfönstret emacs -nw #Startar XEmacs i ett fristående fönster xemacs & #Startar XEmacs i terminalfönster xemacs -nw För närvarande är Emacs version 21.2.1 och XEmacs 21.4 installerade på webbservern. Detta kan du själv kontrollera genom emacs --version respektive xemacs --version. Allt som kommer att gås igenom i detta kapitel fungerar i både XEmacs och Emacs. Vilken editor du väljer är en smaksak. Jag använder Emacs men det är mest en vanesak. I fortsättningen kommer jag alltså att använda benämningen Emacs även om det också gäller för XEmacs. Grunderna i EmacsKortkommandonas uppbyggnadKortkommandona i Emacs är brukar skrivas på formen C-<chr> och M-<chr>. Som exempel kan vi ta kommandot för att öppna en fil, C-x C-f, där Control-tangenten hålls in samtidigt som x-tangenten och därefter Control-tangenten tillsammans med f-tangenten. M symboliserar Meta-tangenten vilken inte brukar finnas på PC-tangentbord, då används Esc-tangenten istället. Kortkommandona är bindningar till kommandon med ganska långa namn, exempelvis är C-x C-f knutet till find-file. Det går att använda dessa kommandon genom först använda kortkommandot M-x och sedan skriva kommandot. Detta kan vara ett bra sätt om man har glömt bort kortkommandot eftersom Emacs matchar vad du skriver mot de befintliga kommandona. När du vill avbryta ett kommando är C-g din vän. Några viktiga kommandonVi börjar med att gå igenom några riktiga viktiga kortkommandon. Det är egentligen inte många som behövs för att man ska komma igång och kunna använda Emacs. Öppna, spara, spara som, ångra och stängDu har redan fått kortkommandot för att öppna en fil men vi tar det igen, C-x C-f. När du gett detta kortkommando får du skriva sökvägen till den fil du vill öppna. Tabbkompletteringen fungerar som i skalet. Om du ger en sökväg till en fil som inte finns kommer denna att skapas (om du har rättigheter till det förstås) och därmed finns inget behov av något speciellt kommando för att skapa en ny fil. För att spara en fil ger du kortkommandot C-x C-s och för att spara med ett nytt filnamn används C-x C-w. För att ångra din senaste handling används C-_ eller C-x u. När det är dags att göra något annat och stänga av Emacs kommer C-x C-c (först Control och x samtidigt, sedan Control och c samtidigt) väl till pass. TextmanipuleringVi börjar med kommandon för att klippa och klistra. Det är naturligtvis inte Windows-standard som gäller.
Ibland är det mer aktuellt att bara ta bort text. Naturligtvis finns ett gäng kommandon så att du ska kunna ta bort på en massa sätt.
Att söka och ersätta är även det centralt.
NavigeringOfta går det bra att navigera med pilarna men av olika orsaker är det inte alltid som det räcker till. Vi tittar på några smidiga kortkommandon för att flytta runt.
Att hantera buffertarHittills har vi inte diskuterat möjligheten att ha flera buffertar öppna samtidigt men det ska vi göra nu. I Emacsterminologin finns bland annat termerna frame, buffer och window. Det är nog mest dem termerna vi behöver för att förstå oss på kortkommandona.
Modes ger Emacs kameleontegenskaperSå kallade "modes" utökar funktionaliteten i Emacs till att ge stöd åt olika filer, bland annat en mängd programmeringsspråk. Du måste ge dina filer korrekta filändelser för att Emacs ska förstå vilken mode som är aktuell. Kommandon för programmerarenDet finns ett par behändiga kommandon som underlättar livet för programmeraren och gör att denna slipper lämna Emacs för att kompilera/provköra med mera. VariabelnamnskompletteringDet krävs ibland långa variabelnamn för att kunna beskriva variabeln väl men det kan vara jobbigt att skriva dessa variabelnamn upprepade gånger. Dessutom finns det en risk att man någonstans stavar fel. Lösningen stavas M-/. Matcha parenteserOfta indikerar Emacs att ett parentespar hör ihop när den matchande (högra) parentesen skrivs. Om man i efterhand funderar på vilka parenteser som hör samman är kortkommandot % användbart (lånat från Vi). Sätt markören över en parentes (eller måsvinge) och ge kommandot %. Detta är inget som följer med Emacs som standard men jag tyckte det var så smidigt att la till det för alla Emacsanvändare på webbservern. Kompilera i EmacsIbland kan det säkert vara smidigare att ha ett terminalfönster brevid men många gånger går det lika bra inifrån Emacs M-x compileAnge kompileringskommandot För en C++-fil kan lämpligt kompileringskommando vara: g++ cpluspluskod.cpp -o programNamnFör att se eventuella fel lite mer utförligt är kortkommandot C-x `. Tangenten "backquote" gör jag genom att hålla inne Shift-tangenten och trycka två gånger på tagenten till vänster om "backspace". ProvkörBeroende på vad du utvecklar kan det vara mer eller mindre lämpligt att köra programmet i Emacs. I vilket fall går det till så här: M-! <Sökväg till programmet>;Där <Sökväg till programmet> lämpligen ersätts med den faktiska sökvägen. Observera att M-! används för att köra godtyckligt shellkommando, till exempel mozilla &. DebuggaKanske blev det något fel när programmet exekverades. Det är då man kan få användning för debuggern gdb. Givetvis går den bra att köra i Emacs. M-x gdb;Ange programmet som ska avlusas. Jobbet med att hitta buggen/buggarna har bara börjat men att använda gdb är lite utanför detta kapitels ramar. Läs mer om gdb på annat håll. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Den här filen ändrades senast Mittwoch, 07-Jun-2023 15:22:59 CEST. Exportera till pdf Respons i någon form mailas till webmaster at webbservern.se |