## Kapittel 13. Skriva programtillegg

## 1. Programtillegg

### 1.1. Innleiing

Ein av fordelane med GIMP er at det er lett å utvida funksjonane ved hjelp av såkalla programtillegg (engelsk: «Plugins»). Programtillegga samarbeidar svært nær med GIMP, men det er GIMP som har kontrollen med dei. Ofte gjer ikkje programtillegga anna enn det du også kan gjera direkte, men på ein for deg enklare måte. Den store fordelen med desse programma, er at det er lett å lage tilleggsfunksjonar utan å måtta gjera endringar i det nokså kompliserte programmet GIMP er. Mange verdfulle programtillegg har ei kjeldekode på berre 100 - 200 linjer. Dei fleste er skrivne i språket «C» eller ein variant av dette.

Fleire titals programtillegg er inkluderte i grunnutgåva av GIMP, og vert automatisk installerte saman med GIMP. Dei fleste av desse er tilgjengelege gjennom menyen Filter. (Alt i denne menyen er faktisk programtillegg). Ein del av programtillegga er likevel plasserte i andre menyar. Som oftast merkar du ikkje at funksjonen du nyttar deg av er eit tillegg. For eksempel er funksjonen «Normaliser» for automatisk fargekorreksjon eigentleg eit programtillegg, men det er ingenting i måten det arbeidar på som røper dette. Også import og eksport av bilete vert utført av programtillegg.

Alle kan skriva eit programtillegg for bruk i GIMP og gjera det tilgjengeleg på nettet. Det finst mange brukbare programtillegg som er tilgjengelege slik. Nokre av dei er omtalte i denne handboka.

Med dette gratis tilgjenget følgjer det også ein viss grad av risiko. Det faktum at kven som helst kan gje ut programtillegg betyr at det ikkje er nokon effektiv kvalitetskontroll. Programtillegga som er distribuerte saman med GIMP er testa og justerte av utviklarane. Andre programtillegg tilgjengeleg på nettet, kan ha vorte snikra saman i løpet av nokre timar og deretter gløymde. Nokre av utviklarane bryr seg ikkje om programmet er robust og sjølv for dei som gjer det, er evnene deira til å testa på ei rad system i mange situasjonar ofte ganske avgrensa. Når du lastar ned eit programtillegg får du i utgangspunktet noko gratis og andre gonger nett det du betalar for. Dette er ikkje skrive for å ta motet frå deg, men for å vera sikker på at du forstår at ikkje alle programtillegga som er tilgjengelege på nettet vil levera det du ventar av dei.

| Åtvaring
Sidan programtillegga er fullverdige program, kan dei gjera alt det andre slike program kan gjera. Dette omfattar også funksjonar som kan påverka tryggleiken til maskinen din. Ikkje installer eit programtillegg utan at du er nokså sikker på at det kjem frå ei truverdig kjelde.

| Notat
GIMP 3.0 måtte endra programtillegga i API mange stader. På grunn av dette må programtillegg skrive for eldre versjonar oppdaterast. Dei vil ikkje verka utan å endrast.

### 1.2. Å bruka programtillegg

Oftast vil du kunna bruka eit programtillegg i GIMP utan å bry deg om eller merka at det eigentleg er eit tillegg. Det er likevel nokre småting med programtillegga som det kan vera nyttig å kjenna litt til.

Som oftast er programtillegga ikkje like robuste som programkjerna i GIMP. Når GIMP krasjar, må du vurdera ein seriøs ting: det kan kosta brukaren mykje trøbbel og hovudverk. Når eit programtillegg krasjar, er som oftast konsekvensane ikkje så alvorlege. I dei fleste tilfelle kan du arbeida vidare med GIMP utan å bry deg meir om heile krasjet.

| Notat
Fordi programtillegga er sjølvstendige program, kommuniserer dei med GIMP via det utviklarane kallar «talking over a wire». Når eit programtillegg krasjar, bryt dette sambandet saman, og det vil dukka opp ei feilmelding om «wire read error» eller noko i den duren.

| Tips
Når eit programtillegg krasjar, dukkar det opp ei illevarslande melding frå GIMP om at programtillegget kan ha øydelagt GIMP. Du får beskjed om å lagra alt du held på med og avslutta GIMP. Dette kan i teorien vera heilt rett. Programtillegga er i stand til å endra nesten kva det skal vera i GIMP. Praktisk røynsle har derimot vist at det er sjeldan at programtillegga gjer nemnande skade. Som oftast kan du halda fram som om ingenting var hendt. Kanskje etter å ha vurdert kva du taper dersom programmet likevel skulle vera øydelagt og arbeidet ditt forsvinna.

På grunn av den måten programtillegga kommuniserer med GIMP på, har dei ingen måte å få greie på endringar du har gjort i biletet etter at programtillegget har starta. Gjer du forandringar på eit bilete medan eit programtillegg er i arbeid, vil dette ofte føra til at programtillegget krasjar og etterlet seg eit noko forvirrande bilete. Du bør difor unngå å køyra meir enn eitt programtillegg om gongen, og unngå å gjera noko som helst med biletet før programtillegget er ferdig. Dersom du ikkje følgjer dette rådet, er det stor sjanse for at du endar opp med eit øydelagt bilete i tillegg til at også angreloggen er øydelagt. Du kan altså heller ikkje tilbakeføra biletet til slik det var før krasjet. Kanskje lurt å lagra biletet før du brukar programtillegget.

### 1.3. Å installera nye programtillegg

Programtillegg som vert leverte saman med GIMP krev ikkje installasjon. Programtillegg som du sjølv lastar ned må derimot installerast. Til vanleg er standardplasseringa i GIMPsin brukarkatalog i ei mappe under `/plug-ins`, der mappenamnet må vera det same som filnamnet til programtillegget. Du kan finna standardplasseringane der GIMP søkjer etter programtillegga i Datamappe-preferansane. Der kan du også leggja til nye plasseringar der GIMP skal sjå etter programtillegg. Det er fleire scenarier, avhengig av kva operativsystem du brukar og korleis programtillegget er strukturert.

#### 1.3.1. Linux / Unix-liknande system

Dei fleste programtillegga kan delast i to grupper, dei små med kjeldekoden levert i ei enkelt .c-fil, og dei større der kjeldekoden kjem i ei mappe med fleire ulike filer, deriblant også ei `Makefile`.

For a simple one-file plug-in, call it `borker.c`, installing it is just a matter of running the command gimptool-3.0 --install borker.c. This command compiles the plug-in and installs it in your personal plug-in directory, `~/gimp-3.0/plug-ins` unless you have changed it. This will cause it to be loaded automatically the next time you start GIMP. You don't need to be root to do these things; in fact, you shouldn't be. If the plug-in fails to compile, well, be creative.

#### 1.3.2. Windows

Dei fleste programtillegga for bruk i GIMP på Windows vert leverte anten med eit installasjonsprogram eller kan lastast ned ferdigkompilerte som kan leggjast direkte inn i ei mappe som vert funnen av GIMP.

Viss eit installasjonsprogram er tilgjengeleg, skal dette gjera heile arbeidet og kopiera alle relevante filer. Viss ikkje, må du kontrollera innstillingane for kva mappe programtillegget skal leggjast i slik at GIMP finn det. Hugs at kvart programtillegg må vera i si eiga mappe med same namnet som programtillegget.

#### 1.3.3. Apple Mac OS X

Måten å installera programtillegg på OS X er avhengig av korleis du installerte GIMP. Dersom du er ein av dei modige typane som installerte GIMP frå ei av pakkane [DARWINPORTS] eller darwinports, [FINK], vil du kunne installera pakkane slik dei er omtalte for Linux. Einaste skilnaden kan vera at eit par av programtillegga også kan vera tilgjengelege frå filmappene til pakkehandsamaren. Prøv det ut.

Dersom du i staden har brukt ei ferdigbygd GIMP-pakke som t.d. GIMP.app, må du truleg halda deg til den pakka du brukte. Du kan kanskje få ein ferdigbygd versjon av draumeprogrammet frå utviklaren av programtillegget dersom du er heldig. Skal du byggja dine eigne binærfiler, må du installere GIMP ved hjelp av pakkehandsamarene nemnde ovanfor.

#### 1.3.4. Slik køyrer du eit installert programtillegg

Korleis slå på programtillegget etter at du har installert det? Kva meny det legg seg i, vert bestemt av programtillegget. Du må difor sjå i dokumentasjonen for programtillegget, dersom denne finst, eller finna fram til ei beskriving i dei ulike menyvala i hovudmenyen eller prøva kommandosøket / i GIMP og skriva inn namnet på programtillegget. Viss du veit korleis du skal lesa kjeldekode, kan du også sjå der for å sjå kva meny programmet legg seg i.

For meir komplekse programtillegg skal det ein eller annan stad i mappa finnast ei `INSTALL-` eller `README-`fil med nødvendige instruksjonar. Dersom du ikkje finn desse forklaringane, er det betre å gi blaffen i heile programmet. Ein kode som er skriven heilt utan omtanke for andre brukarar, vil ofte vera svært frustrerande uansett.

Har du eit programtillegg i den private mappa di med same namnet som eit anna programtillegg i hovudmappa, vert berre programmet i hovudmappa lasta inn. Kvar gong du opnar GIMP, vil du få melding om at det finst fleire program med same namnet. Dette bør du sjølvsagt unngå.

### 1.4. Å skriva programtillegg

Har du ønskje om å lære å skriva programtillegg, kan du finna mykje hjelp (på engelsk) på utviklingssidene til GIMP[GIMP-DEV-PLUGIN]. GIMP er eit nokså komplisert program, men utviklarane har lagt mykje arbeid i å flate ut læringskurva for å laga programtillegg. Du finn fyldige instruksjonar og gode eksempel på dei nemnde sidene. Hovudbiblioteket («libgimp») som programtillegga nyttar for å kommunisera med GIMP, har ein veldokumentert API. Ein mykje brukt måte for å læra seg programmeringa, er å modifisera eksisterande program. Dyktige programmerarar er dermed ofte i stand til å laga svært så interessante ting berre etter eit par netters arbeid.

3. Personleg startskjerm |  | 2. Å bruka Script-Fu

Report a bug in GIMP Report a documentation error