Simplified scheme so that it can be exported to reveal, ioslide and beamer.
This commit is contained in:
		
							parent
							
								
									35e2681e6f
								
							
						
					
					
						commit
						7f0f072b3d
					
				
							
								
								
									
										102
									
								
								emacskurs.org
									
									
									
									
									
								
							
							
						
						
									
										102
									
								
								emacskurs.org
									
									
									
									
									
								
							@ -1,16 +1,20 @@
 | 
			
		||||
#+Title: Emacskurs
 | 
			
		||||
#+Email: larstvei@ifi.uio.no
 | 
			
		||||
#+TITLE: Emacskurs
 | 
			
		||||
#+EMAIL: larstvei@ifi.uio.no
 | 
			
		||||
#+GITHUB: http://github.com/larstvei
 | 
			
		||||
 | 
			
		||||
#+OPTIONS: num:nil toc:nil \n:1
 | 
			
		||||
 | 
			
		||||
#+BEAMER_THEME: Rochester
 | 
			
		||||
 | 
			
		||||
#+OPTIONS: toc:1 num:nil \n:1
 | 
			
		||||
#+REVEAL_TRANS: linear
 | 
			
		||||
#+REVEAL_THEME: night
 | 
			
		||||
#+REVEAL_THEME: moon
 | 
			
		||||
#+REVEAL_SPEED: fast
 | 
			
		||||
#+REVEAL_HLEVEL: 1
 | 
			
		||||
 | 
			
		||||
* Intro
 | 
			
		||||
** Plan for kurset
 | 
			
		||||
* Plan for kurset
 | 
			
		||||
  #+ATTR_REVEAL: :frag roll-in
 | 
			
		||||
  #+ATTR_HTML: :class build
 | 
			
		||||
  - Før pause:
 | 
			
		||||
    - Innføring i Emacs
 | 
			
		||||
    - Nyttige kommander
 | 
			
		||||
@ -20,17 +24,18 @@
 | 
			
		||||
    - Skrive en enkel konfigurasjonsfil
 | 
			
		||||
    - Bruke det vi lærte før pause
 | 
			
		||||
 | 
			
		||||
** Hva er Emacs?
 | 
			
		||||
* Hva er Emacs?
 | 
			
		||||
  #+ATTR_REVEAL: :frag roll-in
 | 
			
		||||
  #+ATTR_HTML: :class build
 | 
			
		||||
  - Teksteditor
 | 
			
		||||
  - Utvidbar (Emacs Lisp)
 | 
			
		||||
  - Over 30 år gammel
 | 
			
		||||
  - Over 2500 innebygde kommandoer
 | 
			
		||||
  - Fri programvare
 | 
			
		||||
 | 
			
		||||
** Rammer, vinduer og buffere
 | 
			
		||||
 | 
			
		||||
* Rammer, vinduer og buffere
 | 
			
		||||
  #+ATTR_REVEAL: :frag roll-in
 | 
			
		||||
  #+ATTR_HTML: :class build
 | 
			
		||||
  - Emacs åpnes i en ramme
 | 
			
		||||
  - Man kan ha flere vinduer i samme ramme
 | 
			
		||||
  - Tekst vises i buffere
 | 
			
		||||
@ -38,9 +43,9 @@
 | 
			
		||||
  - En fil åpnes i et nytt buffer
 | 
			
		||||
  - Minibufferet (nederste linje), brukes til å skrive inn filnavn, buffernavn, etc...
 | 
			
		||||
 | 
			
		||||
** Modes
 | 
			
		||||
 | 
			
		||||
* Modes
 | 
			
		||||
  #+ATTR_REVEAL: :frag roll-in
 | 
			
		||||
  #+ATTR_HTML: :class build
 | 
			
		||||
  - Major modes
 | 
			
		||||
    - hvert buffer har kun én aktiv major mode
 | 
			
		||||
    - en major mode gir deg funksjonalitet for en bestemt type
 | 
			
		||||
@ -53,11 +58,11 @@
 | 
			
		||||
 | 
			
		||||
  - Modes tilføyer ofte egne tastekombinasjoner!
 | 
			
		||||
 | 
			
		||||
** Tips
 | 
			
		||||
 | 
			
		||||
* Tips
 | 
			
		||||
  #+ATTR_REVEAL: :frag roll-in
 | 
			
		||||
  #+ATTR_HTML: :class build
 | 
			
		||||
  - Emacs er annerledes å bruke enn mange andre programmer, så det krever tilvenning.
 | 
			
		||||
 | 
			
		||||
   #+ATTR_REVEAL: :frag roll-in
 | 
			
		||||
  - i begynnelsen:
 | 
			
		||||
    - les og gjør «learn-by-doing tutorial» (=C-h t=)
 | 
			
		||||
    - tving deg selv til å bruke de kommandoene du lærer til de sitter i fingrene
 | 
			
		||||
@ -70,10 +75,9 @@
 | 
			
		||||
  - annet:
 | 
			
		||||
    - gjør =CAPS-LOCK= om til en ekstra Control (=Ctrl=)
 | 
			
		||||
 | 
			
		||||
* Taster
 | 
			
		||||
** Terminologi for taster
 | 
			
		||||
 | 
			
		||||
* Terminologi for taster
 | 
			
		||||
  #+ATTR_REVEAL: :frag roll-in
 | 
			
		||||
  #+ATTR_HTML: :class build
 | 
			
		||||
   - =C-<any>=
 | 
			
		||||
     Control
 | 
			
		||||
 | 
			
		||||
@ -82,9 +86,9 @@
 | 
			
		||||
 | 
			
		||||
   - =<any>= betyr et vilkårlig tegn (eller tastekombinasjon)
 | 
			
		||||
 | 
			
		||||
** Prefikstaster
 | 
			
		||||
 | 
			
		||||
* Prefikstaster
 | 
			
		||||
  #+ATTR_REVEAL: :frag roll-in
 | 
			
		||||
  #+ATTR_HTML: :class build
 | 
			
		||||
   - =C-x <any>=
 | 
			
		||||
     prefiks for globale kommandoer
 | 
			
		||||
 | 
			
		||||
@ -97,9 +101,9 @@
 | 
			
		||||
 | 
			
		||||
   - Alle tastekombinasjoner som ikke er en prefiks er bundet til en kommando!
 | 
			
		||||
 | 
			
		||||
** Komme seg ut
 | 
			
		||||
 | 
			
		||||
* Komme seg ut
 | 
			
		||||
  #+ATTR_REVEAL: :frag roll-in
 | 
			
		||||
  #+ATTR_HTML: :class build
 | 
			
		||||
   - =C-x C-c=
 | 
			
		||||
     avslutt Emacs
 | 
			
		||||
 | 
			
		||||
@ -114,9 +118,9 @@
 | 
			
		||||
     er udefinert
 | 
			
		||||
     (Dvs. =C-g= kan brukes til å avbryte prefiks)
 | 
			
		||||
 | 
			
		||||
** Tekstredigering
 | 
			
		||||
 | 
			
		||||
* Tekstredigering
 | 
			
		||||
  #+ATTR_REVEAL: :frag roll-in
 | 
			
		||||
  #+ATTR_HTML: :class build
 | 
			
		||||
   - =C-f=, =C-b=
 | 
			
		||||
     flytt markøren ett tegn frem/tilbake
 | 
			
		||||
 | 
			
		||||
@ -129,9 +133,9 @@
 | 
			
		||||
   - =C-p=, =C-n=
 | 
			
		||||
     flytt markøren til forrige/neste linje
 | 
			
		||||
 | 
			
		||||
** Bla rundt
 | 
			
		||||
 | 
			
		||||
* Bla rundt
 | 
			
		||||
  #+ATTR_REVEAL: :frag roll-in
 | 
			
		||||
  #+ATTR_HTML: :class build
 | 
			
		||||
  - =C-v=, =M-v=
 | 
			
		||||
    scroll ned/opp en side
 | 
			
		||||
 | 
			
		||||
@ -141,9 +145,9 @@
 | 
			
		||||
  - =C-l=
 | 
			
		||||
    vis slik at markøren er i senter/toppen/bunnen
 | 
			
		||||
 | 
			
		||||
** Kill og yank
 | 
			
		||||
 | 
			
		||||
* Kill og yank
 | 
			
		||||
  #+ATTR_REVEAL: :frag roll-in
 | 
			
		||||
  #+ATTR_HTML: :class build
 | 
			
		||||
  - =C-w=
 | 
			
		||||
    kill, tilsvarer cut
 | 
			
		||||
 | 
			
		||||
@ -159,9 +163,9 @@
 | 
			
		||||
  - =M-y=, må etterfølges av =C-y=
 | 
			
		||||
    yank-pop, går lenger tilbake på kill-ring
 | 
			
		||||
 | 
			
		||||
** Feiloppretting
 | 
			
		||||
 | 
			
		||||
* Feiloppretting
 | 
			
		||||
  #+ATTR_REVEAL: :frag roll-in
 | 
			
		||||
  #+ATTR_HTML: :class build
 | 
			
		||||
  - =C-d=, =M-d=
 | 
			
		||||
    fjern neste bokstav/ord
 | 
			
		||||
 | 
			
		||||
@ -180,9 +184,9 @@
 | 
			
		||||
  - =M-u=, =M-l=, =M-c=
 | 
			
		||||
    gjør neste ord til UPPERCASE/lowercase/Capital-Case
 | 
			
		||||
 | 
			
		||||
** Markering av tekst
 | 
			
		||||
 | 
			
		||||
* Markering av tekst
 | 
			
		||||
  #+ATTR_REVEAL: :frag roll-in
 | 
			
		||||
  #+ATTR_HTML: :class build
 | 
			
		||||
  - =C-SPC=
 | 
			
		||||
    markerer tekst
 | 
			
		||||
 | 
			
		||||
@ -194,10 +198,9 @@
 | 
			
		||||
 | 
			
		||||
  - Bruk i kombinasjon med =M-w=, =C-w= og =TAB=
 | 
			
		||||
 | 
			
		||||
* Filer, vinduer og buffere
 | 
			
		||||
** Filer
 | 
			
		||||
 | 
			
		||||
* Filer
 | 
			
		||||
  #+ATTR_REVEAL: :frag roll-in
 | 
			
		||||
  #+ATTR_HTML: :class build
 | 
			
		||||
  - =C-x C-f=
 | 
			
		||||
    åpne fil
 | 
			
		||||
    (hvis den ikke finnes fra før åpnes et tomt buffer med det nye filnavnet)
 | 
			
		||||
@ -208,9 +211,9 @@
 | 
			
		||||
  - =C-x C-w=
 | 
			
		||||
    skrive til fil (tilsvarende «lagre som...»)
 | 
			
		||||
 | 
			
		||||
** Vinduer
 | 
			
		||||
 | 
			
		||||
* Vinduer
 | 
			
		||||
  #+ATTR_REVEAL: :frag roll-in
 | 
			
		||||
  #+ATTR_HTML: :class build
 | 
			
		||||
  - =C-x 2=, =C-x 3=
 | 
			
		||||
    splitt et vindu horisontalt/vertikalt
 | 
			
		||||
 | 
			
		||||
@ -223,9 +226,9 @@
 | 
			
		||||
  - =C-x o=
 | 
			
		||||
    bytt fokus til et annet vindu
 | 
			
		||||
 | 
			
		||||
** Buffere
 | 
			
		||||
 | 
			
		||||
* Buffere
 | 
			
		||||
  #+ATTR_REVEAL: :frag roll-in
 | 
			
		||||
  #+ATTR_HTML: :class build
 | 
			
		||||
  - =C-x b RET=
 | 
			
		||||
    bytt buffer
 | 
			
		||||
    (siste besøkte buffer er default)
 | 
			
		||||
@ -238,8 +241,8 @@
 | 
			
		||||
    en annen måte å bytter buffer på
 | 
			
		||||
 | 
			
		||||
* Kommandoer
 | 
			
		||||
 | 
			
		||||
  #+ATTR_REVEAL: :frag roll-in
 | 
			
		||||
  #+ATTR_HTML: :class build
 | 
			
		||||
  - =M-x function RET=
 | 
			
		||||
    lar deg kalle en vilkårlig kommando med navn
 | 
			
		||||
 | 
			
		||||
@ -252,8 +255,8 @@
 | 
			
		||||
  - Bruk =TAB= for autocomplete!
 | 
			
		||||
 | 
			
		||||
* Søking
 | 
			
		||||
 | 
			
		||||
  #+ATTR_REVEAL: :frag roll-in
 | 
			
		||||
  #+ATTR_HTML: :class build
 | 
			
		||||
  - =C-s=
 | 
			
		||||
    søk fremover i bufferet
 | 
			
		||||
 | 
			
		||||
@ -263,8 +266,8 @@
 | 
			
		||||
  - Dette er en /svært/ effektiv måte å flytte markøren på!
 | 
			
		||||
 | 
			
		||||
* Hjelp til selvhjelp
 | 
			
		||||
 | 
			
		||||
  #+ATTR_REVEAL: :frag roll-in
 | 
			
		||||
  #+ATTR_HTML: :class build
 | 
			
		||||
  - =C-h k=
 | 
			
		||||
    bruk hvis du lurer på hva en tastekombinasjon gjør
 | 
			
		||||
 | 
			
		||||
@ -281,8 +284,8 @@
 | 
			
		||||
    gir deg hjelp om hjelpen
 | 
			
		||||
 | 
			
		||||
* Programmering
 | 
			
		||||
 | 
			
		||||
  #+ATTR_REVEAL: :frag roll-in
 | 
			
		||||
  #+ATTR_HTML: :class build
 | 
			
		||||
  - =TAB=
 | 
			
		||||
    indenterer riktig (dersom indenteringen er gal er det et tegn på at det er noe galt i koden!)
 | 
			
		||||
 | 
			
		||||
@ -297,8 +300,8 @@
 | 
			
		||||
    flytter markøren til linjenummer =<nr>=
 | 
			
		||||
 | 
			
		||||
* Makroer
 | 
			
		||||
 | 
			
		||||
  #+ATTR_REVEAL: :frag roll-in
 | 
			
		||||
  #+ATTR_HTML: :class build
 | 
			
		||||
  - Makroer er en måte å "ta opp" en rekke kommandoer på
 | 
			
		||||
 | 
			
		||||
  - =C-x (=
 | 
			
		||||
@ -317,8 +320,8 @@
 | 
			
		||||
    gjenta makroen
 | 
			
		||||
 | 
			
		||||
* Pakker
 | 
			
		||||
 | 
			
		||||
  #+ATTR_REVEAL: :frag roll-in
 | 
			
		||||
  #+ATTR_HTML: :class build
 | 
			
		||||
  - Emacs 24 kommer med innebygd pakkebehandler
 | 
			
		||||
 | 
			
		||||
  - det finnes tusenvis av pakker
 | 
			
		||||
@ -334,9 +337,9 @@
 | 
			
		||||
      
 | 
			
		||||
    - =x= utfør installering/oppgradering/sletting
 | 
			
		||||
 | 
			
		||||
** Anbefalinger
 | 
			
		||||
 | 
			
		||||
* Anbefalinger
 | 
			
		||||
  #+ATTR_REVEAL: :frag roll-in
 | 
			
		||||
  #+ATTR_HTML: :class build
 | 
			
		||||
 | 
			
		||||
  - [[https://github.com/auto-complete/auto-complete][Auto-Complete]]
 | 
			
		||||
    viser mulige fullføringer
 | 
			
		||||
@ -350,19 +353,18 @@
 | 
			
		||||
  - [[https://github.com/oneKelvinSmith/monokai-emacs][Monokai]]
 | 
			
		||||
    et fargetema (hentet fra Sublime)
 | 
			
		||||
 | 
			
		||||
* Til slutt
 | 
			
		||||
 | 
			
		||||
** Nyttige lenker
 | 
			
		||||
* Nyttige lenker
 | 
			
		||||
  #+ATTR_REVEAL: :frag roll-in
 | 
			
		||||
  #+ATTR_HTML: :class build
 | 
			
		||||
  - [[http://www.gnu.org/software/emacs/manual/html_node/emacs/index.html#Top][Emacs manualen]]
 | 
			
		||||
  - [[http://termvakt.ifi.uio.no/Emacs][Termvaktens guide til Emacs]]
 | 
			
		||||
  - [[http://www.masteringemacs.org/reading-guide/][En flott blogg om Emacs]]
 | 
			
		||||
  - [[http://www.ic.unicamp.br/%7Ehelio/disciplinas/MC102/Emacs_Reference_Card.pdf][En cheat-sheet for Emacs]]
 | 
			
		||||
  - [[https://github.com/larstvei/dot-emacs][Min konfigurasjonsfil]]
 | 
			
		||||
 | 
			
		||||
** Spørsmål?
 | 
			
		||||
 | 
			
		||||
* Spørsmål?
 | 
			
		||||
  #+ATTR_REVEAL: :frag roll-in
 | 
			
		||||
  #+ATTR_HTML: :class build
 | 
			
		||||
  - Noen spørsmål nå?
 | 
			
		||||
  - Kom ned i pausen hvis dere har spørsmål eller ønske for neste time!
 | 
			
		||||
  - Gjerne send mail til [[mailto:larstvei@ifi.uio.no][larstvei@ifi.uio.no]]!
 | 
			
		||||
 | 
			
		||||
		Loading…
	
		Reference in New Issue
	
	Block a user