Hur man använder Emacs som ett skrivbordsmiljö i Linux med EXWM
Exwm är en lättviktsfönsterhanterare för Linux som omvandlar Emacs till en komplett grafisk miljö. Lär dig installera och använda Exwm för effektivare arbetsflöde.
Exwm är en lättviktsfönsterhanterare för Linux som förvandlar Emacs till en komplett grafisk miljö. I den här artikeln kommer jag att gå igenom fördelarna med att använda Exwm, installera det på Ubuntu 24.10 och visa vad du kan göra med denna fascinerande fönsterhanterare.
Varför använda Exwm som din fönsterhanterare
En av de största säljpunkterna för Exwm är att den kan integrera andra applikationer i din befintliga Emacs-arbetsflöde. Detta gör att du kan använda det du redan vet om Emacs-buffrar och tillämpa det på dina andra appar, vilket gör dig mer effektiv på lång sikt.
Dessutom minskar Exwm mängden konfigurationsfiler som finns på en skrivbordsinstallation. Med den fungerar din .emacs-fil som konfiguration för både din textredigerare och din fönsterhanterare. Detta gör det attraktivt för användare som vill minska röran de hanterar på sitt system.
Sist men inte minst är Exwm otroligt lätt och snabb. I min erfarenhet tar det bara några sekunder att ladda fönsterhanteraren från en kall start, och att köra den en hel dag förbrukar bara över 500 MB RAM.
För övrigt: letar du efter en mer modern fönsterhanterare? Kolla in vår guide om hur man sätter upp och kör Hyprland i Linux.
Installera Exwm i Emacs
Det första steget för att installera Exwm i Linux är att se till att du har både Emacs och dess beroenden på ditt system. För att göra det, kör följande kommando:
sudo apt install emacs dbus gnome-settings-daemon
Öppna din Emacs-klient, tryck på Alt + X, skriv sedan “package-install” för att öppna installationsprompten i editorn.
Skriv “exwm” i prompten och tryck på Enter för att installera fönsterhanteraren inuti Emacs.
Tryck på Ctrl + X, sedan Ctrl + F för att öppna filbufferten, skriv “~/.emacs” i prompten och tryck sedan på Enter.
Klistra in följande kodblock i din nya .emacs-fil. Detta är en modifierad version av den standardkonfigurationsfil som ger den minimi uppsättning funktioner för Exwm:
(menu-bar-mode -1) (tool-bar-mode -1) (scroll-bar-mode -1) (fringe-mode 1) (setq display-time-default-load-average nil) (display-time-mode t) (icomplete-vertical-mode 1) (exwm-systemtray-mode 1) (require 'exwm) (setq exwm-workspace-number 5) (setq exwm-input-global-keys `( ([?\s-r] . exwm-reset) ([?\s-w] . exwm-workspace-switch) ([?\s-&] . (lambda (command) (interactive (list (read-shell-command "$ "))) (start-process-shell-command command nil command))) ,@(mapcar (lambda (i) `(,(kbd (format "s-%d" i)) . (lambda () (interactive) (exwm-workspace-switch-create ,i)))) (number-sequence 0 9)))) (exwm-enable)
Obs: Du kan också införliva denna kod i en befintlig Emacs-konfiguration. Se bara till att placera (exwm-enable)
efter dina Exwm-relaterade inställningar.
Tryck på Ctrl + X, sedan Ctrl + S för att spara din nya .emacs-fil.
Öppna din lokala användares .xsession-fil och klistra in följande kodblock:
xhost +SI:localuser:$USER gnome-settings-daemon & xsetroot -cursor_name left_ptr xset r rate 200 60 exec dbus-launch --exit-with-session emacs
Spara din .xsession-fil och kör följande kommando för att skapa en ny skrivbordsinmatning för ditt system:
sudo nano /usr/share/xsessions/emacs.desktop
Klistra in följande i din nya .desktop-fil:
[Desktop Entry]<br>Name=Exwm<br>Exec=emacs<br>Type=Application
Spara din nya skrivbordsfil, och starta om ditt system för att helt tillämpa dina nya inställningar.
Bra att veta: Kolla in några av våra val för de bästa skrivbordsmiljöerna för 2024.
Använda Exwm för första gången
Vid denna tidpunkt har du nu en grundläggande installation av Emacs och Exwm som körs på ditt Ubuntu Linux-skrivbord. För att använda det, klicka på kugghjulsikonen på inloggningsprompten i ditt system och välj Exwm.
Logga in på ditt användarkonto och vänta några sekunder medan Emacs och Exwm laddas i din nuvarande session.
Väl inne kan du börja med att skapa ett nytt fönster i den aktuella arbetsytan. För det, tryck på Ctrl + X, sedan 3. Detta kommer att skapa en vertikal fönsteruppdelning, vilket placerar fönstret på högra sidan av skärmen.
Du kan också trycka på Ctrl + X, sedan 2 för att skapa.
en horisontell delning med det nya fönstret som ligger längst ner på din skärm.
För att flytta mellan olika arbetsytor, tryck Win följt av vilket nummer som helst på ditt tangentbordets sifferrad. Till exempel, att trycka Win + 3 kommer att sätta fokus på den tredje Exwm-arbetsytan.
Notera: du kan även trycka Alt + X, och sedan skriva “exwm-workspace-switch” för att få tillgång till växlaren från kommandobufferten.
Kör och Hantera Program i Exwm
Till skillnad från en typisk fönsterhanterare kommer Exwm inte med en dedikerad appstartare. Istället använder Exwm en anpassad funktion som kör indata från Emacs-kommandobufferten i en isolerad Linux-skal-session.
För att starta ett program, tryck Shift + Win + 7, och ange namnet på appen som du vill köra. Till exempel, genom att skriva “firefox” öppnas webbläsaren som en ram inne i Exwm.
Notera: Exwm kommer att “ta över” ett existerande Emacs-fönster istället för att skapa ett nytt.
För att stänga ett för närvarande aktivt fönster, tryck Ctrl + K. Detta kommer att helt avsluta processen men också lämna kvar en standard Emacs-ram. Du kan trycka Ctrl + X, sedan 0 för att ta bort rammen också.
Konfigurera och Anpassa Exwm
Även om den standardmässiga Exwm-installationen är tillräcklig för de flesta användningsområden, är det möjligt att helt anpassa skrivbordet enligt dina behov. I detta avsnitt kommer vi att gå igenom några av de justeringar du kan göra i Exwm.
En av de enklaste anpassningarna du kan göra är att ändra skrivbordets standard skärmupplösning. För att göra det, öppna ett terminalfönster genom att trycka Shift + Win + 7, och skriv “gnome-terminal.”
Kör xrandr i terminalen och notera din bildskärms enhetsnamn och de tillgängliga upplösningarna för den. Till exempel, mitt bildskärmsnamn är “Virtual-1” och jag vill ställa in min skrivbordsupplösning till 1360×768.
Klistra in följande kommando, och ersätt “MONITOR” med namnet på din monitor och “RESOLUTION” med din målskärmupplösning.
xrandr --output MONITOR --mode RESOLUTION
Notera: du kan göra denna ändring beständig över omstarter genom att klistra in samma kommando i din .xsession-fil.
Ladda om din nuvarande Exwm-session genom att trycka Alt + X, och skriv “exwm-restart.”
FYI: Kolla gärna in vår praktiska guide om några av de bästa plugin-programmen för Hyprland idag.
Skapa Nya Tangentbordsgenvägar i Exwm
Exwm levereras inte med många tangentbindningar som standard. Detta beror på att fönsterhanteraren är beroende av både inbyggda Emacs-tangenter samt att användarna lägger till sina egna genvägar.
För att lägga till dina egna tangentbindningar, öppna din .emacs-fil, och rulla ner till avsnittet som innehåller “exwm-input-global-keys.”
Gå in i funktionen och klistra in följande kodrad:
([?\SHORTCUT] . FUNCTION)
Ersätt etiketten “SHORTCUT” med den tangentkombination som du vill använda. I mitt fall vill jag använda Win + Q som en genväg, så jag kommer att lägga till “s-q.”
Notera: Exwm använder c, s och m för att representera Ctrl, Win och Alt tangenterna respektive.
Ändra etiketten “FUNCTION” med den funktion som du vill koppla till genvägen.
Tryck Ctrl + X, och sedan Ctrl + S för att spara din konfiguration och starta om din Exwm-session.
Bekräfta att det fungerar ordentligt genom att trycka på din anpassade tangentbordsgenväg.
Lägga Till Passthrough-Tangenter
Utöver att lägga till anpassade tangentbindningar är det också möjligt att ställa in passthrough-tangenter i Exwm. Dessa är tangentbindningar som inte tolkas av något X11-fönster, vilket gör det möjligt för dig att få tillgång till Emacs även när du använder ett vanligt GUI-program.
För att lägga till passthrough-tangenter, öppna din .emacs-fil, och rulla ner till avsnittet om globala Exwm-tangentbindningar.
Klistra in följande kodblock precis innan den globala Exwm genväg funktionen. Detta kommer att låta dig använda standard Ctrl + X, och Alt + X ledartangenterna samt att få tillgång till hjälpfunktionen:
(setq exwm-input-prefix-keys '(?\C-x ?\C-u ?\C-h ?\M-x ))
Spara din Emacs konfigurationsfil, och starta om skrivbordet för att tillämpa dina nya inställningar.
Konvertera din Emacs-klient till ett äkta fönster.
Manager med Exwm
Manager med Exwm är bara en försmak av vad du kan göra med denna extremt flexibla textredigerare.
Intresserad av att lära dig mer?
Ta reda på varför Emacs har blivit min favoritapp för arbete och produktivitet idag.
Nyt kun olet lukenut Hur man använder Emacs som ett skrivbordsmiljö i Linux med EXWM loppuun, kutsumme sinut tutustumaan lisää Linux-kategoriaan. Löydät sieltä muita mielenkiintoisia artikkeleita, jotka laajentavat tietojasi ja pitävät sinut ajan tasalla. Älä lopeta lukemista ja löytämistä!
Vastaa