Introduktion till emacs - lysator.liu.se
Transcript of Introduktion till emacs - lysator.liu.se
![Page 1: Introduktion till emacs - lysator.liu.se](https://reader030.fdocuments.in/reader030/viewer/2022012102/6169f9d311a7b741a34d73c6/html5/thumbnails/1.jpg)
Introduktion till emacs
Introduktion till emacsAv:
Kjell Enblom
Denna presentation är fri och lyder under GNU Free Documentation
License version 1.1 eller senare.(c) Copyright 2007 Kjell Enblom – p.1
![Page 2: Introduktion till emacs - lysator.liu.se](https://reader030.fdocuments.in/reader030/viewer/2022012102/6169f9d311a7b741a34d73c6/html5/thumbnails/2.jpg)
Presentationen
� Hela denna presentation finns på:http://www.lysator.liu.se/˜kjell-e/tekla/linux/dokument.html
� David Kågedals emacslathund finns på:http://www.lysator.liu.se/upplysning/emacs/lathund.ps
(c) Copyright 2007 Kjell Enblom – p.2
![Page 3: Introduktion till emacs - lysator.liu.se](https://reader030.fdocuments.in/reader030/viewer/2022012102/6169f9d311a7b741a34d73c6/html5/thumbnails/3.jpg)
Vad är emacs?
� Emacs är en kraftfull editor.� Emacs kan bland annat användas till
� för att editera texter� skriva rapporter (min exjobbsrapport ärgjord med emacs och LaTeX)
� göra presentationer (den här)� för programutveckling� till att läsa e-post� till att läsa news� ...
(c) Copyright 2007 Kjell Enblom – p.3
![Page 4: Introduktion till emacs - lysator.liu.se](https://reader030.fdocuments.in/reader030/viewer/2022012102/6169f9d311a7b741a34d73c6/html5/thumbnails/4.jpg)
Hur det började
� Emacs utvecklades från början på 1970-talet iradeditorn TECO, Text Editor and Corrector
� Richard M. Stallman var på besök på Stanfordoch såg editorn E.
� Inspirerad av E utvecklade Stallman editornsom han gav namnet emacs.
� Namnet stod för "Editing MACroS"eller "Ewith MACroS".
� TECO var inte fri. Bland det första Stallmangjorde efter att ha grundat FSF var attutveckla en fri emacs.
(c) Copyright 2007 Kjell Enblom – p.4
![Page 5: Introduktion till emacs - lysator.liu.se](https://reader030.fdocuments.in/reader030/viewer/2022012102/6169f9d311a7b741a34d73c6/html5/thumbnails/5.jpg)
Emacs
� Förutom den vanliga emacsfinns även xemacs.
� Emacs finns förutom till unix även till andrasystem som bland annat Windows.
� Emacs kan köras i ett terminalfönstereller eget X-fönster.
(c) Copyright 2007 Kjell Enblom – p.5
![Page 6: Introduktion till emacs - lysator.liu.se](https://reader030.fdocuments.in/reader030/viewer/2022012102/6169f9d311a7b741a34d73c6/html5/thumbnails/6.jpg)
Utbyggbar
� Emacs är utbyggbar i lisp-dialekten elisp.� Mycket i emacs är gjort i elisp.
� Webbläsare� Epost-program (RMAIL, miu ...)� News-program (gnus)� Planerare (planner)� Miljöer för de flesta programspråk� Filhanterare� Ftp-klient� LysKOM-klient
(c) Copyright 2007 Kjell Enblom – p.6
![Page 7: Introduktion till emacs - lysator.liu.se](https://reader030.fdocuments.in/reader030/viewer/2022012102/6169f9d311a7b741a34d73c6/html5/thumbnails/7.jpg)
Dokumentkonventioner
� I emacs-dokumentation skrivscontrol-tangenten (<ctrl>) följt av en tangentsom C-x (där ctrl i det här fallet följs av x).
� Meta följt av ett tecken skrivs som M-x (därmeta i det här fallet följs av x).
(c) Copyright 2007 Kjell Enblom – p.7
![Page 8: Introduktion till emacs - lysator.liu.se](https://reader030.fdocuments.in/reader030/viewer/2022012102/6169f9d311a7b741a34d73c6/html5/thumbnails/8.jpg)
Starta emacs
� Emacs kan startas från ett terminalfönstermed kommandot:
emacs
� Ofta startar man emacs i bakgrunden på ettfönstersystem:
emacs &
� Ibland kan man dock vilja starta emacs iterminalfönstret istället
emacs -nw(c) Copyright 2007 Kjell Enblom – p.8
![Page 9: Introduktion till emacs - lysator.liu.se](https://reader030.fdocuments.in/reader030/viewer/2022012102/6169f9d311a7b741a34d73c6/html5/thumbnails/9.jpg)
Några flaggor
� När man startar emacs går det att ge mångaflaggor.
� -l fil.el laddar in och kör elispfilen fil.el� -f funktion startar emacsfunktionen, t.ex.-f lyskom för att starta LysKOM-klienten.
� -fn FONT startar emacs med typsnittet FONT.� –title foobar sätter namnet i fönstrets titelradtill foobar.
� -q gör så att emacs inte läser in filerna .emacsoch default.el.
(c) Copyright 2007 Kjell Enblom – p.9
![Page 10: Introduktion till emacs - lysator.liu.se](https://reader030.fdocuments.in/reader030/viewer/2022012102/6169f9d311a7b741a34d73c6/html5/thumbnails/10.jpg)
Kortkommandon
� För emacs användscontrol-tangenten (<ctrl>) ochalt-tangenten eller escape (<meta>)för i stort sett alla kortkommandon.
� För <ctrl> trycker man ner <ctrl>-tangentenoch nästa tangent samtidigt.
� För <meta> så trycker man ner alt-tangentenoch nästa tangent samtidigt.
� Ett alternativ för <meta> är escape-tangentensom man trycker ner och släpper före nästatangent.
(c) Copyright 2007 Kjell Enblom – p.10
![Page 11: Introduktion till emacs - lysator.liu.se](https://reader030.fdocuments.in/reader030/viewer/2022012102/6169f9d311a7b741a34d73c6/html5/thumbnails/11.jpg)
Starta och avsluta emacs
� Först läser emacs in och kör filen ˜/.emacs� Filnamn som ges på kommandoradenkommer emacs att öppna och läsa in.emacs fil1 fil2 fil3 &
� Det går även att läsa in filer senare med C-xC-f.
� Avsluta emacs med C-x C-c.
(c) Copyright 2007 Kjell Enblom – p.11
![Page 12: Introduktion till emacs - lysator.liu.se](https://reader030.fdocuments.in/reader030/viewer/2022012102/6169f9d311a7b741a34d73c6/html5/thumbnails/12.jpg)
Emacsfönstret
(c) Copyright 2007 Kjell Enblom – p.12
![Page 13: Introduktion till emacs - lysator.liu.se](https://reader030.fdocuments.in/reader030/viewer/2022012102/6169f9d311a7b741a34d73c6/html5/thumbnails/13.jpg)
Förflyttningar
(c) Copyright 2007 Kjell Enblom – p.13
![Page 14: Introduktion till emacs - lysator.liu.se](https://reader030.fdocuments.in/reader030/viewer/2022012102/6169f9d311a7b741a34d73c6/html5/thumbnails/14.jpg)
Förflyttningar
(c) Copyright 2007 Kjell Enblom – p.14
![Page 15: Introduktion till emacs - lysator.liu.se](https://reader030.fdocuments.in/reader030/viewer/2022012102/6169f9d311a7b741a34d73c6/html5/thumbnails/15.jpg)
Förflyttningar
(c) Copyright 2007 Kjell Enblom – p.15
![Page 16: Introduktion till emacs - lysator.liu.se](https://reader030.fdocuments.in/reader030/viewer/2022012102/6169f9d311a7b741a34d73c6/html5/thumbnails/16.jpg)
Förflyttningar
� Det går även att använda piltangenterna ochPageUp och PageDown.
� Med C-l (bokstaven L) ritar emacs om fönstretoch centrerar kring raden där markören står.
(c) Copyright 2007 Kjell Enblom – p.16
![Page 17: Introduktion till emacs - lysator.liu.se](https://reader030.fdocuments.in/reader030/viewer/2022012102/6169f9d311a7b741a34d73c6/html5/thumbnails/17.jpg)
Avbryta kommandon
� Omman har påbörjat ett kommando och villavbryta det så görs det med C-g(eventuellt två C-g efter varandra).
� Omman befinner sig i minibufferten längstner i emacs går det att komma ur med<esc><esc><esc>.
(c) Copyright 2007 Kjell Enblom – p.17
![Page 18: Introduktion till emacs - lysator.liu.se](https://reader030.fdocuments.in/reader030/viewer/2022012102/6169f9d311a7b741a34d73c6/html5/thumbnails/18.jpg)
Redigering
� Beroende på hur tangentbordet är mappat såraderar <backspace> ett tecken bakåtoch <delete> resp C-d tecknet som markörenstår på.
� C-k klipper ut från markören till slutet avraden.
(c) Copyright 2007 Kjell Enblom – p.18
![Page 19: Introduktion till emacs - lysator.liu.se](https://reader030.fdocuments.in/reader030/viewer/2022012102/6169f9d311a7b741a34d73c6/html5/thumbnails/19.jpg)
Redigering
� M-<backspace> raderar ordet till vänster ommarkören.
� M-d raderar ordet till höger om markören.
(c) Copyright 2007 Kjell Enblom – p.19
![Page 20: Introduktion till emacs - lysator.liu.se](https://reader030.fdocuments.in/reader030/viewer/2022012102/6169f9d311a7b741a34d73c6/html5/thumbnails/20.jpg)
Redigering
� En text markeras med:Markera en punkt med C-<mellanslag> ibörjan eller slutet. Gå till andra änden.
� Den markerade texen benämns som region.� En markerad text klipps ut med C-w.� En markerad text kopieras med M-w.� En urklippt/kopierad text klistras in med C-y(yank).
� Vanligtvis följer punkten (point) markörenmen C-<mellanslag> sätter en punktpå annan plats. (c) Copyright 2007 Kjell Enblom – p.20
![Page 21: Introduktion till emacs - lysator.liu.se](https://reader030.fdocuments.in/reader030/viewer/2022012102/6169f9d311a7b741a34d73c6/html5/thumbnails/21.jpg)
Redigering
� C-t byter plats på två tecken, tecknetmarkören står på och tecknet före.
� M-t byter plats på två ord, ordet markörenstår på och ordet efter.
(c) Copyright 2007 Kjell Enblom – p.21
![Page 22: Introduktion till emacs - lysator.liu.se](https://reader030.fdocuments.in/reader030/viewer/2022012102/6169f9d311a7b741a34d73c6/html5/thumbnails/22.jpg)
Ångra
� Ångra går att göra med M-x undoC-x u eller med C-_ .
� Om undo upprepas så ångras den nästsenaste ändringen o.s.v.
� Omman gör undo för mycket går det attflytta på markören och trycka undo så görsdet en redo, d.v.s. en undo på sista undo.
� Upprepning av redo gör undo på tidigareutförda undo.
(c) Copyright 2007 Kjell Enblom – p.22
![Page 23: Introduktion till emacs - lysator.liu.se](https://reader030.fdocuments.in/reader030/viewer/2022012102/6169f9d311a7b741a34d73c6/html5/thumbnails/23.jpg)
Urklippsringen
� Urklippen sparas i en urklippsring� <ctrl->-y klistrar in det senaste utklippta.� Med M-y efter C-y klistrar man in det nästsenaste utklippta. Observer att markören intefår flyttas.
� M-y kan upprepas för att få tidigare urklipp.� M-y kan upprepas tills dess att man ärtillbaka till det senaste.
(c) Copyright 2007 Kjell Enblom – p.23
![Page 24: Introduktion till emacs - lysator.liu.se](https://reader030.fdocuments.in/reader030/viewer/2022012102/6169f9d311a7b741a34d73c6/html5/thumbnails/24.jpg)
Sök
� Söka framåt görs med C-s. I minibuffertenstår då
I-search:
� Emacs börjar söka så fort du skriver in tecken.� För att söka efter nästa förekomst tryck påC-s igen.
� För att söka bakåt tryck C-r (reverse) och gör iövrigt som för framåtsökning.
(c) Copyright 2007 Kjell Enblom – p.24
![Page 25: Introduktion till emacs - lysator.liu.se](https://reader030.fdocuments.in/reader030/viewer/2022012102/6169f9d311a7b741a34d73c6/html5/thumbnails/25.jpg)
Sök
� En sökning kan avbrytas med C-g somgör att man kommer tillbaka till början avsökningen.
� En sökning kan avbrytas genom att t.ex.gå ett steg framåt eller bakåt.
(c) Copyright 2007 Kjell Enblom – p.25
![Page 26: Introduktion till emacs - lysator.liu.se](https://reader030.fdocuments.in/reader030/viewer/2022012102/6169f9d311a7b741a34d73c6/html5/thumbnails/26.jpg)
Sök och ersätt
� Sök och ersätt kan göras med M-%� Skriv in ord som ska ersättas.� Skriv in ord som det ska ersättas med.� Tryck på y eller <mellanslag> för att ersätta.� Tryck på n för att inte ersätta.� Tryck på ! för att ersätta alla förekomster.� Sök och ersätt sker från markören och framåt.
(c) Copyright 2007 Kjell Enblom – p.26
![Page 27: Introduktion till emacs - lysator.liu.se](https://reader030.fdocuments.in/reader030/viewer/2022012102/6169f9d311a7b741a34d73c6/html5/thumbnails/27.jpg)
Spara respektive läsa in en fil
� En fil kan läsas in med C-x C-fföljt av sökväg och filnamn i minibufferten.
� En fil sparas med C-x C-s.� Alla osparade filer / buffertar sparas medC-x s.
� Spara som görs med C-x C-wföljt av sökväg och filnamn i minibufferten.
(c) Copyright 2007 Kjell Enblom – p.27
![Page 28: Introduktion till emacs - lysator.liu.se](https://reader030.fdocuments.in/reader030/viewer/2022012102/6169f9d311a7b741a34d73c6/html5/thumbnails/28.jpg)
Buffertar
� När en fil läses in i emacs hamnar den i enbuffert.
� Varje fil har en egen buffert.� Förutom buffertarna för filerna finnsytterligare några buffertar. Dessa är blandannat *scratch*, *Completions* och *Messages*.
� Varje buffert har ett unikt namn.� Buffertens namn visas i mode-raden.
(c) Copyright 2007 Kjell Enblom – p.28
![Page 29: Introduktion till emacs - lysator.liu.se](https://reader030.fdocuments.in/reader030/viewer/2022012102/6169f9d311a7b741a34d73c6/html5/thumbnails/29.jpg)
Buffertar
(c) Copyright 2007 Kjell Enblom – p.29
![Page 30: Introduktion till emacs - lysator.liu.se](https://reader030.fdocuments.in/reader030/viewer/2022012102/6169f9d311a7b741a34d73c6/html5/thumbnails/30.jpg)
Buffertar
� Man byter buffert med C-x b följt avbuffertens namn.� Det går att skriva ? för att få upp en listaöver alla buffertar.
� Buffertar kan listas med C-x C-b� Aktuell buffert kan dödas med C-x k
(c) Copyright 2007 Kjell Enblom – p.30
![Page 31: Introduktion till emacs - lysator.liu.se](https://reader030.fdocuments.in/reader030/viewer/2022012102/6169f9d311a7b741a34d73c6/html5/thumbnails/31.jpg)
Fönster
� Emacs kan delas upp i flera fönster.� Det går att visa samma eller olika buffertari de olika fönstren.
� Varje buffert har en egen mode-rad.� Genom att visa samma buffert i olika fönsterkan man samtidigt studera olika delar av enbuffert.
(c) Copyright 2007 Kjell Enblom – p.31
![Page 32: Introduktion till emacs - lysator.liu.se](https://reader030.fdocuments.in/reader030/viewer/2022012102/6169f9d311a7b741a34d73c6/html5/thumbnails/32.jpg)
Fönster
� C-x 2 delar ett fönster i två horisontellt
� C-x 3 delar ett fönster i två vertikalt
� För att hoppa till nästa fönster trycker manC-x o (other window).
� För att döda ett fönster ställer man sig i detoch trycker C-x 0 (OBS! en nolla)
(c) Copyright 2007 Kjell Enblom – p.32
![Page 33: Introduktion till emacs - lysator.liu.se](https://reader030.fdocuments.in/reader030/viewer/2022012102/6169f9d311a7b741a34d73c6/html5/thumbnails/33.jpg)
Fönster
� För att återgå till ett enda fönstertrycker man C-x 1
� Med C-x 2 och C-x 3 går det att få mångafönster i varandra.
(c) Copyright 2007 Kjell Enblom – p.33
![Page 34: Introduktion till emacs - lysator.liu.se](https://reader030.fdocuments.in/reader030/viewer/2022012102/6169f9d311a7b741a34d73c6/html5/thumbnails/34.jpg)
Ramar / Frames
� I emacs benämns helt nya separata fönsterframes.
� En ny ram / frame startas med C-x 5 2� En ram / frame kan avslutas med C-x 5 0
(c) Copyright 2007 Kjell Enblom – p.34
![Page 35: Introduktion till emacs - lysator.liu.se](https://reader030.fdocuments.in/reader030/viewer/2022012102/6169f9d311a7b741a34d73c6/html5/thumbnails/35.jpg)
Ramar / Frames
� Exempel på två ramar / frames.
(c) Copyright 2007 Kjell Enblom – p.35
![Page 36: Introduktion till emacs - lysator.liu.se](https://reader030.fdocuments.in/reader030/viewer/2022012102/6169f9d311a7b741a34d73c6/html5/thumbnails/36.jpg)
Hjälp
� C-h ger inledningen till den inbyggdahjälpen i emacs.
� C-h ? ger ett fönster med den hjälp somgår att få.
� Scrolla i listan med <mellanslag>, <delete>� Samma lista går även att få med C-h C-h� För att få hjälp om den mode som användsför en buffert går det att trycka C-h m
(c) Copyright 2007 Kjell Enblom – p.36
![Page 37: Introduktion till emacs - lysator.liu.se](https://reader030.fdocuments.in/reader030/viewer/2022012102/6169f9d311a7b741a34d73c6/html5/thumbnails/37.jpg)
Hjälp
� C-h k ger hjälp om ett tangentkommando.� Exempel: C-h k C-f ger hjälp om C-f.� Det går även att få hjälp under Help imenyraden.
(c) Copyright 2007 Kjell Enblom – p.37
![Page 38: Introduktion till emacs - lysator.liu.se](https://reader030.fdocuments.in/reader030/viewer/2022012102/6169f9d311a7b741a34d73c6/html5/thumbnails/38.jpg)
Hjälp
� C-h f används för att hitta och beskriva enfunktion.
� Exempel: C-h f forward-char� För att hitta kortkommandot för en funktionkan aproposfunktionen användas. C-h a
� Exempel: C-h a forwardger alla funktioner som flyttar framåt ochderas kortkommandon.
� Till C-h a kan ett reguljärt uttryck anges.
(c) Copyright 2007 Kjell Enblom – p.38
![Page 39: Introduktion till emacs - lysator.liu.se](https://reader030.fdocuments.in/reader030/viewer/2022012102/6169f9d311a7b741a34d73c6/html5/thumbnails/39.jpg)
Hjälp
� C-h b listar alla tangentbordsbindningarsom är aktiva nu.
� I emacs finns inbyggt funktion förkomplettering med <tab> och i en del fall även<mellanslag>.
� När ett alternativ ska ges, t.ex. buffertnamn,kan man skriva ? för att få upp en lista medalla alternativ.
(c) Copyright 2007 Kjell Enblom – p.39
![Page 40: Introduktion till emacs - lysator.liu.se](https://reader030.fdocuments.in/reader030/viewer/2022012102/6169f9d311a7b741a34d73c6/html5/thumbnails/40.jpg)
Tutorial
� I emacs finns en inbyggd tutorial somnås med C-h t.
� Den är en bra introduktion till emacs ochinnehåller övningar.
(c) Copyright 2007 Kjell Enblom – p.40
![Page 41: Introduktion till emacs - lysator.liu.se](https://reader030.fdocuments.in/reader030/viewer/2022012102/6169f9d311a7b741a34d73c6/html5/thumbnails/41.jpg)
.emacs
; Sl a av ljudlig bell och g a over till visible bell
(setq-default visible-bell t)
; Sl a pa matchning av parenteser
(show-paren-mode 1)
; Byt bakgrundsf arg
(set-background-color "wheat")
; Fast mark or ist allet f or blinkande
(blink-cursor-mode nil)
(c) Copyright 2007 Kjell Enblom – p.41
![Page 42: Introduktion till emacs - lysator.liu.se](https://reader030.fdocuments.in/reader030/viewer/2022012102/6169f9d311a7b741a34d73c6/html5/thumbnails/42.jpg)
.emacs
; Exempel p a att l asa in en annan fil.
;; L as in erlang-mode
(and (file-readable-p "˜/elisp/erlang.el")
(load "˜/elisp/erlang.el"))
; L as in python-mode
(and (file-readable-p "˜/elisp/python-mode.el")
(autoload ’python-mode "˜/elisp/python-mode" nil t))
; Visa tid i mode-raden
(display-time)
(c) Copyright 2007 Kjell Enblom – p.42
![Page 43: Introduktion till emacs - lysator.liu.se](https://reader030.fdocuments.in/reader030/viewer/2022012102/6169f9d311a7b741a34d73c6/html5/thumbnails/43.jpg)
Ändra utseende på emacs
� Ändra och ställa in utseende på emacs kanbland annat göras från menyn underOptions->Customize Emacs
(c) Copyright 2007 Kjell Enblom – p.43
![Page 44: Introduktion till emacs - lysator.liu.se](https://reader030.fdocuments.in/reader030/viewer/2022012102/6169f9d311a7b741a34d73c6/html5/thumbnails/44.jpg)
Typsnitt
� Typsnitt går att ange på kommandoraden närman startar emacs med -fn (se tidigare bild).
� Det går även att byta typsnitt i emacs med<shift>-vänster musknapp.
� Denna ger en typsnittsmeny med några val.
(c) Copyright 2007 Kjell Enblom – p.44
![Page 45: Introduktion till emacs - lysator.liu.se](https://reader030.fdocuments.in/reader030/viewer/2022012102/6169f9d311a7b741a34d73c6/html5/thumbnails/45.jpg)
Programutveckling
� Det finns moder till nästan alla språk.� När en källkodsfil läses in ställer emacsautomatiskt in sig i rätt mode (oftast).
� Det går att ändra mode med: M-x språk-mode� T.ex. M-x java-mode
(c) Copyright 2007 Kjell Enblom – p.45
![Page 46: Introduktion till emacs - lysator.liu.se](https://reader030.fdocuments.in/reader030/viewer/2022012102/6169f9d311a7b741a34d73c6/html5/thumbnails/46.jpg)
Programutveckling
� Kompilera program från emacs kanvanligtvis göras med C-x C-k eller C-x c
� Fyll på med namnet på programmet.� Blir t.ex. make -k hello� Programmet kompileras och felmeddelandenoch utmatning visas i en egen buffert.
� För att gå till nästa fel går det att göra:M-x next error eller C-x ‘
� För att gå till en specifik rad kan man göra:M-x goto-line
(c) Copyright 2007 Kjell Enblom – p.46
![Page 47: Introduktion till emacs - lysator.liu.se](https://reader030.fdocuments.in/reader030/viewer/2022012102/6169f9d311a7b741a34d73c6/html5/thumbnails/47.jpg)
Programutveckling
� Emacs moder för olika språk hanterarautomatiskt indentering.
� Omman läser in eller kopierar in någonannans kod så kanske den är felindenterad.Markera en region och tryckM-x indent-region för att indentera regionen.
� På liknande sätt går det att kommentera ut enhel region med kod med M-x comment-region.
� En region med bortkommenterad kod kanavkommenteras med M-x uncomment-region.
(c) Copyright 2007 Kjell Enblom – p.47
![Page 48: Introduktion till emacs - lysator.liu.se](https://reader030.fdocuments.in/reader030/viewer/2022012102/6169f9d311a7b741a34d73c6/html5/thumbnails/48.jpg)
Programutveckling
� ett vanligt paket för färgning av kod är hilite.Använd följande i .emacs för att få det:(load "hilit19")
� M-/ kompletterar namn på t.ex. en variabeleller funktion.
� Skriv början på namnet och tryck sedan påM-/ .
(c) Copyright 2007 Kjell Enblom – p.48
![Page 49: Introduktion till emacs - lysator.liu.se](https://reader030.fdocuments.in/reader030/viewer/2022012102/6169f9d311a7b741a34d73c6/html5/thumbnails/49.jpg)
Programutveckling
� Det går att checka in och ut filer från t.ex.cvs direkt i emacs.
� C-x vv� C-x C-q
(c) Copyright 2007 Kjell Enblom – p.49
![Page 50: Introduktion till emacs - lysator.liu.se](https://reader030.fdocuments.in/reader030/viewer/2022012102/6169f9d311a7b741a34d73c6/html5/thumbnails/50.jpg)
Debugging med gdb
� Program går att debugga från emacs.Kompilera med flaggan -g.
� Starta gdb från emacs med M-x gdb.Ange att emacs ska köra gdb somgdb programnam.
� Sätt en breakpoint i main. Nu går det attstega fram i programmet med step eller s.
� Genom att visa källkoden i ett eget fönsterser man hur debuggern stegar fram iprogrammet.
(c) Copyright 2007 Kjell Enblom – p.50
![Page 51: Introduktion till emacs - lysator.liu.se](https://reader030.fdocuments.in/reader030/viewer/2022012102/6169f9d311a7b741a34d73c6/html5/thumbnails/51.jpg)
Utskrifter
� För att få snygga utskrifter av t.ex.programkod går det att göraM-x ps-print-buffer
� ps-print ger postscrip-utskrift.� För att skriva till en fil går det att göraC-u M-x ps-print-buffer följt av sökväg ochfilnamn.
(c) Copyright 2007 Kjell Enblom – p.51
![Page 52: Introduktion till emacs - lysator.liu.se](https://reader030.fdocuments.in/reader030/viewer/2022012102/6169f9d311a7b741a34d73c6/html5/thumbnails/52.jpg)
LysKOM
� Dokumentation till LysKOM finns på:http://www.lysator.liu.se/lyskom
� En introduktion till elisp-klienten finns på:http://www.lysator.liu.se/˜kjell-e/tekla/linux/dokument/
� LysKOM-klienter finns på:ftp://ftp.lysator.liu.se/pub/lyskom/elisp-client
(c) Copyright 2007 Kjell Enblom – p.52
![Page 53: Introduktion till emacs - lysator.liu.se](https://reader030.fdocuments.in/reader030/viewer/2022012102/6169f9d311a7b741a34d73c6/html5/thumbnails/53.jpg)
.emacs och LysKOM
; Ladda in LysKOM
(autoload ’lyskom "˜/lyskom-swedish-0.48.elc"
"Run LysKOM" t)
(setq kom-default-server "kom.lysator.liu.se")
(setq kom-default-user-name "dittnamn")
(setq kom-default-language ’sv)
(c) Copyright 2007 Kjell Enblom – p.53
![Page 54: Introduktion till emacs - lysator.liu.se](https://reader030.fdocuments.in/reader030/viewer/2022012102/6169f9d311a7b741a34d73c6/html5/thumbnails/54.jpg)
Övrigt
� För att få snygg radbrytning på ett stycke gårdet att göra genom att markera stycket ochsedan trycka M-x fill-region.
� Radbrytningen beror på inställningar avradlängd.
� Ett kommando kan upprepas med C-u.� T.ex. för att gå 4 tecken framåt C-u C-f.� för att upprepa ett annat antal än 4 ange antaltill C-u.
� T.ex. C-u 20 # ger 20 stycken #-tecken.(c) Copyright 2007 Kjell Enblom – p.54
![Page 55: Introduktion till emacs - lysator.liu.se](https://reader030.fdocuments.in/reader030/viewer/2022012102/6169f9d311a7b741a34d73c6/html5/thumbnails/55.jpg)
Övrigt
� Upprepning går även att få med M-<tal>.� Det finns en stavningskontroll somstartas med M-x ispell.
� Ange den bokstav eller siffra för det alternativsom texten ska ersättas med.
� Slå ? för att få upp hjälp.
(c) Copyright 2007 Kjell Enblom – p.55
![Page 56: Introduktion till emacs - lysator.liu.se](https://reader030.fdocuments.in/reader030/viewer/2022012102/6169f9d311a7b741a34d73c6/html5/thumbnails/56.jpg)
Övrigt roligt
� Det finns en kalender som man kan kommaåt med M-x calendar.
� I emacs finns det inbyggt en psykolog (eliza)som kan nås med M-x doctor.
� Det finns även ett program som kan pratamed doktorn :-) Detta får man fram medM-x psychoanalyze-pinhead
(c) Copyright 2007 Kjell Enblom – p.56
![Page 57: Introduktion till emacs - lysator.liu.se](https://reader030.fdocuments.in/reader030/viewer/2022012102/6169f9d311a7b741a34d73c6/html5/thumbnails/57.jpg)
Övrigt roligt
� Tetris går att starta med M-x tetris. Användsedan piltangenterna.
� Den inbyggda Towers of Hanoi går att nå medM-x hanoi.
� Omman vill ha större torn, t.ex. 7 i storlek,gör man C-u 7 M-x hanoi
(c) Copyright 2007 Kjell Enblom – p.57
![Page 58: Introduktion till emacs - lysator.liu.se](https://reader030.fdocuments.in/reader030/viewer/2022012102/6169f9d311a7b741a34d73c6/html5/thumbnails/58.jpg)
Towers of Hanoi
| | |
| | |
| | |
| | |
<---3---> | |
<----4----> | |
<-----5-----> | <0>
<------6------> <--2--> <-1->
============================================
(c) Copyright 2007 Kjell Enblom – p.58
![Page 59: Introduktion till emacs - lysator.liu.se](https://reader030.fdocuments.in/reader030/viewer/2022012102/6169f9d311a7b741a34d73c6/html5/thumbnails/59.jpg)
Tangentbordsmakron
� Det går att spela in makron.� C-x ( startar inspelningen av ett makro.� C-x ) avslutar inspelningen av ett makro.� C-x e kör det senaste makrot.� M-x name-last-kbd-macro namnger senastemakrot.
� Ett namngivet makro kan sedan nås med M-xmakrot.
(c) Copyright 2007 Kjell Enblom – p.59
![Page 60: Introduktion till emacs - lysator.liu.se](https://reader030.fdocuments.in/reader030/viewer/2022012102/6169f9d311a7b741a34d73c6/html5/thumbnails/60.jpg)
Tangentbordsmakron
� Ett namngivet makro kan sparas.� M-x insert-kbd-macro<return>Makronamn<return>klistrar in makrot som anges.
� För att spara makrot i .emacs gör enligtföljande: Gör klart makrot och ge det ett namn.Läs in .emacs och klistra in makrot enligt ovani .emacs.
� Nu är makrot sparat och kan användas närhelst man vill.
(c) Copyright 2007 Kjell Enblom – p.60
![Page 61: Introduktion till emacs - lysator.liu.se](https://reader030.fdocuments.in/reader030/viewer/2022012102/6169f9d311a7b741a34d73c6/html5/thumbnails/61.jpg)
Bytekompilera elisp-filer
� Elispfiler kan bytekompileras för att fåexekveringen effektivare och snabbare.
� En elispfil bytekompileras med:M-x byte-compile-file
� Ange sökväg och filnamn.� Nu finns en fil med ändelsen .elc som kananvändas istället.
� Ändra till att ladda in bytekompilerade.elc-filer i .emacs istället för .el-filer.
(c) Copyright 2007 Kjell Enblom – p.61