<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE artikkel PUBLIC "-//infoweb.ntnu.no//DTD Infoweb 1.0 //NO" "http://infoweb.ntnu.no/infoweb.dtd">
<artikkel spraak="no">
	<tittel>Emacs som utviklingsverktøy og litt til</tittel>
	<forfatter>henrikau</forfatter>
	<sammendrag>
	Denne artikkelen forteller litt om hvordan man kan bruke Emacs til å editere kildekode med fin fargelegging og 
	automatiske innrykk.
	</sammendrag>
<hoveddel>

	<avsnitt>
	Mangt og meget er sagt om Emacs (og vi skal ikke liste alt her), men en ting som mange er enige om, er at
	Emacs er et ypperlig verktøy for editering av kildekode.
	</avsnitt>
	<avsnitt>
	Dersom du ikke har brukt emacs før, anbefaler jeg deg å ta en titt i den 
	<infoweb tittel="Innføring i Emacs" aid="183" spraak="no">Innføring i Emacs</infoweb> om emacs først.
	</avsnitt>
	
	<os2>Java-mode</os2>
	<avsnitt> 
	Java-mode sørger for rett indentering av kode, og gir deg en
	del annen funksjonalitet. Dersom Emacs ikke automatisk laster java-mode når du
	åpner en fil med java-kildekode, må du legge til den vanlige java-filendelsen
	".java" i en variabel som heter <kommando>auto-mode-alist</kommando>. For å fikse dette, må du inn og skrive litt i
	en fil som heter .emacs.
	</avsnitt>

	<kode>
	(setq auto-mode-alist (append
	(list 
	'("\\.cc$" . c-mode)
	'("\\.c$" . c-mode)
	'("\\.C$" . c-mode)
	'("\\.pl$" . perl-mode)
	'("\\.el$" . lisp-mode)
	'("\\.html$" . html-helper-mode)
	'("\\.java$" . java-mode)
	'("\\.ads$" . ada-mode)
	'("\\.adb$" . ada-mode))
	auto-mode-alist))
	</kode>

	<avsnitt> 
	Her ser vi at vi flere eksempler på hvordan vi kan få Emacs
	til å laste forskjellige modus basert på endelsen til en fil; koden over vil få
	Emacs til å kjøre c-mode når vi åpner en fil som har et filnavn som slutter på
	".cc",".c" eller ".C". Dette forutsetter at du har de forskjellige mode'ene installert;
	dette skal ikke være noe problem dersom du har en noenlunde standard
	emacs-distribusjon.
	</avsnitt>

	<avsnitt> 
	For å aktivere dette med øyeblikkelig virkning, plasser
	markøren rett etter den siste parantesen og trykk <kommando>C-x C-e</kommando>
	(les om tastetrykk:
	<fotnote>
	     Konvensjonen for å uttrykke tastetrykk i Emacs
	     skriftlig er slik: for å uttrykke "hold inne Ctrl-tasten mens du trykker på
	     a", bruker man notasjonen C-a. Dette blir selvfølgelig det samme
	     for alle andre taster man kan velge å bytte ut a med. Ctrl-tasten er en
	     modifier-tast; den andre mest brukte modifier-tasten under Emacs er Meta. Ikke
	     bli redd dersom du ikke finner denne på tastaturet ditt; vanligvis gjør den
	     venstre Alt-tasten samme nytten, og i verste fall kan man bruke Esc-tasten i
	     stedet - da trykker man først Esc og så den neste tasten. Man holder altså ikke
	     Esc-tasten inne på samme måte som Ctrl eller Meta/Alt
	</fotnote>). 
	For å gjøre dette permanent, legg den ovenstånde koden i oppstartsfilen til emacs
	</avsnitt>

	<os2>Kode med farger</os2>
	<os3>font-lock-mode</os3>

	<avsnitt> 
	Det er finnes flere pakker som kan gi deg fine farger i
	koden din under Emacs. Den mest utbredte er font-lock, som gir deg fine farger
	under det meste av modi. font-lock følger med de fleste vanlige Emacs-distribusjoner.
	</avsnitt>

	<avsnitt>
	For å laste font-lock, er det lettest å legge til følgende i
	oppstartsfila<fotnote>Navnet på denne avhenger av hva slags operativsystem man
	kjører. Under Unix heter den .emacs, under Windows heter den _emacs. Den skal
	uansett ligge i hjemmekatalogen din.</fotnote>:
	</avsnitt>

	<kode>
	(global-font-lock-mode)
	</kode>

	<os3>JDEE</os3>

	<avsnitt> 
	JDEE er en pakke som gjør mer enn bare fargelegging av kode;
	den gjør det lettere å kjøre de forskjellige Java-programmene (som
	<trykk>java</trykk> og <trykk>javac</trykk>, f. eks.), den gir deg en Speed bar
	som gir deg bedre oversikt over koden og et lass med andre ting. JDEE har egen
	<ekstern uri="http://jdee.sunsite.dk/" tittel="Java sin
	hjemmeside">hjemmeside</ekstern>, med tilhørende <ekstern
	uri="http://jdee.sunsite.dk/jdedoc/html/jde-ug/jde-ug.html" tittel="Java
	Brukermanual">brukermanual</ekstern> (som også følger med
	JDE-installasjonen).
	</avsnitt>

	<avsnitt> 
	Se ellers fint bilde, installasjons-oppskrift og last ned
	hele pakken 
	<ekstern uri="http://www.idi.ntnu.no/~sif8005/jdk-editor/emacs.jde.html">her</ekstern>.
	Merk dog at klippet fra oppsettsfila som er lagt ut på denne siden er tilpasset
	Emacs 19.34; for å sette opp JDEE for nyere Emacsen (merk flertallsformen ;)
	trenger man stort sett bare å legge til føgende i oppstartsfila di:
	</avsnitt>

	<avsnitt> 
	(Forutsatt at JDEE ligger i katalogen
	<trykk>/emacs/lisp/jde-2.1.4</trykk> under hjemmekatalogen
	<fotnote>
	    Katalogen angitt av miljøvariabelen $HOME. Dersom du ikke vet hva denne er
	    satt til, kan du skrive (getenv "HOME") i en hvilken som helst buffer, og så 
	    trykke C-x C-e når markøren står rett etter den siste parentesen. Verdien av $HOME skal
	    nå dukke opp nederst i Emacs-vinduet ditt; er den ikke satt, kommer det bare
	    ``nil''
	</fotnote> 
	din.
	</avsnitt>

	<kode>
	(add-to-list 'load-path (expand-file-name "~/emacs/lisp/jde-2.1.4"))
	(autoload 'jde-mode "jde" "Java Development Enviroment" t)
	</kode>

	<avsnitt>
	Med dette kan du laste JDE ved å skrive 
	<kommando>M-x jde</kommando> 
	og trykke Enter-tasten. For å få Emacs til å start JDE
	automagisk, må du benytte deg av variabelen <trykk>auto-mode-alist</trykk> (se
	seksjonen om font-lock over), du bare bytter ut <trykk>java-mode</trykk> (i
	koden)  med <trykk>jde-mode</trykk>.
	</avsnitt>

	<os2>Emacs er din venn</os2>

	<avsnitt> Det har blitt sagt mange ganger, men man kan likså godt si
	det en gang til: Emacs kan være tung og vanskelig å ha med å gjøre i
	begynnelsen, men etter hvert kan den bli svært så grei å ha som bekjent.
	Grunner som kan nevnes er:
	</avsnitt>

	<dl>
	
	<dt>Emacs er utvidbar</dt>
	<dd>
	Emacs har sitt eget interne programmeringsspråk, emacs-lisp, og
	det finnes et utall forskjellige emacs-lisp-pakker (programmer). Se
	forøvrig link(er) under.
	</dd>

	<dt>Emacs er kraftig</dt>
	<dd>
	Det er lett å behandle store mengder tekst (av vidt forskjellig
	format) i Emacs. Det finnes modi som letter arbeidet med de fleste
	typer tekst.
	</dd>
	
	<dt>Emacs er brukandes til mye</dt>
	<dd>
	Eksempelvis blir dette skrevet i Emacs sin egen xml-helper-mode,
	der det finnes tastetrykk for lett innsetting av html-tags. Det finnes
	modi for alle de mest populære programmerings- og
	formateringsspråk (og et par ikke fult så kjente og populære :-). Man kan lese news i Emacs, man kan lese mail i
	Emacs... det er i det hele tatt svært lite man ikke kan gjøre i
	Emacs... ;)
	</dd>
	</dl>

	<os3>Kommandoer som gjør Emacs til en enda bedre venn</os3>

	<avsnitt> 
	<kommando>C-h</kommando> er et av de viktigste tastetrykkene
	i Emacs; det er adgangen til hjelp-funksjonene. Her er et par nyttige
	kombinasjoner:
	</avsnitt>

	<os2>Nyttige linker</os2>
	<ul>
	<li>
	<ekstern uri="http://www.gnu.org/software/emacs/emacs.html"  
	tittel="Emacs">Gnu Emacs' hjemmesider</ekstern>
	</li>

	<li>
	<ekstern uri="http://www.cs.washington.edu/homes/voelker/ntemacs.html"
	tittel="Emacs on Windows">GNU Emacs FAQ For Windows 95/98/ME/NT/XP and 2000</ekstern>
	</li>
	
	<li>
	<ekstern uri="http://www.gnu.org/software/emacs/manual/emacs.pdf" tittel="emacs-manual.pdf">Emacsmanualen</ekstern>
	</li>
	
	<li>
	<ekstern uri="http://www.emacswiki.org/cgi-bin/wiki" tittel="emacs-wici">
	emacs Wiki - her kan du finne litt av hvert av info om Emacs</ekstern>
	</li>

	<li>
	<ekstern uri="http://www.gnus.org">Gnus - les news og mailen din i Emacs</ekstern>
	</li>
	
	<li>
	<infoweb tittel="Lese new med gnus" aid="122">Lese news med gnus</infoweb>
	</li>

	</ul>

</hoveddel>
</artikkel>
