Cap. 13. Scripting
| Parte II. How do I Become a GIMP Wizard? |

## Cap. 13. Scripting

## 1. Module

### 1.1. Introducere

Unul dintre cele mai frumoase aspecte ale GIMP este cât de ușor îi poate fi extinsă funcționalitatea, prin utilizarea de module. Modulele GIMP sunt programe externe care sunt executate sub controlul aplicației principale GIMP realizate să interacționeze cu ea foarte îndeaproape. Modulele pot manipula imagini în aproape orice mod dorit de utilizator. Avantajul lor este că este mult mai simplă adăugarea unei capabilități noi la GIMP prin scrierea unui modul mic decât prin modificarea masei imense de cod complex care o reprezintă nucleul GIMP. Multe module valoroase au sursă cod C de aproximativ 100-200 linii.

Mai multe zeci de module sunt incluse în distribuția principală GIMP, și instalate în mod automat, împreună cu GIMP. Cele mai multe dintre ele pot fi accesate prin meniul Filtre (de fapt, tot ce este în acest meniu este un modul), dar un număr dintre ele sunt situate în alte meniuri. În multe cazuri, le puteți utiliza fără a realiza vreodată că sunt module: de exemplu, funcția "normalizare" de corecție automată de culoare este de fapt un modul, deși nimic din modul în care funcționează ar spune acest lucru.

Oricine din lume poate scrie un modul GIMP și să-l facă disponibil pe web, fie prin intermediul registrului sau printr-un site web personal, și multe module foarte valoroase pot fi obținute în acest fel. Unele sunt descrise în altă parte în manualul utilizatorului. Împreună cu această libertate față de restricții vine și un anumit grad de risc, totuși: faptul că oricine poate face acest lucru înseamnă că nu există nici un control eficient de calitate. Modulele distribuite cu GIMP au fost testate și ajustate de către dezvoltatori, dar multe pe care le puteți descărca au fost doar hack'erite în vreo câteva ore și apoi aruncate în vânt. Unor creatori de module nu le pasă de robustețe, și chiar celora care le pasă poate că nu au capacitatea de a testa pe o varietate de sisteme într-o varietate de situații. Practic, atunci când descărcați un modul, ca orice lucru obținut gratuit, uneori face exact cât ați plătit. Acest lucru nu este spus în încercarea de a vă descuraja, ci doar pentru a vă asigura că înțelegeți realitatea.

| Avertisment
Modulele, fiind programe cu drepturi de executare depline, pot face oricare dintre lucrurile pe care orice alt program le poate face, inclusiv a instala portale obscure pe sistemul dumneavoastră sau altfel compromite securitatea acestuia. Nu instalați un modul cu excepția cazului în care provine dintr-o sursă de încredere.

| Atenție
Modulele au fost o funcționalitate în GIMP pentru mai multe versiuni. Cu toate acestea, modulele scrise pentru o versiune de GIMP pot fi cu greu vreodată folosite cu succes pe alte versiuni. Este nevoie să fie portate: uneori, acest lucru este ușor, uneori nu. Multe module sunt deja disponibile în mai multe versiuni. În orice caz: înainte de a încerca să instalați un modul, asigurați-vă că este scris pentru versiunea curentă de GIMP.

### 1.2. Utilizarea modulelor

Pentru cea mai mare parte puteți utiliza un modul ca orice alt instrument GIMP, fără a fi nevoie să fiți conștienți de faptul că acesta este un modul. Dar există și câteva lucruri despre module care sunt utile să le înțelegeți.

Unul este că modulele nu sunt, în general, la fel de robuste ca Nucleul GIMP. Când GIMP crapă, este considerat un lucru foarte grav: poate costa utilizatorului o mulțime de probleme și dureri de cap. Atunci când avem un incident cu module, consecințele sunt, de obicei, mai puțin grave. În cele mai multe cazuri, puteți continua lucrul, fără alte griji.

| Notă
Deoarece modulele sunt programe separate, ele comunica cu Nucleul GIMP într-un mod special: dezvoltatorii GIMPo numesc „vorbire pe fir”. Atunci când un modul crapă, comunicarea se destramă, și veți vedea un mesaj de eroare despre o „eroare de citire pe fir”.

| Indicație
Atunci când un modul crapă, GIMP vă oferă un mesaj nefavorabil care vă spune că modulul poate că a lăsat GIMP într-o stare coruptă, și ar trebui să luați în considerare salvarea imaginilor și ieșirea. Strict vorbind, acest lucru este destul de corect, deoarece modulele au puterea de a modifica aproape orice în GIMP, dar pentru scopuri practice, experiența a arătat că coruperea este de fapt destul de rară, și mulți utilizatori doar continuă să lucreze fără griji. Sfatul nostru este ca pur și simplu să vă gândiți la cât de multe probleme ar provoca dacă ceva a mers prost, și să cântăriți probabilitățile.

Din cauza modului în care modulele comunică cu GIMP, nu există niciun mecanism de informare despre modificările pe care le face asupra unei imagini, după ce modulul a început să execuția. Dacă porniți un modul, și apoi modificați imaginea folosind un alt instrument, modulul va eșua de multe ori, atunci când nu va da, de regulă, un rezultat eronat. Ar trebui să se evite rularea mai multor module la un moment dat pe o imagine, și a nu se efectua nimic asupra imaginii până când modulul și-a terminat lucrul. Dacă ignorați acest sfat, nu numai că veți șifona, probabil, imaginea, dar foarte probabil și sistemul de anulare, de asemenea, astfel încât chiar nu va mai exista posibilitatea de a recupera prostia făcută.

### 1.3. Instalarea de noi module

Modulele care sunt distribuite cu GIMP nu necesită nici o instalare specială. Trebuie însă pentru module pe care le descărcați singuri. Există mai multe scenarii, în funcție de ce sistemul de operare pe care îl utilizați și modul în care modulul este structurat. În Linux este, de obicei destul de ușor a instala un modul nou; în Windows, este fie ușor sau foarte greu. În orice caz, cele două mai bine sunt luate în considerare separat.

#### 1.3.1. Sisteme din familia Linux/Unix

Cele mai multe module se încadrează în două categorii: cele mici ale căror cod sursă este distribuit ca un singur fișier. c, și cele mai mari ale căror cod sursă este distribuit ca un director care conține mai multe fișiere, inclusiv un `Makefile`.

Pentru un modul cu un singur fișier, să-i zicem `borker. c`, instalarea este doar o chestiune de rulare a comenzii gimptool-2.0 --install borker.c.Această comandă compilează modulul și-l instalează în directorul de module personal, `~/gimp-2.4/plugins`cu excepția cazului în care l-ați modificat. Acest lucru va conduce la încărcarea automată data viitoare când porniți GIMP. Nu trebuie să fiți utilizatorul root pentru a face aceste lucruri; de fapt, chiar este bine să nu fiți. În cazul în care nu reușiți să compilați modulul, ei bine, va trebui să fiți creativ.

Odată ce ați instalat modulul, cum se activează? Calea din meniu este determinată de modulul în sine, astfel încât să răspundeți la aceasta aveți nevoie să fie să parcurgeți documentația modulului (în cazul în care există), sau prin lansare dialogului descriere (de la Xtns/detalii modul) prin căutarea modulului după nume în tabul Vizualizare arborescentă. Dacă tot nu găsiți, explorați în cele din urmă meniurile sau priviți în codul sursă din secțiunea Register--oricare dintre variante este mai ușoară.

Pentru module mai complexe, organizate ca un director cu mai multe fișiere, ar trebui să existe un fișier în interiorul numit fie `INSTALL` ori `README`, cu instrucțiuni. Dacă nu este, cel mai bun sfat este de a arunca modulul la coșul de gunoi și petreceți timpul cu altceva: orice cod scris cu atât de puțină grijă pentru utilizator devine probabil frustrant în miliarde de moduri.

Unele module (în special cele bazate pe șablonul de module GIMP) sunt concepute pentru a fi instalate în directorul principal GIMP din sistem, mai degrabă decât în directorul personal. Pentru asta va trebui să fiți utilizator root pentru a efectua etapa finală de instalare (atunci când se lansează comanda make install).

Dacă instalați în directorul personal un modul care are același nume ca unul din directorul de sistem cu module, doar unul poate fi încărcat, și va fi cel din directorul personal. Veți primi mesaje care vă spun acest lucru de fiecare dată când porniți GIMP. Ar fi, probabil, o situație de evitat.

#### 1.3.2. Windows

Windows este un mediu mult mai problematic pentru construirea de software decât Linux. Fiecare distribuție decentă Linux vine complet dotată cu instrumente pentru compilarea programelor, și toate sunt foarte asemănătoare în modul de lucru, dar Windows nu vine cu astfel de instrumente. Este posibil să se înființeze un bun mediu de construire programe în Windows, dar necesită fie o sumă substanțială de bani sau o cantitate substanțială de efort și cunoaștere.

Ce înseamnă acest lucru în legătură cu modulele GIMP: fie aveți un mediu în care puteți construi programul, fie nu. Dacă nu, atunci cea mai bună speranță este de a găsi o versiune precompilată a modulului undeva (sau convingeți pe cineva să vi-l compileze), caz în care pur și simplu trebuie să-l puneți în directorul de module personal. Dacă aveți un mediu în care puteți construi programul (care, în scopuri prezente înseamnă un mediu în care puteți construi GIMP), atunci fără îndoială deja se știu destule despre aceste lucruri, și trebuie doar să urmați instrucțiunile Linux .

#### 1.3.3. Apple Mac OS X

Instalarea de module pe OS X în cea mai mare parte depinde de modul în care ați instalat GIMP în sine. Dacă ați fost un curajos și ați instalat GIMP prin intermediul unuia dintre gestionarii de pachete precum Fink [DARWINORTS] sau darwinports, [FINK] instalarea modulelor funcționează exact modul descris deja pentru platforma Linux. Singura diferență este că o pereche de module ar putea fi chiar disponibile în depozitul de pachete, așa că efectuați și acolo o căutare.

Dacă pe de altă parte sunteți unul dintre utilizatorii care au preferat să preia un pachet preconstruit GIMP ca GIMP. app, cel mai probabil, doriți să rămânem la precompilarea de chestii. Deci, puteți încerca să obțineți o versiune precompilată pentru modulul visurilor voastre de la autorul modulului, dar nu am vrea să pariem pe acest lucru. Construirea propriilor versiuni binare, din păcate, implică instalarea GIMP prin intermediul unuia dintre gestionarii de pachete menționați mai sus.

### 1.4. Scrierea modulelor

Dacă doriți să învățați să scrieți un modul, puteți găsi suficient ajutor la situl web al dezvoltatorilor GIMP[GIMP-DEV-PLUGIN]. GIMP este un program complex, dar echipa de dezvoltare a făcut eforturi intense pentru a aplatiza curba de învățare a scrierii de module: există instrucțiuni bune și exemple, și Biblioteca principală care utilizează module care au o interfață cu GIMP (numită „libgimp”) are un API bine documentat . Un programator bun, capabil de învățare prin modificarea de module existente, poate adesea fi capabil de a realiza lucruri interesante, după doar câteva zile de muncă.

6. Customize Splash-Screen |  | 2. Utilizarea scripturilor script-fu

Report an error in the bug tracker