Commit | Line | Data |
---|---|---|
cc725808 | 1 | Emacs användarhandledning. I slutet finns kopieringsvillkoren. |
b1ce6dfb | 2 | |
cc725808 PE |
3 | Emacs-kommandon innebär ofta användning av kontrolltangenten (vanligen |
4 | märkt CTRL eller CTL) eller META-tangenten (på vissa tangentbord märkt | |
5 | ALT eller EDIT). Vi använder här följande förkortningar: | |
b4809257 | 6 | |
cc725808 PE |
7 | C-<chr> håll ner kontrolltangenten samtidigt som du skriver bokstaven |
8 | <chr>. C-f betyder: håll ner kontrolltangenten och tryck f. | |
9 | M-<chr> håll ner META-tangenten samtidigt som du skriver <chr>. Om | |
10 | META-tangent saknas trycker du <ESC>, ESC-tangenten, släpper | |
b4809257 | 11 | den och trycker sedan <chr>. |
b1ce6dfb | 12 | |
cc725808 PE |
13 | Viktigt: För att avsluta Emacs trycker du C-x C-c (två tecken). |
14 | För att avsluta kommandon som inte skrivits in fullt, tryck C-g. | |
15 | Tecknen ">>" i vänstermarginalen anger att du kan prova ett | |
b1ce6dfb | 16 | kommando. Till exempel: |
cc725808 PE |
17 | <<Tomma rader sätts in runt nästa rad när help-with-tutorial aktiveras>> |
18 | [Tomma rader av pedagogiska skäl. Texten fortsätter nedanför.] | |
19 | >> Tryck C-v (View next screen) för att hoppa till nästa skärmbild. | |
20 | Prova nu. Håll ned kontrolltangenten och tryck v. Gör så i | |
21 | fortsättningen när du är färdig med en skärmbild. | |
22 | ||
23 | Notera att det är ett överlapp på två rader när du byter från | |
24 | skärmbild till skärmbild. Detta är för att behålla sammanhanget när du | |
25 | bläddrar framåt i filen. | |
26 | ||
27 | Det första du behöver veta är hur du manövrerar från plats till plats | |
28 | i texten. Du har redan lärt dig hur du flyttar en skärmbild framåt, | |
29 | med C-v. För att flytta dig en skärmbild bakåt trycker du M-v. (Håll | |
b1ce6dfb RS |
30 | ned META-tangenten och tryck v eller tryck <ESC>v om du inte har |
31 | META-, EDIT- eller ALT-tangent.) | |
32 | ||
cc725808 | 33 | >> Prova att trycka M-v och C-v några gånger. |
b1ce6dfb RS |
34 | |
35 | ||
36 | * SAMMANFATTNING | |
37 | ---------------- | |
38 | ||
cc725808 | 39 | Följande kommandon är bra för att se hela skärmbilder: |
b1ce6dfb | 40 | |
cc725808 PE |
41 | C-v Flytta en skärmbild framåt. |
42 | M-v Flytta en skärmbild bakåt. | |
43 | C-l Rita om skärmen och placera texten där markören står | |
44 | mitt på skärmbilden. (Det är KONTROLL-L, inte | |
28b328aa | 45 | KONTROLL-1.) |
b1ce6dfb | 46 | |
cc725808 PE |
47 | >> Leta reda på markören och se vad som står där. Tryck sedan C-l. |
48 | Hitta markören igen och notera att det är samma text som står kring | |
49 | markören nu, men nu mitt på skärmen. Om du trycker C-l igen så | |
50 | flyttas texten högst upp på skärmen. Tryck C-l igen och den flyttas | |
21f50183 | 51 | ner till botten. |
b1ce6dfb | 52 | |
cc725808 PE |
53 | Du kan också använda PageUp och PageDn tangenterna, om din terminal |
54 | har dem, för att flytta en hel skärmbild åt gången, men du redigerar | |
55 | effektivare om du använder C-v och M-v. | |
18242ac6 | 56 | |
b1ce6dfb | 57 | |
cc725808 | 58 | * GRUNDLÄGGANDE MARKÖRRÖRELSER |
b1ce6dfb RS |
59 | ------------------------------ |
60 | ||
cc725808 PE |
61 | Att flytta sig från skärmbild till skärmbild kan vara bra, men hur |
62 | förflyttar man sig till en speciell plats på skärmen? | |
b1ce6dfb | 63 | |
cc725808 PE |
64 | Det finns flera sätt att göra detta. Du kan använda piltangenterna, |
65 | men det är mer effektivt att ha händerna i standardläget och använda | |
66 | kommandona C-p, C-b, C-f och C-n. Dessa tecken är likvärdiga med de | |
67 | fyra piltangenterna. Så här: | |
177c0ea7 | 68 | |
cc725808 | 69 | Föregående rad, C-p |
b1ce6dfb RS |
70 | : |
71 | : | |
cc725808 | 72 | Bakåt, C-b .... Nuvarande markörposition .... Framåt, C-f |
b1ce6dfb RS |
73 | : |
74 | : | |
cc725808 | 75 | Nästa rad, C-n |
b1ce6dfb | 76 | |
cc725808 PE |
77 | >> Flytta markören till linjen mitt i diagrammet genom att använda C-n |
78 | och C-p. Använd sedan C-l för att centrera diagrammet på | |
79 | skärmbilden. | |
b1ce6dfb | 80 | |
cc725808 PE |
81 | Detta är enklare att komma ihåg om du tänker på dessa förkortningar: P |
82 | för föregående (previous), N för nästa (next), B för bakåt (backward) | |
83 | och F för framåt (forward). Du kommer att använda dessa grundläggande | |
21f50183 | 84 | kommandona hela tiden. |
b1ce6dfb | 85 | |
cc725808 | 86 | >> Gör några C-n så att du kommer ned till den här raden. |
b1ce6dfb | 87 | |
cc725808 PE |
88 | >> Flytta dig in i raden med hjälp av några C-f och sedan uppåt |
89 | med några C-p. Lägg märke till vad C-p gör när markören står mitt | |
90 | på en rad. | |
b1ce6dfb | 91 | |
cc725808 PE |
92 | Textrader är åtskilda med radslutstecken. Den sista raden i filen |
93 | avslutas också vanligtvis med ett radslut men Emacs kräver inte att | |
94 | den gör det. | |
b1ce6dfb | 95 | |
cc725808 PE |
96 | >> Prova med C-b i början av en rad. Detta gör att markören |
97 | flyttas till slutet av den tidigare raden. Detta är för att den | |
98 | flyttar markören över radslutstecknet. | |
b1ce6dfb | 99 | |
cc725808 | 100 | C-f flyttar också över radslut, precis som C-b. |
b1ce6dfb | 101 | |
cc725808 PE |
102 | >> Gör några fler C-b så att du får en känsla för var markören |
103 | är. Tryck sedan några C-f tills du kommer till slutet av | |
104 | raden. Tryck ytterligare en C-f så att du flyttar markören till | |
105 | nästa rad. | |
b1ce6dfb | 106 | |
cc725808 PE |
107 | När du flyttar markören förbi toppen eller botten av skärmbilden |
108 | kommer texten utanför skärmen att komma fram. Detta kallas "rullning" | |
109 | och gör det möjligt för Emacs att flytta markören utan att den | |
110 | försvinner ut ur skärmbilden. | |
b1ce6dfb | 111 | |
cc725808 PE |
112 | >> Prova att flytta markören förbi skärmbildens nederkant med hjälp av |
113 | C-n och se vad som händer. | |
b1ce6dfb | 114 | |
cc725808 PE |
115 | Om det går för sakta att flytta markören ett tecken i taget kan du |
116 | flytta den ett ord. M-f flyttar markören ett ord framåt och M-b | |
117 | flyttar den ett ord bakåt. | |
b1ce6dfb | 118 | |
cc725808 | 119 | >> Prova några M-f och M-b. |
b1ce6dfb | 120 | |
cc725808 PE |
121 | Om markören står mitt i ett ord kommer M-f att flytta markören till |
122 | slutet av ordet. Om du står mitt emellan två ord kommer M-f att flytta | |
123 | markören till slutet av nästa ord. M-b fungerar på samma sätt men i | |
b1ce6dfb RS |
124 | motsatt riktning. |
125 | ||
cc725808 PE |
126 | >> Tryck M-f och M-b några gånger och skifta markörposition med några |
127 | C-f och C-b så att du ser hur M-f och M-b uppför sig vid olika | |
128 | placeringar av markören både i och mellan ord. | |
b1ce6dfb | 129 | |
cc725808 PE |
130 | Lägg märke till likheten mellan C-f och C-b å ena sidan och M-f och |
131 | M-b å den andra. Ofta används META-kommandon till språkrelaterade | |
132 | operationer (ord, stycken, avsnitt), medan kontrollkommandon används | |
133 | till grundläggande operationer som inte beror av vad man redigerar | |
134 | (bokstäver, rader, etc.). | |
b1ce6dfb | 135 | |
cc725808 PE |
136 | Denna likhet finns också mellan rader och stycken: C-a och C-e flyttar |
137 | markören till början av en rad eller till slutet av en rad, medan M-a | |
138 | och M-e flyttar den till början respektive slutet av ett stycke. | |
b1ce6dfb | 139 | |
cc725808 PE |
140 | >> Prova några C-a och sedan några C-e. |
141 | Prova också några M-a och sedan några M-e. | |
b1ce6dfb | 142 | |
cc725808 PE |
143 | Se hur efterföljande C-a efter varandra inte gör något, medan flera |
144 | M-a fortsätter att flytta markören till nästa stycke. Även om detta | |
145 | inte verkar självklart är det ganska naturligt. | |
b1ce6dfb | 146 | |
cc725808 PE |
147 | Platsen där markören är i texten kallas också för "arbetspunkt" |
148 | (point). Eller omskrivet: Markören visar på skärmen var arbetspunkten | |
149 | är i texten. | |
b1ce6dfb | 150 | |
cc725808 PE |
151 | Här är en kort sammanfattning av de enklaste markörförflyttnings- |
152 | kommandona, inklusive ord- och styckesförflyttningskommandon: | |
b1ce6dfb | 153 | |
cc725808 PE |
154 | C-f Flytta markören ett steg framåt |
155 | C-b Flytta markören ett steg bakåt | |
b1ce6dfb | 156 | |
cc725808 PE |
157 | M-f Flytta markören ett ord framåt |
158 | M-b Flytta markören ett ord bakåt | |
b1ce6dfb | 159 | |
cc725808 PE |
160 | C-n Flytta markören till nästa rad |
161 | C-p Flytta markören till föregående rad | |
b1ce6dfb | 162 | |
cc725808 PE |
163 | C-a Flytta markören till början av raden |
164 | C-e Flytta markören till slutet av raden | |
b1ce6dfb | 165 | |
cc725808 PE |
166 | M-a Flytta markören till början av meningen |
167 | M-e Flytta markören till slutet av meningen | |
b1ce6dfb | 168 | |
cc725808 PE |
169 | >> Prova alla dessa kommandon några gånger för tränings skull. |
170 | Dessa är de kommandon som används mest. | |
b1ce6dfb | 171 | |
cc725808 PE |
172 | Två andra viktiga markörrörelsekommandon är M-< (META mindre-än), som |
173 | flyttar markören till början av texten, och M-> (META större-än), som | |
b1ce6dfb RS |
174 | flyttar den till slutet av texten. |
175 | ||
cc725808 PE |
176 | På en del tangentbord är "<" placerad över komma, så att man måste |
177 | använda skift för att få fram den. På dessa tangentbord måste man | |
178 | också använda skift för att skriva M-<. Utan skifttangenten skulle det | |
b1ce6dfb RS |
179 | bli M-komma. |
180 | ||
cc725808 PE |
181 | >> Prova M-< nu för att flytta markören till början av vägledningen. |
182 | Använd sedan C-v för att flytta markören tillbaka hit igen. | |
b1ce6dfb | 183 | |
cc725808 PE |
184 | >> Prova också M-> för att flytta markören till slutet av vägledningen. |
185 | Använd sedan M-v för att flytta markören tillbaka hit igen. | |
b1ce6dfb | 186 | |
cc725808 PE |
187 | Du kan också flytta markören med hjälp av piltangenterna, om |
188 | terminalen har piltangenter. Vi föreslår att du lär dig C-b, C-f, C-n | |
189 | och C-p av tre skäl. För det första kommer de att fungera på alla | |
190 | slags terminaler. För det andra kommer du att finna, när du har fått | |
191 | lite träning i att använda Emacs, att det går mycket snabbare att | |
192 | använda kontrollfunktionerna än piltangenterna (för att du undviker | |
193 | att ändra fingersättningen). Den tredje anledningen är att när man har | |
194 | lärt sig att använda kontrolltangenten blir det lättare att lära sig | |
b1ce6dfb RS |
195 | de mer avancerade kontrollfunktionerna. |
196 | ||
cc725808 | 197 | De flesta kommandon i Emacs tar ett numeriskt argument och för de |
b1ce6dfb RS |
198 | flesta kommandon leder detta till att de repeteras. Ett numeriskt |
199 | argument anges genom att du skriver C-u och sedan talet, innan du | |
200 | skriver kommandot. Om du har en META- (eller EDIT- eller ALT-) tangent | |
cc725808 PE |
201 | så finns det ett annat alternativ för att ge numeriska argument: skriv |
202 | talet medan du håller ned META-tangenten. Vi föreslår att du använder | |
203 | C-u för det fungerar på alla slags terminaler. Det numeriska | |
204 | argumentet kallas också för "prefixargument" eftersom det skrivs före | |
b1ce6dfb RS |
205 | kommandot. |
206 | ||
cc725808 | 207 | Till exempel: C-u 8 C-f flyttar markören åtta steg framåt. |
b1ce6dfb | 208 | |
cc725808 PE |
209 | >> Prova C-n eller C-p med ett numeriskt argument så att du |
210 | kommer så nära den här raden som möjligt med ett enda kommando. | |
b1ce6dfb | 211 | |
cc725808 PE |
212 | De flesta kommandon använder det numeriska argumentet för ett |
213 | repeterat utförande men det finns kommandon som använder det | |
214 | annorlunda. Flera kommandon, men inga av dem du lärt dig hittills, | |
215 | använder det som en flagga. Med ett prefixargument, och oberoende av | |
216 | dess värde, gör kommandot något annat. | |
b1ce6dfb RS |
217 | |
218 | C-v och M-v finns med bland dessa undantag. Om man ger ett argument | |
cc725808 PE |
219 | till ett av dessa kommandon kommer skärmbilden flytta sig upp eller |
220 | ned så många rader som argumentet anger, istället för så många | |
221 | skärmbilder. Till exempel kommer C-u 8 C-v flytta skärmbilden 8 rader | |
222 | uppåt. | |
b1ce6dfb RS |
223 | |
224 | >> Prova C-u 8 C-v nu. | |
225 | ||
cc725808 PE |
226 | Detta borde ha flyttat skärmbilden 8 rader uppåt. Om du önskar flytta |
227 | tillbaka igen är det bara att ge samma argument till M-v. | |
b1ce6dfb | 228 | |
cc725808 PE |
229 | Om du använder ett fönstersystem, som X eller MS-Windows, finns det |
230 | troligen ett rektangulärt område på sidan av Emacs-fönstret, en så | |
21f50183 ML |
231 | kallad rullningslist. Genom att klicka i den med musen kan du rulla |
232 | texten. | |
b1ce6dfb | 233 | |
cc725808 | 234 | Om din mus har ett rullningshjul kan även den användas för att rulla |
21f50183 | 235 | texten. |
b1ce6dfb | 236 | |
21f50183 ML |
237 | * OM EMACS SLUTAR SVARA |
238 | ----------------------- | |
b1ce6dfb | 239 | |
cc725808 PE |
240 | Om Emacs slutar att reagera på kommandon kan du lugnt stoppa dem genom |
241 | att trycka C-g. Du kan också använda C-g för att stoppa ett kommando | |
242 | som tar för lång tid att utföra. | |
b1ce6dfb | 243 | |
cc725808 PE |
244 | Det är också möjligt att använda C-g för att avbryta ett numeriskt |
245 | argument eller början på ett kommando som du inte önskar att utföra. | |
b1ce6dfb | 246 | |
cc725808 PE |
247 | >> Skriv C-u 100 för att ge ett numeriskt argument på 100 och tryck |
248 | C-g. Tryck nu C-f. Markören skall nu flytta sig bara ett steg, för att | |
249 | du avbröt argumentet med C-g. | |
b1ce6dfb | 250 | |
cc725808 | 251 | Om du av misstag slår <ESC> blir du kvitt detta med ett C-g. |
b1ce6dfb RS |
252 | |
253 | ||
cc725808 | 254 | * SPÄRRADE KOMMANDON |
b1ce6dfb RS |
255 | -------------------- |
256 | ||
cc725808 PE |
257 | En del Emacs-kommandon är "spärrade" så att nybörjare inte skall |
258 | använda dem av misstag. | |
b1ce6dfb | 259 | |
cc725808 PE |
260 | Om du provar ett av dessa spärrade kommandon kommer Emacs ge ett |
261 | meddelande som berättar vilket kommando det är och kommer att fråga om | |
262 | du verkligen vill fortsätta och utföra detta kommando. | |
b1ce6dfb | 263 | |
cc725808 PE |
264 | Om du verkligen önskar att utföra kommandot skriver du <SPC>, |
265 | (mellanslagstangenten) som svar på frågan. Normalt, om du inte önskar | |
266 | att utföra detta kommando, svarar du "n" på frågan. | |
b1ce6dfb | 267 | |
cc725808 PE |
268 | >> Skriv C-x C-l (som är ett spärrat kommando). |
269 | Skriv n som svar på frågan. | |
b1ce6dfb RS |
270 | |
271 | ||
cc725808 | 272 | * FÖNSTER |
b1ce6dfb RS |
273 | --------- |
274 | ||
cc725808 PE |
275 | Emacs kan ha flera "fönster" där varje kan visa sin egen text. Vi |
276 | kommer förklara senare hur man använder flera fönster. Här skall vi | |
277 | förklara hur man blir av med extra fönster för att komma tillbaka till | |
278 | det grundläggande läget med endast ett fönster. Det är enkelt: | |
b1ce6dfb | 279 | |
cc725808 | 280 | C-x 1 Ett fönster (dvs. ta bort alla andra fönster). |
b1ce6dfb | 281 | |
cc725808 PE |
282 | Det är KONTROLL-x följt av siffran 1. C-x 1 utvidgar fönstret där |
283 | markören står så att det fyller hela skärmbilden. Alla andra fönster | |
b1ce6dfb RS |
284 | tas bort. |
285 | ||
cc725808 | 286 | >> Flytta markören till den här raden och tryck C-u 0 C-l. |
b1ce6dfb | 287 | >> Tryck C-h k C-f. |
cc725808 PE |
288 | Se hur det här fönstret krymper samtidigt som ett nytt uppträder |
289 | för att visa dokumentationen av C-f-kommandot. | |
b1ce6dfb | 290 | |
cc725808 | 291 | >> Slå C-x 1 och se hur dokumentationsfönstret nu försvinner. |
b1ce6dfb | 292 | |
cc725808 PE |
293 | Kommandot skiljer sig lite från andra kommandon du har lärt dig |
294 | eftersom det består av två tecken. Det startar med tecknet KONTROLL-x. | |
295 | Det finns många kommandon som startar med KONTROLL-x och många av dem | |
296 | har med filer, skärmbilder och liknande saker att göra. Dessa | |
297 | kommandon är två, tre eller fyra tecken långa. | |
b1ce6dfb RS |
298 | |
299 | ||
300 | * SKRIVA OCH TA BORT TEXT | |
301 | ------------------------- | |
302 | ||
cc725808 PE |
303 | Om du önskar att sätta in text är det bara att skriva in texten. |
304 | Vanliga tecken, som A, 7, *, etc., sätts in direkt när du skriver dem. | |
305 | Tryck på <Return> för att sätta in en radbrytning. (Det är den tangent | |
306 | på tangentbordet som ibland är märkt med "Enter") | |
b1ce6dfb | 307 | |
cc725808 PE |
308 | För att radera tecknet omedelbart före aktuell markörposition, tryck |
309 | på <DEL>. Det är tangenten på tangentbordet som vanligtvis är markerad | |
310 | med "Backspace" -- det är samma tangent som du normal använder för att | |
311 | radera det sist inmatade tecknet utanför Emacs. | |
b1ce6dfb | 312 | |
cc725808 PE |
313 | Det kan finnas en annan tangent på ditt tangentbordet som är märkt med |
314 | "Delete", men det är inte den vi menar med <DEL>. | |
b1ce6dfb | 315 | |
cc725808 PE |
316 | >> Gör detta nu: Skriv in några tecken och ta bort dem genom att |
317 | använda <DEL>. Var inte rädd för att skriva i den här filen, du | |
318 | kommer inte att kunna förändra originalet till vägledningen. Detta | |
319 | är bara en lokal kopia. | |
b1ce6dfb | 320 | |
cc725808 PE |
321 | När en rad blir för lång för att rymmas på en skärmbredd så fortsätter |
322 | den på raden under. Om du använder ett fönstersystem, visas små böjda | |
323 | pilar i det lilla utrymmet på bägge sidor om textmassan (i vänster och | |
324 | höger marginal) för att ange var en rad fortsätter, Om du använder | |
325 | en textterminal anges med ett bakstreck ("\") i kolumnen längst till | |
326 | höger att raden fortsätter. | |
b1ce6dfb | 327 | |
cc725808 PE |
328 | >> Skriv in lite text så att du kommer till slutet av raden och |
329 | fortsätt att skriva lite till. Du kommer då att se hur | |
330 | fortsättningstecknet ser ut. | |
b1ce6dfb | 331 | |
cc725808 PE |
332 | >> Använd <DEL> för att radera texten tills raden ryms på en |
333 | skärmbredd igen. Fortsättningstecknet kommer då att försvinna. | |
b1ce6dfb RS |
334 | |
335 | Du kan radera radbrytning precis som andra tecken. Genom att radera | |
cc725808 PE |
336 | radbrytningen mellan två rader slås dessa samman till en. Om |
337 | resultatet av denna sammanslagning blir för stor för att passa inom en | |
338 | skärmbredd, så kommer den att visas med ett fortsättningstecken. | |
b1ce6dfb | 339 | |
cc725808 PE |
340 | >> Flytta markören till början av en rad och tryck <DEL>. |
341 | Detta kommer att klistra ihop raden med raden över. | |
b1ce6dfb | 342 | |
cc725808 | 343 | >> Tryck <Return> för att sätta in radbrytningen du tog bort. |
b1ce6dfb | 344 | |
cc725808 PE |
345 | Tänk på att de flesta Emacs-kommandon kan ta numeriska argument. Detta |
346 | gäller också texttecken. Genom att repetera ett texttecken kommer det | |
347 | skrivas flera gånger. | |
b1ce6dfb | 348 | |
cc725808 | 349 | >> Prova det nu: Skriv C-u 8 * för att sätta in ********. |
b1ce6dfb | 350 | |
cc725808 PE |
351 | Du har nu lärt dig de mest grundläggande sätten att skriva något i |
352 | Emacs och att rätta fel. Du kan radera ord och rader också. Här är en | |
353 | översikt över kommandon för radering: | |
b1ce6dfb | 354 | |
cc725808 PE |
355 | <DEL> Raderar tecknet som står precis före markören |
356 | C-d Raderar tecknet som står precis under markören | |
b1ce6dfb | 357 | |
cc725808 PE |
358 | M-<DEL> Raderar ordet precis före markören |
359 | M-d Raderar ordet precis efter markören | |
b1ce6dfb | 360 | |
cc725808 | 361 | C-k Raderar från markören till slutet av raden |
18242ac6 | 362 | M-k Raderar till slutet av stycket |
177c0ea7 | 363 | |
cc725808 PE |
364 | Lägg märke till att <DEL> och C-d kontra M-<DEL> och M-d följer |
365 | mönstret som började med C-f och M-f. (<DEL> är inte precis ett | |
366 | kontrolltecken men låt oss inte bry oss om det.) C-k och M-k fungerar | |
367 | på liknande sätt som C-e och M-e när det gäller rader respektive | |
21f50183 | 368 | meningar. |
b1ce6dfb | 369 | |
cc725808 PE |
370 | Du kan också ta bort en del av en texten med hjälp av följande |
371 | allmänna metod. Flytta till ena änden av det område du vill ta bort | |
372 | och tryck C-<SPC>. (<SPC> är mellanslagstangenten.) Flytta sedan till | |
373 | andra änden av området du vill ta bort. När du gör det markerar Emacs | |
374 | texten mellan markören och den plats där du tryckte C-<SPC>. Slutligen, | |
375 | tryck C-w. Detta tar bort texten mellan de två positionerna. | |
b1ce6dfb | 376 | |
cc725808 | 377 | >> Flytta markören till bokstaven D i föregående stycke. |
21f50183 | 378 | >> Tryck C-<SPC>. Emacs skall nu visa meddelandet "Mark set" |
cc725808 PE |
379 | längst ner på skärmen. |
380 | >> Flytta markören till bokstaven o i ordet metod på andra raden i | |
b1ce6dfb | 381 | stycket. |
cc725808 | 382 | >> Tryck C-w. Detta tar bort texten från och med D fram till just före |
b1ce6dfb RS |
383 | o. |
384 | ||
28b328aa | 385 | Skillnaden mellan att "ta bort" (killing) och "radera" (deleting) text |
cc725808 PE |
386 | är att "borttagen" text kan sättas tillbaka (var som helst), medan |
387 | raderad text inte kan det på det sättet. (Du kan dock ångra en | |
388 | radering--se nedan.) Återinsättning av borttagen text kallas | |
389 | "återhämtning" (yanking). Generellt kan man säga att kommandon som | |
390 | tar bort fler än ett tecken sparar undan texten (så att den kan | |
391 | återhämtas) medan kommandon som bara raderar ett tecken, eller bara | |
392 | raderar tomma rader och mellanrum inte sparar någonting (och den | |
393 | texten kan alltså inte återhämtas). <DEL> och C-d raderar i det enkla | |
394 | fallet utan argument. Med argument så tar de bort i stället. | |
395 | ||
396 | >> Flytta markören till början av en rad som inte är tom. | |
397 | Tryck C-k för att ta bort texten på raden. | |
398 | >> Tryck C-k en gång till. Du kommer nu se att den raderar den tomma | |
b1ce6dfb RS |
399 | raden som var kvar. |
400 | ||
cc725808 PE |
401 | Lägg märke till att ett enstaka C-k bara raderar texten på raden och |
402 | att det andra C-k raderar själva raden och flyttar upp texten på raden | |
b1ce6dfb | 403 | under ett steg. C-k hanterar numeriska argument lite speciellt. Den |
cc725808 PE |
404 | raderar så många rader OCH innehållet i dem. Detta är alltså inte bara |
405 | en repetition av kommandot. C-u 2 C-k raderar två rader samt de tomma | |
406 | raderna, medan C-k två gånger inte kommer att göra det. | |
407 | ||
408 | Att sätta in borttagen text kallas att "återhämta" den (yanking). | |
409 | (Tänk på det som att du rycker, eller drar, tillbaka någon text som | |
410 | tagits bort.) Du kan antingen hämta tillbaka borttagen text till samma | |
411 | plats som där den blev borttagen, eller så kan du sätta in den på en | |
18242ac6 | 412 | annan plats i texten du redigerar eller till och med i en helt annan |
cc725808 PE |
413 | fil. Du kan också hämta tillbaka samma text flera gånger så att du får |
414 | flera kopior av den. Några andra textredigerare kallar "ta bort" och | |
415 | "återhämta" att "klippa ut" respektive "klistra in" (Se ordlistan i | |
21f50183 | 416 | Emacs-manualen) |
28b328aa | 417 | |
cc725808 PE |
418 | Kommandot för att hämta tillbaka text är C-y. Kommandot hämtar |
419 | tillbaka den sist borttagna texten och placerar den där markören är. | |
b1ce6dfb | 420 | |
cc725808 | 421 | >> Prova: Gör C-y för att få tillbaka texten. |
b1ce6dfb | 422 | |
cc725808 PE |
423 | Om du gör flera C-k i rad så kommer all bortagen text att sparas |
424 | samlat så att ett C-y återhämtar alla raderna på en gång. | |
b1ce6dfb | 425 | |
cc725808 | 426 | >> Prova detta. Tryck C-k ett par gånger. |
b1ce6dfb | 427 | |
cc725808 | 428 | Och hämta så tillbaka igen: |
b1ce6dfb | 429 | |
cc725808 PE |
430 | >> Tryck C-y. Flytta markören några rader ned och tryck C-y igen. |
431 | Så kopierar man text. | |
b1ce6dfb | 432 | |
cc725808 PE |
433 | Men vad gör du om du har en text du önskar att hämta tillbaka men du |
434 | har redan tagit bort något nytt? C-y skulle hämta tillbaka den senaste | |
435 | texten som blev borttagen men tidigare bortagen text är inte | |
436 | förlorad. Du kan få tillbaka den med kommandot M-y. Efter att du har | |
437 | använt C-y för att hämta tillbaka den sist borttagna texten kommer M-y | |
438 | ersätta denna text med tidigare borttagen text. Genom att göra M-y om | |
439 | och om igen hämtas allt tidigare borttagen text tillbaka. När du har | |
440 | nått den önskade texten behöver du inte göra något ytterligare för att | |
441 | behålla den. Fortsätt bara med din redigeringen och lämna den | |
442 | återtagna texten där den är. | |
b1ce6dfb | 443 | |
cc725808 | 444 | Om du gör M-y tillräckligt många gånger kommer du att komma tillbaka |
b1ce6dfb RS |
445 | till startpunkten (texten som sist blev borttagen). |
446 | ||
cc725808 PE |
447 | >> Ta bort en rad, flytta markören till en ny rad och ta bort även |
448 | denna rad. Använd C-y för att hämta tillbaka den sista raden. Tryck | |
449 | M-y för att byta den mot den tidigare borttagna raden. Tryck flera | |
450 | M-y och se vad du får. Fortsätt med detta tills du får tillbaka den | |
451 | första raden igen och sedan några gånger till. Om du vill kan du | |
b1ce6dfb | 452 | prova med positiva och negativa argument till M-y. |
177c0ea7 | 453 | |
b1ce6dfb | 454 | |
cc725808 | 455 | * ÅNGRA |
b1ce6dfb RS |
456 | ------- |
457 | ||
cc725808 PE |
458 | Om du gör en förändring i texten och sedan ångrar dig, så kan du |
459 | upphäva ändringen med ångra-kommandot C-/. | |
b1ce6dfb | 460 | |
cc725808 PE |
461 | Normalt kommer C-/ upphäva förändringen som gjordes av det sist |
462 | utförda kommandot. Om du repeterar C-/ flera gånger kommer varje | |
463 | repetition upphäva ett kommando till. | |
b1ce6dfb | 464 | |
cc725808 PE |
465 | Det finns två undantag. Kommandon som inte förändrar texten räknas |
466 | inte (detta inkluderar markörförflyttningar och bläddringskommandon), | |
467 | och inskrivna enkelbokstäver blir vanligtvis grupperade i grupper om | |
468 | upp till 20 tecken. Detta är för att reducera antalet C-/ som behövs | |
469 | för att ångra inskriven text. | |
b1ce6dfb | 470 | |
cc725808 | 471 | >> Ta bort den här raden med C-k, hämta sedan tillbaka den med C-/. |
b1ce6dfb | 472 | |
cc725808 PE |
473 | C-_ är ett alternativt ångra-kommandot. Den fungerar exakt på samma |
474 | sätt som C-/. På vissa textterminaler skickar C-/ faktiskt C-_ till | |
475 | Emacs. Även C-x u fungerar precis som C-/, men är inte lika enkelt att | |
21f50183 | 476 | skriva. |
b1ce6dfb | 477 | |
cc725808 | 478 | Ett numeriskt argument till C-/, C-_ eller C-x u medför upprepning. |
b1ce6dfb | 479 | |
cc725808 | 480 | Du kan ångra radering av text precis på samma sätt som du kan ångra |
28b328aa | 481 | att du tagit bort text. Skillnaden mellan att ta bort och att radera |
cc725808 PE |
482 | någonting påverkar endast om du kan hämta tillbaka det med C-y. För |
483 | ångerfunktionen spelar det ingen roll hur texten försvunnit. | |
28b328aa | 484 | |
b1ce6dfb RS |
485 | |
486 | * FILER | |
487 | ------- | |
488 | ||
cc725808 PE |
489 | För att texten du har förändrat skall sparas permanent måste du lägga |
490 | den i en fil. Om du inte gör det kommer texten att försvinna när du | |
491 | avslutar Emacs. Du lägger texten i en fil genom att först finna (find) | |
492 | denna fil. Detta kallas också för att besöka filen (visit). | |
493 | ||
494 | Att finna en fil innebär att du ser filens innehåll i Emacs. På många | |
495 | sätt är det som om du förändrar själva filen men förändringen du gör | |
496 | kommer inte bli permanent förrän filen sparas (save). Detta är för att | |
497 | undvika att halvförändrade filer sparas när du inte vill det. Till och | |
498 | med när du sparar filen kommer Emacs att behålla originalet under ett | |
499 | nytt namn, som backup, ifall du senare ångrar alltihop. | |
500 | ||
501 | Om du tittar nästan längst ner på skärmbilden så kommer du se en rad | |
502 | som börjar med minustecken, och som startar med "--:-- TUTORIAL.sv" | |
503 | eller något snarlikt. Denna del av skärmbilden visar normalt namnet på | |
504 | filen du besöker. Just nu besöker du din personlig kopia av | |
505 | vägledningen till Emacs, vilken heter "TUTORIAL.sv". Vilken fil du än | |
506 | är inne i så kommer filnamnet stå där. | |
507 | ||
508 | En annan sak med kommandot för att finna filer är att du måste ange | |
509 | vilket filnamn du önskar. Vi säger att kommandot "läser ett | |
510 | argument". I detta fall är argumentet namnet på filen. Efter att du | |
21f50183 | 511 | gett kommandot |
b1ce6dfb RS |
512 | |
513 | C-x C-f Finn en fil | |
514 | ||
cc725808 PE |
515 | kommer Emacs fråga efter ett filnamn. Filnamnet du skriver syns på den |
516 | nedersta raden i skärmbilden. Denna sista rad kallas minibuffert när | |
517 | den används på det här sättet. Du kan använda vanliga Emacs-kommandon | |
518 | för att förändra filnamnet. | |
b1ce6dfb | 519 | |
cc725808 | 520 | När du skriver in filnamnet, eller något annat i minibufferten, kan du |
b1ce6dfb RS |
521 | avbryta med kommandot C-g. |
522 | ||
cc725808 PE |
523 | >> Skriv C-x C-f och så C-g. Detta avbryter minibufferten och |
524 | avbryter också C-x C-f kommandot som använde minibufferten. Så att | |
525 | du inte finner någon fil. | |
b1ce6dfb | 526 | |
cc725808 PE |
527 | När du är färdig med att skriva filnamnet trycker du <Return> för att |
528 | utföra kommandot. Minibufferten försvinner och C-x C-f kommandot börja | |
21f50183 | 529 | leta efter filen. |
b1ce6dfb | 530 | |
cc725808 PE |
531 | Filinnehållet visas nu upp på skärmen och du kan börja redigera |
532 | innehållet. När du vill spara filen kan du använda detta kommando | |
b1ce6dfb RS |
533 | |
534 | C-x C-s Spara fil | |
535 | ||
cc725808 PE |
536 | Detta sparar texten på skärmen till filen. Första gången detta görs |
537 | kommer Emacs att ge originalfilen ett nytt namn så att den inte går | |
538 | förlorad. Det nya filnamnet bildas genom att lägga till ett "~" i | |
b1ce6dfb RS |
539 | slutet av det ursprungliga filnamnet. |
540 | ||
cc725808 PE |
541 | När lagringen är utförd kommer Emacs skriva ut namnet på filen som |
542 | blev sparad. Du bör spara ofta så att du inte förlorar så mycket om | |
21f50183 | 543 | systemet kraschar. (Se kapitlet om sparautomatik nedan.) |
b1ce6dfb | 544 | |
21f50183 | 545 | >> Skriv C-x C-s TUTORIAL.sv <Return>. |
cc725808 PE |
546 | Detta sparar den här handledningen i en fil med namnet TUTORIAL |
547 | och "Wrote ...TUTORIAL.sv" skrivs ut nederst på skärmbilden. | |
548 | ||
549 | Du kan finna en existerande fil, antingen för att förändra den eller | |
550 | för att titta på den. Du kan också finna en fil som inte existerar. | |
551 | Det är så man skapar nya filer med Emacs: finn filen, som är tom till | |
552 | att börja med, och sätt igång med att skriva texten som skall in i | |
553 | filen. Först när du sparar filen kommer Emacs att verkligen skapa | |
554 | filen med den text du har skrivit. Från och med detta editerar du en | |
b1ce6dfb RS |
555 | fil som existerar. |
556 | ||
557 | ||
558 | * BUFFERTAR | |
559 | ----------- | |
560 | ||
cc725808 PE |
561 | Om du finner en ny fil med C-x C-f kommer den första filen fortsätta |
562 | att vara öppen i Emacs. Du kan byta tillbaka till den genom att finna | |
563 | den på nytt med C-x C-f. På så sätt kan du ha ett stort antal filer | |
564 | öppna i Emacs. | |
b1ce6dfb | 565 | |
cc725808 PE |
566 | Emacs sparar texten för varje fil i ett objekt kallat "buffert". När |
567 | du finner en ny fil skapas en ny buffert i Emacs. För att se en lista | |
568 | över existerande buffertar i Emacs kan du skriva | |
b1ce6dfb RS |
569 | |
570 | C-x C-b Listning av buffertar. | |
571 | ||
572 | >> Prova C-x C-b nu. | |
573 | ||
cc725808 PE |
574 | Se hur varje buffert har ett namn och att de också kan ha namnet på |
575 | den fil som innehållet kommer från. Vilken text du än ser i ett | |
576 | Emacs-fönster så tillhör den alltid en buffert. | |
b1ce6dfb | 577 | |
cc725808 | 578 | >> Skriv C-x 1 för att bli kvitt buffertlistan. |
b1ce6dfb | 579 | |
cc725808 PE |
580 | När du har flera buffertar så är bara en av dem "gällande" åt gången. |
581 | Det är den buffert du redigerar. Om du vill redigera en annan buffert | |
582 | så måste du byta till den. Om du vill byta till en buffert som | |
583 | motsvarar en fil kan du göra det genom att besöka den igen med C-x | |
584 | C-f. Det finns dock ett enklare sätt: använd C-x b kommandot. I det | |
18242ac6 MT |
585 | kommandot anger du buffertens namn. |
586 | ||
21f50183 | 587 | >> Skapa en fil med namnet "foo" genom att trycka C-x C-f foo <Return>. |
cc725808 PE |
588 | Skriv sedan C-x b TUTORIAL.sv <Return> för att komma tillbaka till |
589 | den här handledningen. | |
18242ac6 | 590 | |
cc725808 PE |
591 | Mestadels är buffertens namn densamma som filens namn (utan |
592 | katalogdel.) Det är dock inte alltid så. Bufferlistan du skapar med | |
593 | C-x C-b visar alltid namnen på varje buffert. | |
18242ac6 | 594 | |
cc725808 PE |
595 | All text du ser i ett Emacsfönster är alltid del av någon buffert. En |
596 | del buffertar är inte knutna till någon fil, till exempel bufferten | |
597 | "*Buffer List*". Det är den buffert som innehåller buffertlistan som | |
18242ac6 | 598 | skapades med C-x C-b. Bufferten "*Messages*" motsvarar inte heller |
cc725808 | 599 | någon fil. Den innehåller de meddelanden som visas på den nedersta |
18242ac6 MT |
600 | raden i Emacs sessionen. |
601 | ||
cc725808 PE |
602 | >> Skriv C-x b *Messages* <Return> för att se meddelandebufferten. |
603 | Skriv sedan C-x b TUTORIAL.sv <Return> för att återgå till den här | |
18242ac6 MT |
604 | handledningen. |
605 | ||
cc725808 PE |
606 | Om du ändrar texten till en fil och sedan öppnar en ny fil, så kommer |
607 | inte den första filen sparas. Förändringen ligger kvar i | |
608 | bufferten. Skapande och redigering av den nya filen påverkar inte den | |
609 | första filens buffert. Detta kan vara bra men betyder också att du | |
610 | behöver ett lämpligt sätt att spara den första filens buffert. Det är | |
611 | omständligt att flytta tillbaka till den tidigare bufferten med C-x | |
612 | C-f för att sedan spara filen med C-x C-s. Därför finns kommandot | |
b1ce6dfb RS |
613 | |
614 | C-x s Spara buffertar | |
615 | ||
cc725808 | 616 | C-x s frågar för varje buffert med ändringar, som inte sparats, om du |
b1ce6dfb RS |
617 | vill spara eller ej. |
618 | ||
cc725808 PE |
619 | >> Sätt in en rad med text och spara med C-x s |
620 | Du skall nu få frågan om du önskar spara bufferten | |
621 | TUTORIAL.sv. Svara ja på frågan genom att trycka "y" (yes). | |
b1ce6dfb RS |
622 | |
623 | ||
cc725808 | 624 | * UTVIDGNING AV KOMMANDOMÄNGDEN |
b1ce6dfb RS |
625 | ------------------------------- |
626 | ||
cc725808 PE |
627 | Det finns mycket fler Emacs-kommandon än antalet KONTROLL- eller |
628 | META-tangenter. För att komma förbi denna begränsning har Emacs ett | |
629 | "X"- (eXtend) kommando. Detta finns i två varianter: | |
b1ce6dfb | 630 | |
cc725808 PE |
631 | C-x Tecken-utvidgning. Följs av ett tecken. |
632 | M-x Namngiven kommandoutvidgning. Följs av ett | |
b1ce6dfb RS |
633 | kommandonamn. |
634 | ||
cc725808 PE |
635 | Detta är kommandon som är bra att ha men används mer sällan än de |
636 | kommandon du redan har lärt dig. Du har redan sett några av dem, C-x | |
637 | C-f för finn, och C-x C-s för spara. Ett annat exempel är kommandot | |
638 | för att avsluta Emacs som är C-x C-c. Var inte rädd för att förlora | |
639 | förändringar du har gjort. C-x C-c erbjuder dig att spara förändringar | |
b1ce6dfb RS |
640 | innan Emacs avslutas. |
641 | ||
cc725808 PE |
642 | Om du använder ett fönstersystem behöver du inte något speciellt |
643 | kommando för att byta till ett annat program. Du kan göra det med | |
644 | musen eller med ett kommando till fönsterhanteraren. Men om du | |
645 | använder en textterminal, som bara kan visa ett program åt gången, så | |
646 | måste du avbryta Emacs för att flytta till ett annat program. | |
b1ce6dfb | 647 | |
cc725808 PE |
648 | C-z är kommandot för att avsluta Emacs *tillfälligt* så att du kan |
649 | återvända till samma Emacs senare. När Emacs körs från en textterminal | |
650 | så avbryts Emacs med C-z, dvs du återgår till kommandoskalet utan att | |
651 | Emacsprocessen förstörs. I de flesta vanliga kommandoskalen så kan man | |
652 | återgå till Emacs med kommandot 'fg' eller med '%emacs'. | |
b1ce6dfb | 653 | |
cc725808 | 654 | C-x C-c används när du skall avsluta Emacs. Det är klokt att avsluta |
b1ce6dfb | 655 | Emacs om den har startats av ett mail-program eller andra |
21f50183 | 656 | applikationer. |
b1ce6dfb | 657 | |
cc725808 | 658 | Det finns många C-x kommandon. Här är en lista över de du har lärt dig |
b1ce6dfb RS |
659 | hittills: |
660 | ||
18242ac6 MT |
661 | C-x C-f Finn fil |
662 | C-x C-s Spara fil | |
cc725808 | 663 | C-x s Spara några buffertar |
18242ac6 MT |
664 | C-x C-b Lista buffertar |
665 | C-x b Byt buffert | |
666 | C-x C-c Avsluta Emacs | |
cc725808 PE |
667 | C-x 1 Ta bort alla utom ett fönster |
668 | C-x u Ångra | |
669 | ||
670 | Namngivna utvidgade kommandon är kommandon som används mycket sällan | |
671 | eller bara i vissa lägen. Ett exempel på ett sådant kommando är | |
672 | replace-string, som globalt ersätter en teckensträng med en annan. När | |
673 | du skriver M-x kommer Emacs visa en prompt nederst i skärmbilden med | |
674 | M-x där du skall skriva in kommandot du önskar att köra, i det här | |
675 | fallet "replace-string". Det är bara att skriva "repl s<TAB>" och | |
676 | Emacs kommer då att fylla i kommandonamnet. (<TAB> är | |
677 | tabulatortangenten, som vanligtvis finns över CapsLock- eller | |
678 | skifttangenten nära den vänstra kanten på tangentbordet.) Kör | |
28b328aa | 679 | kommandot med <Return>. |
b1ce6dfb | 680 | |
cc725808 PE |
681 | Kommandot replace-string kräver två argument, teckensträngen som skall |
682 | ersättas och teckensträngen som den skall ersättas med. Du måste | |
683 | avsluta bägge argumenten med <Return>. | |
b1ce6dfb | 684 | |
cc725808 PE |
685 | >> Flytta markören till den blanka raden två rader under denna rad. |
686 | Skriv M-x repl s<Return>förändrad<Return>ändrad<Return>. | |
b1ce6dfb | 687 | |
cc725808 PE |
688 | Lägg märke till hur den här raden har blivit förändrad. Du har |
689 | ersatt ordet f-ö-r-ä-n-d-r-a-d med "ändrad" på alla platser där | |
690 | ordet förekom, från markören och nedåt. | |
b1ce6dfb RS |
691 | |
692 | ||
693 | * SPARAUTOMATIK | |
694 | --------------- | |
695 | ||
cc725808 PE |
696 | När du har gjort förändringar i en fil men inte sparat den, så kommer |
697 | ändringarna att gå förlorade om maskinen kraschar. Som ett skydd mot | |
698 | detta sparar Emacs periodiskt ändringarna i en autosparfil för varje | |
699 | fil du redigerar. Denna fil har ett # i början och slutet av | |
700 | filnamnet. Om du till exempel har en fil med namnet "hej.c" så kommer | |
701 | namnet på autosparfilen bli "#hej.c#". När du sparar filen på vanlig | |
702 | sätt kommer Emacs radera autosparfilen. | |
b1ce6dfb | 703 | |
cc725808 PE |
704 | Om maskinen kraschar kan du återfå dina automatiskt sparade ändringar |
705 | genom att finna filen på vanlig sätt (filen du redigerade, inte | |
706 | autosparfilen) och skriva M-x recover-file<Return>. När Emacs vill ha | |
707 | bekräftelse svarar du yes<Return> för att återställa filen. | |
b1ce6dfb RS |
708 | |
709 | ||
cc725808 | 710 | * EKOOMRÅDE |
b1ce6dfb RS |
711 | ----------- |
712 | ||
cc725808 PE |
713 | Om Emacs ser att du skriver kommandon långsamt så kommer de att visas |
714 | på den nedersta raden i skärmbilden i ett område som kallas | |
715 | "ekoområde" (echo area). Detta område innehåller den nedersta raden på | |
716 | skärmbilden. | |
b1ce6dfb RS |
717 | |
718 | ||
cc725808 | 719 | * LÄGESRADEN |
b1ce6dfb RS |
720 | ------------ |
721 | ||
cc725808 PE |
722 | Raden precis över ekoområdet kallas "lägesrad" (mode line). Den ser |
723 | ungefär ut så här: | |
b1ce6dfb | 724 | |
18242ac6 | 725 | --:** TUTORIAL 63% L749 (Fundamental)----------------------- |
b1ce6dfb | 726 | |
cc725808 | 727 | Raden innehåller information om Emacs och texten du redigerar. |
b1ce6dfb | 728 | |
cc725808 | 729 | Du vet redan vad filnamnet betyder, det är den fil du har funnit. NN% |
18242ac6 | 730 | visar den aktuella positionen i texten, dvs. NN procent av texten |
cc725808 PE |
731 | befinner sig över toppen av skärmbilden. Om toppen av filen är i |
732 | skärmbilden kommer det stå "Top" istället för " 0%" och om slutet av | |
733 | filen är i skärmbilden kommer det stå "Bot". Om du ser på en fil där | |
734 | hela texten passar in på en sida kommer det stå "All". | |
735 | ||
736 | Bokstaven L följd av siffror anger positionen på ett annat | |
737 | sätt. Siffrorna visar vilken rad som markören befinner sig på. | |
738 | ||
739 | Stjärnorna nära början av raden visar att det har skett förändringar i | |
740 | filen sedan den sist blev sparad. När du precis har öppnat en fil | |
741 | kommer det inte stå något här, bara minustecken. | |
742 | ||
743 | Den del av lägesraden som står inom parentes visar vilket | |
744 | redigeringsläge (mode) du använder. Standardläget är "Fundamental", | |
745 | som du använder nu. Det är ett exempel på ett huvudläge (major mode). | |
746 | ||
747 | Emacs har många olika huvudlägen. Några av dem är gjorda för | |
748 | redigering av olika programmeringsspråk eller typer av text, till | |
749 | exempel Lisp mode och Text mode. Det kan bara vara ett huvudläge åt | |
750 | gången och lägesnamnet står alltid där det står Fundamental nu. | |
751 | ||
752 | Varje huvudläge gör att en del kommandon uppför sig annorlunda. Det | |
753 | finns till exempel kommandon för att sätta in kommentarer i programkod | |
754 | och eftersom varje programmeringsspråk har sitt sätt att skriva | |
755 | kommentarer på så måste de olika huvudlägena sätta in dessa | |
756 | kommentarer på olika sätt. Varje huvudläge namnger ett utvidgat | |
757 | kommando som används för att byte till det läget. Till exempel är M-x | |
758 | fundamental-mode kommandot för att byta till huvudläget Fundamental. | |
759 | ||
760 | Om du skall redigera text, såsom den här filen, bör du troligen | |
761 | använda Text-läge. | |
b1ce6dfb | 762 | |
21f50183 | 763 | >> Skriv M-x text-mode <Return>. |
b1ce6dfb | 764 | |
cc725808 PE |
765 | Inget av kommandona du har lärt dig hittills förändrar Emacs i någon |
766 | högre grad. Men lägg märke till att M-f och M-b nu behandlar | |
b1ce6dfb RS |
767 | apostrofer som en del av ord. Tidigare, i Fundamental mode, behandlade |
768 | M-f och M-b apostrofer som ordavskiljare. | |
769 | ||
cc725808 PE |
770 | Varje huvudläge gör vanligtvis små förändringar som denna och de flesta |
771 | kommandon gör samma sak i varje huvudläge, de fungerar bara lite | |
b1ce6dfb RS |
772 | annorlunda. |
773 | ||
cc725808 | 774 | För att få fram dokumentationen för det läge du är i nu kan du skriva |
b1ce6dfb RS |
775 | C-h m. |
776 | ||
cc725808 PE |
777 | >> Använd C-l C-l för att få denna rad överst på skärmbilden. |
778 | >> Skriv C-h m och se hur Text-läget skiljer sig från | |
779 | Fundamental-läget. | |
780 | >> Tryck C-x 1 för att ta bort dokumentationen från skärmbilden. | |
781 | ||
782 | Huvudläge kallas så för att det även finns sidolägen (minor mode). | |
783 | Ett sidoläge ersätter inte ett huvudläge, utan modifierar det. Varje | |
784 | sidoläge kan stängas av och på oberoende av andra sidolägen och | |
785 | oberoende av huvudläget. Därför kan du använda ett sidoläge, en | |
786 | kombination av flera sidolägen eller inget sidoläge alls. | |
787 | ||
788 | Ett bra sidoläge, speciellt för redigering av text, är | |
789 | radbrytningsläget (auto-fill-mode). När detta läge är på bryter Emacs | |
790 | rader mellan ord automatisk när du skriver in text så att en rad blir | |
791 | för lång. | |
792 | ||
793 | Du kan slå på radbrytningsläget genom att skriva M-x auto-fill-mode | |
794 | <Return>. När läget är påslaget kan du slå av det igen genom att | |
795 | upprepa M-x auto-fill-mode <Return>. Om läget är avslaget slår | |
796 | kommandot på det och vice versa. Vi säger att kommandot "växlar | |
797 | läget". | |
798 | ||
799 | >> Skriv M-x auto-fill-mode <Return> nu. Skriv så in en rad med | |
800 | "asdf " tills raden delar sig. Du måste sätta in blanktecken, för | |
b1ce6dfb RS |
801 | Auto Fill bryter bara raden mellan ord. |
802 | ||
cc725808 PE |
803 | Marginalen är vanligtvis satt till 70 tecken men du kan ändra detta |
804 | genom att använda kommandot C-x f. Antalet tecken ges till kommandot | |
b1ce6dfb RS |
805 | genom ett numeriskt argument. |
806 | ||
cc725808 PE |
807 | >> Skriv C-x f med ett argument på 20. (C-u 2 0 C-x f). Skriv sedan in |
808 | någon text och lägg märke till att Emacs bryter rader som är längre | |
809 | än 20 tecken. Sätt tillbaka marginalen till 70 tecken igen, genom | |
810 | att använda C-x f en gång till. | |
b1ce6dfb | 811 | |
cc725808 PE |
812 | Om du gör förändringar mitt i en rad så kommer inte sidoläget Auto |
813 | Fill att kunna omformattera raderna för dig. | |
814 | För att göra detta kan du trycka M-q med markören inne i det avsnittet | |
815 | du önskar att omformatera. | |
b1ce6dfb | 816 | |
cc725808 | 817 | >> Flytta markören in i föregående stycke och tryck M-q. |
b1ce6dfb RS |
818 | |
819 | ||
cc725808 | 820 | * SÖKNING |
b1ce6dfb RS |
821 | --------- |
822 | ||
cc725808 PE |
823 | Emacs kan söka efter textsträngar (en "sträng" är en grupp med |
824 | sammanhängande bokstäver) antingen framåt eller bakåt i texten. När du | |
825 | söker efter text kommer markören att flytta sig till nästa plats där | |
826 | teckensträngen uppträder. | |
827 | ||
828 | Sökmetoden i Emacs är inkrementell. Detta betyder att sökandet fortgår | |
829 | medan du skriver in teckensträngen du skall söka efter. | |
830 | ||
831 | Kommandot för att inleda en sökning är C-s för att söka framåt och C-r | |
832 | för att söka bakåt. MEN VÄNTA! Prova dem inte än. | |
833 | ||
834 | När du skriver C-s kommer du lägga märke till att texten "I-search" | |
835 | dyker upp i eko-området. Detta säger dig att Emacs är inne i sidoläget | |
836 | inkrementell sökning och väntar på att du skall skriva in det du letar | |
837 | efter. <Return> avslutar sökandet. | |
838 | ||
839 | >> Skriv nu C-s för att starta en sökning. Skriv nu långsamt, en | |
840 | bokstav i taget, ordet 'markör', och gör en paus efter varje gång | |
841 | du skriver en bokstav så att du ser vad som sker med markören. Nu | |
842 | har du sökt efter ordet "markör" en gång. | |
843 | >> Skriv C-s en gång till för att söka efter nästa förekomst av ordet | |
844 | "markör". | |
845 | >> Tryck nu på <DEL> fyra gånger och se hur markören flyttar sig | |
846 | >> Tryck <Return> för att avsluta sökandet. | |
847 | ||
848 | Såg du vad som hände? Under inkrementell sökning försöker Emacs att gå | |
849 | till den första förekomsten av texten som du har skrivit så långt, och | |
850 | markerar träffen så att du ser var den är. För att gå till nästa | |
851 | förekomst av ordet 'markör' är det bara att trycka C-s en gång till. | |
852 | Om det inte finns flera förekomster kommer Emacs att pipa och meddela | |
853 | att sökandet har misslyckats. C-g avbryter också sökandet. | |
854 | ||
855 | Om du är inne i en inkrementell sökning och trycker <DEL> kommer den | |
856 | sökningen att återgå till en tidigare plats. Om du skriver <DEL> | |
857 | precis efter att du skrivit C-s för att gå till nästa förekomst av | |
858 | söksträngen, kommer <DEL> att flytta markören tillbaka till en | |
859 | tidigare förekomst. Om det inte finns några tidigare förekomster så | |
860 | raderar <DEL> sista tecknet i söksträngen. Om du till exempel skriver | |
861 | "m" för att söka efter den första förekomsten av "m", och sedan | |
862 | trycker "a" så kommer markören flytta sig till första förekomsten av | |
863 | "ma". Tryck nu <DEL>. Detta avlägsnar "a" från söksträngen, och | |
864 | markören flyttar sig tillbaka till den första förekomsten av "m". | |
865 | ||
866 | Om du är mitt i en sökning och trycker ett kontroll- eller meta-tecken | |
867 | så avbryts sökandet. Undantag är tecken som används under sökningen, | |
868 | så som C-s och C-r. | |
869 | ||
870 | C-s startar en sökning som letar efter varje förekomst av söksträngen | |
871 | EFTER markörspositionen. Om du skall söka efter en sträng tidigare i | |
872 | texten måste du använda C-r. Allt vi har sagt om C-s gäller också för | |
873 | C-r, bortsett från att riktningen på sökningen är den omvända. | |
874 | ||
875 | ||
876 | * FLERA FÖNSTER | |
b1ce6dfb RS |
877 | --------------- |
878 | ||
cc725808 PE |
879 | En av egenskaperna hos Emacs är att den kan visa mera än en buffert på |
880 | skärmen samtidig. (Notera att Emacs använder termen "ramar" | |
881 | (frames), som beskrivs i nästa kapitel, för det som en del andra | |
882 | program kallar för "fönster" (windows). Emacs-manualen innehåller en | |
883 | ordlista över Emacs-termer. | |
b1ce6dfb | 884 | |
cc725808 | 885 | >> Flytta markören till den här raden och tryck C-l C-l. |
b1ce6dfb | 886 | |
cc725808 PE |
887 | >> Skriv nu C-x 2, som leder till att skärmen delas i två |
888 | fönster. Bägge fönstren visar den här vägledningen. | |
889 | Redigeringsmarkören stannar i det övre fönstret. | |
b1ce6dfb | 890 | |
cc725808 | 891 | >> Skriv C-M-v för att rulla det nedre fönstret. |
18242ac6 | 892 | (Om du inte har META-tangenten trycker du <ESC> C-v.) |
b1ce6dfb | 893 | |
cc725808 PE |
894 | >> Skriv C-x o ("o" för "other") för att flytta markören till det |
895 | nedre fönstret. | |
896 | >> Använd C-v och M-v i det nedre fönstret för att flytta upp | |
897 | och ned i texten. Fortsätt att läsa den här texten i det övre | |
898 | fönstret. | |
b1ce6dfb | 899 | |
cc725808 PE |
900 | >> Skriv C-x o igen för att flytta markören tillbaka till det övre |
901 | fönstret. Markören i det övre fönstret står på samma plats som det | |
902 | gjorde när du lämnade det. | |
b1ce6dfb | 903 | |
cc725808 PE |
904 | Du kan fortsätta att använda C-x o för att byta mellan de två |
905 | fönstren. Det valda fönstret, där de flesta redigeringarna äger rum, är | |
906 | det med den tydligaste markören, som blinkar när du inte skriver. De | |
907 | andra fönstren har sin egen markörposition. Om du kör Emacs under ett | |
908 | fönstersystem, ritas dessa markörer som en tom ruta som inte blinkar.. | |
b1ce6dfb | 909 | |
cc725808 PE |
910 | Kommandot C-M-v är bra när du redigerar text i ett fönster och |
911 | använder det andra fönstret för referenser. Utan att lämna det valda | |
912 | fönstret du kan använda C-M-v för att rulla det andra fönstret. | |
b1ce6dfb | 913 | |
cc725808 PE |
914 | C-M-v är ett exempel på en KONTROLL-META-kombination. Om du har META- |
915 | eller Alt-tangenten håller du både KONTROLL och META nedtryckt | |
21f50183 | 916 | samtidigt som du trycker v. Det har ingen betydelse vilken av |
cc725808 | 917 | tangenterna KONTROLL och META som trycks först, för bägge fungerar så |
21f50183 | 918 | att de "modifierar" de andra tangenterna du trycker. |
b1ce6dfb | 919 | |
cc725808 PE |
920 | Om du inte har META-tangenten och använder <ESC> istället är |
921 | ordningsföljden viktig. Du måste trycka <ESC> följt av KONTROLL-v, | |
922 | KONTROLL-<ESC> v fungerar inte. Det är för att <ESC> är ett tecken i | |
923 | sig och inte en äkta "modifierare". | |
b1ce6dfb | 924 | |
cc725808 PE |
925 | >> Skriv C-x 1 i det övre fönstret för att bli kvitt det nedre |
926 | fönstret. | |
b1ce6dfb | 927 | |
cc725808 PE |
928 | Om du hade skrivit C-x 1 i det nedre fönstret skulle det övre ha |
929 | försvunnit. Tänk på detta kommando som "Behåll bara ett fönster, det | |
930 | som markören står i." | |
b1ce6dfb | 931 | |
cc725808 PE |
932 | Du måste inte ha samma buffert i bägge fönstren. Du kan använda C-x |
933 | C-f för att finna en ny fil i ett av fönstren samtidigt som det andra | |
934 | fönstret förblir oförändrat. Du kommer att märka att fönstren är helt | |
b1ce6dfb RS |
935 | oberoende. |
936 | ||
cc725808 | 937 | Här är ett annat sätt att använda två fönster till att visa två olika |
b1ce6dfb RS |
938 | filer: |
939 | ||
cc725808 PE |
940 | >> Skriv C-x 4 C-f följt av ett filnamn. Avsluta med <Return>. |
941 | Den nya filen kommer då att dyka upp i det nedre fönstret. | |
942 | Markören flyttats också dit. | |
b1ce6dfb | 943 | |
cc725808 PE |
944 | >> Skriv C-x o för att gå tillbaka till det övre fönstret och C-x |
945 | 1 för att bli kvitt det nedre igen. | |
b1ce6dfb | 946 | |
21f50183 ML |
947 | * MULTIPLA RAMAR |
948 | ---------------- | |
949 | ||
cc725808 PE |
950 | Emacs kan också skapa flera "ramar". En ram är vad vi kallar en |
951 | samling av fönster tillsammans med menyer, rullningslister, ekoområde | |
952 | etc. Det som Emacs kallar för ram kallar de flesta andra program för | |
953 | fönster. Flera grafiska ramar kan visas på skärmen samtidigt. På en | |
954 | textterminal kan bara en ram visas åt gången. | |
21f50183 ML |
955 | |
956 | >> Skriv M-x make-frame <Return>. | |
cc725808 | 957 | En ny ram visas på din skärm. |
21f50183 | 958 | |
cc725808 PE |
959 | Du kan göra allt du gjorde i den första ramen i den här nya ramen. Det |
960 | finns inget speciellt med den första ramen. | |
21f50183 ML |
961 | |
962 | >> Skriv M-x delete-frame <Return>. | |
963 | Ta bort den valda ramen. | |
964 | ||
cc725808 PE |
965 | Du kan också ta bort ramen genom den vanliga metod som tillhandahålls |
966 | av fönstersystemet (ofta klickar man på knappen med symbolen "X" i | |
967 | något av de övre hörnen.) Om den sista ramen tas bort på det här | |
968 | sättet så avlutas Emacs. | |
b1ce6dfb | 969 | |
cc725808 | 970 | * REKURSIVA REDIGERINGSNIVÅER |
b1ce6dfb RS |
971 | ----------------------------- |
972 | ||
cc725808 | 973 | Ibland kan du hamna i något som kallas "rekursiv redigering" |
b1ce6dfb | 974 | (recursive editing level). Detta indikeras med hakparenteser runt |
cc725808 PE |
975 | huvudläget i lägesraden. Till exempel kan det stå [(Fundamental)] |
976 | istället för (Fundamental). | |
b1ce6dfb | 977 | |
cc725808 PE |
978 | För att komma ur rekursiv redigering trycker du <ESC> <ESC> <ESC>. |
979 | Detta är ett generellt brytkommando. Du kan också använda det för att | |
980 | bli kvitt extra fönster och för att komma ut ur minibufferten. | |
b1ce6dfb | 981 | |
cc725808 PE |
982 | >> Skriv M-x för att komma in i minibufferten. Skriv så <ESC> <ESC> |
983 | <ESC> för att komma ut. | |
b1ce6dfb | 984 | |
cc725808 PE |
985 | Du kan inte använda C-g för att komma ut ur rekursiv redigering. |
986 | Detta är för att C-g används för att avbryta kommandon och argument | |
b1ce6dfb RS |
987 | under rekursiv redigering. |
988 | ||
989 | ||
cc725808 | 990 | * MER HJÄLP |
b1ce6dfb RS |
991 | ----------- |
992 | ||
cc725808 PE |
993 | I denna vägledning har vi försökt inkludera precis så mycket |
994 | information att du kan börja använda Emacs. Det finns så många | |
995 | möjligheter i Emacs att det skulle vara omöjligt att förklara alla | |
996 | här. Men du VILL säkert lära dig mer om Emacs eftersom den har många | |
997 | goda egenskaper. Emacs tillhandahåller kommandon för att läsa all | |
998 | dokumentation. Dessa hjälpkommandon startas med teckenkombinationen | |
b1ce6dfb RS |
999 | C-h. |
1000 | ||
cc725808 PE |
1001 | För att använda hjälpen skriver du C-h följt av ett tecken för den |
1002 | hjälp du behöver. Om du verkligen är helt villrådig kan du trycka C-h | |
1003 | ? för att Emacs skall visa vilken hjälp som finns tillgänglig. Om du | |
1004 | har skrivit C-h och bestämmer dig för att du inte behöver ha någon | |
1005 | hjälp kan du trycka C-g för att avbryta. | |
b1ce6dfb | 1006 | |
cc725808 PE |
1007 | (Om C-h inte visar ett hjälpmeddelande längst ner på skärmen, kan du i |
1008 | stället försöka med funktionstangenten F1 eller M-x help <Return>.) | |
b1ce6dfb | 1009 | |
cc725808 PE |
1010 | Den mest grundläggande hjälp-funktionen är C-h c. Skriv C-h, ett "c" |
1011 | och en knappsekvens. Emacs ger då en beskrivning av kommandot. | |
b1ce6dfb RS |
1012 | |
1013 | >> Skriv C-h c C-p. | |
18242ac6 | 1014 | |
cc725808 | 1015 | Meddelandet skall då bli något i stil med: |
b1ce6dfb RS |
1016 | |
1017 | C-p runs the command previous-line | |
1018 | ||
cc725808 PE |
1019 | Detta ger dig namnet på funktionen. Eftersom funktionerna har |
1020 | beskrivande namn kan de också fungera som en enkel dokumentation, | |
1021 | tillräckligt för att påminna dig om kommandon du redan lärt dig. | |
b1ce6dfb | 1022 | |
cc725808 PE |
1023 | Flerteckenskommandon, så som C-x C-s och (om du inte har META, EDIT |
1024 | eller ALT tangenten) <ESC> v, är också tillåtna efter C-h c. | |
b1ce6dfb | 1025 | |
cc725808 PE |
1026 | För att få mer information om ett kommando kan du använda C-h k |
1027 | istället för C-h c. | |
b1ce6dfb RS |
1028 | |
1029 | >> Skriv C-h k C-p. | |
1030 | ||
1031 | Detta kommer visa funktionens dokumentation och namn i ett eget | |
cc725808 PE |
1032 | fönster. För att avsluta hjälpfönstret kan du trycka C-x 1. Du behöver |
1033 | inte göra det omedelbart. Du kan editera med hjälptexten som stöd för | |
1034 | att först senare ta bort fönstret med C-x 1. | |
b1ce6dfb | 1035 | |
cc725808 | 1036 | Här är fler varianter på C-h: |
b1ce6dfb RS |
1037 | |
1038 | C-h f Beskriv en funktion. Du skriver in funktionsnamnet. | |
1039 | ||
1040 | >> Prova att skriva C-h f previous-line<Return>. | |
1041 | Detta ger den information Emacs har om funktionen | |
1042 | som implementerar kommandot C-p. | |
1043 | ||
cc725808 PE |
1044 | Ett liknande kommando, C-h v, visar dokumentationen för de variabler |
1045 | som du kan ändra värde på för att anpassa Emacs beteende. Du måste | |
1046 | ange namnet på variabeln när Emacs frågar efter den. | |
28b328aa | 1047 | |
cc725808 | 1048 | C-h a Kommando-apropå (Command Apropos). Skriv in ett |
b1ce6dfb | 1049 | nyckelord och Emacs listar all kommandon vars namn |
cc725808 PE |
1050 | innehåller det nyckelordet. Alla dessa |
1051 | kommandon kan aktiveras med META-x. För några | |
1052 | kommandon listas också de kombinationer bestående av | |
1053 | en eller två tecken som kör det kommandot. | |
b1ce6dfb RS |
1054 | |
1055 | >> Skriv C-h a file<Return>. | |
1056 | ||
cc725808 PE |
1057 | Detta visar i ett annat fönster en lista över alla M-x kommandon där |
1058 | "file" förekommer i kommandonamnet. Du kommer se teckenkommandon som | |
b1ce6dfb RS |
1059 | C-x C-f listade bredvid motsvarande kommandonamn, t.ex. find-file. |
1060 | ||
cc725808 PE |
1061 | >> Tryck C-M-v för att rulla texten i hjälpfönstret. Gör det några |
1062 | gånger. | |
b1ce6dfb | 1063 | |
cc725808 | 1064 | >> Type C-x 1 för att ta bort hjälpfönstret. |
b1ce6dfb | 1065 | |
cc725808 | 1066 | C-h i Läs den bifogade manualen (alias Info). Detta kommando |
28b328aa | 1067 | placerar dig i en speciell buffer vid namn "*info*" |
cc725808 PE |
1068 | där du kan läsa hjälpen för de paket som är |
1069 | installerade i ditt system. Slå m emacs <Return> för | |
1070 | att läsa Emacs-manualen. Om du aldrig tidigare har | |
1071 | använt dig av Info, skriv ? och Emacs tar dig på en | |
1072 | guidad tur över Infolägets (Info-mode) möjligheter. | |
1073 | När du väl har tagit dig igenom den här | |
1074 | användarhandledningen så är det direktmanualen som är | |
1075 | din huvudsakliga källa till dokumentation. | |
28b328aa | 1076 | |
b1ce6dfb | 1077 | |
18242ac6 MT |
1078 | * MER FUNKTIONER |
1079 | ---------------- | |
1080 | ||
cc725808 PE |
1081 | Du kan lära dig mer om Emacs genom att läsa dess manual, antingen i |
1082 | bokform eller on-line i Info (använd Hjälp-menyn eller skriv F10 h r). | |
1083 | Två finesser som du kan komma att gilla speciellt är komplettering | |
1084 | (completion), som spar tangenttryckningar, och dired, som förenklar | |
18242ac6 MT |
1085 | filhantering. |
1086 | ||
cc725808 | 1087 | Komplettering är ett sätt att undvika onödiga tangenttryckningar. Till |
18242ac6 | 1088 | exempel, om du vill byta till *Messages* bufferten, kan du du skriva |
cc725808 PE |
1089 | C-x b *M<Tab> och Emacs kommer fylla i resten av buffertnamnet så |
1090 | långt den kan räkna ut det från det du redan skrivit. Komplettering | |
18242ac6 MT |
1091 | finns beskrivet i Emacs-manualen i noden "Completion". |
1092 | ||
cc725808 PE |
1093 | Dired gör det möjligt att lista filer i en katalog (och även dess |
1094 | subkataloger), flytta runt i listan, besöka, byta namn, ta bort och | |
1095 | operera på olika sätt på filerna. Dired finns beskrivet i Info i | |
18242ac6 MT |
1096 | Emacs-manualen i noden "Dired". |
1097 | ||
cc725808 | 1098 | Manualen beskriver även många andra Emacs funktioner. |
18242ac6 | 1099 | |
21f50183 ML |
1100 | * SLUTORD |
1101 | --------- | |
1102 | ||
cc725808 | 1103 | För att avsluta Emacs använd C-x C-c. |
21f50183 | 1104 | |
cc725808 PE |
1105 | Den här handledningen är tänkt att vara förståelig för alla nya |
1106 | Emacs-användare. Så om det är något som är oklart, klandra inte dig | |
1107 | själv, klaga! | |
21f50183 | 1108 | |
18242ac6 | 1109 | |
b1ce6dfb RS |
1110 | * KOPIERING |
1111 | ----------- | |
1112 | ||
cc725808 PE |
1113 | Denna vägledning härstammar från en hel rad Emacs-vägledningar och den |
1114 | första skrevs av Stuart Cracraft för den ursprungliga Emacs. Mats | |
1115 | Lidell översatte den till Svenska. | |
b1ce6dfb RS |
1116 | |
1117 | This version of the tutorial, like GNU Emacs, is copyrighted, and | |
1118 | comes with permission to distribute copies on certain conditions: | |
1119 | ||
ab422c4d | 1120 | Copyright (C) 1985, 1996, 1998, 2001-2013 Free Software Foundation, Inc. |
b1ce6dfb | 1121 | |
21f50183 | 1122 | This file is part of GNU Emacs. |
b1ce6dfb | 1123 | |
21f50183 ML |
1124 | GNU Emacs is free software: you can redistribute it and/or modify |
1125 | it under the terms of the GNU General Public License as published by | |
1126 | the Free Software Foundation, either version 3 of the License, or | |
1127 | (at your option) any later version. | |
b1ce6dfb | 1128 | |
21f50183 ML |
1129 | GNU Emacs is distributed in the hope that it will be useful, |
1130 | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
1131 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
1132 | GNU General Public License for more details. | |
1133 | ||
1134 | You should have received a copy of the GNU General Public License | |
1135 | along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. | |
1136 | ||
1137 | Please read the file COPYING and then do give copies of GNU Emacs to | |
1138 | your friends. Help stamp out software obstructionism ("ownership") by | |
1139 | using, writing, and sharing free software! | |
ab5796a9 | 1140 | |
45d3ac97 | 1141 | ;;; Local Variables: |
cc725808 | 1142 | ;;; coding: utf-8 |
45d3ac97 JL |
1143 | ;;; sentence-end-double-space: nil |
1144 | ;;; End: |