Dezvoltatori
Compilați, extindeți și contribuiți
Sally este software liber sub GNU GPL versiunea 2 sau ulterioară, dezvoltat public pe GitHub. Iată cum îl puteți compila, extinde și contribui cu modificări.
Compilare din sursă
Visual Studio 2022, SDK-ul Windows 11 și CMake. O singură comandă compilează Sally și toate pluginurile, cu toate limbile încorporate.
CompilareScrieți un plugin
Adăugați formate de arhivă, sisteme de fișiere, vizualizatoare sau comenzi prin interfața pluginurilor, pornind de la pluginurile demonstrative.
PluginuriScripturi pentru Sally
Automatizați munca repetitivă cu JScript, VBScript sau alte limbaje Windows Script Host.
ScripturiContribuiți
Remediați o eroare, îmbunătățiți o traducere sau raportați o problemă.
ContribuițiCompilare din sursă
Aveți nevoie de Visual Studio 2022 cu pachetul de lucru Desktop development with C++ și SDK-ul Windows 11 10.0.26100 sau mai nou.
git clone https://github.com/0xeb/sally.git
cd sally
cmake -S . -B build
cmake --build build --config RelWithDebInfo
cmake --build build --config RelWithDebInfo --target populate
Programul executabil rezultat se află în build/out/sally/<Config>_<Arch>/. Rulați din nou populate după fiecare compilare pentru ca pluginurile de lângă sally.exe să corespundă. Presetările CMake acoperă x64, ARM64 și compilarea încrucișată clang-cl; ghidul dezvoltatorului descrie structura depozitului, țintele și stilul codului.
Scrieți un plugin
Pluginurile sunt DLL-uri încărcate la cerere de Sally. Interfața se află în src/plugins/shared/spl_*.h: un punct de intrare înregistrează funcțiile oferite, precum un arhivator (spl_arc.h), un sistem de fișiere pentru panouri (spl_fs.h), un vizualizator, comenzi de meniu (spl_menu.h) sau miniaturi (spl_thum.h), iar Sally apelează pluginul prin servicii generale, de interfață și de fișiere (spl_gen.h, spl_gui.h, spl_file.h).
- Porniți de la un exemplu:
src/plugins/demoplugdemonstrează majoritatea interfețelor,demomenuprezintă o extensie de meniu, iardemoviewun vizualizator. - Studiați un plugin real: toate pluginurile incluse sunt în
src/plugins, de la miculchecksumpână laftpșizip. - Versiunea SDK-ului pluginurilor: din Sally 1.0.33 se încarcă numai pluginurile compilate pentru SDK-ul actual (109). Pluginurile scrise pentru Altap Salamander 4.0 sau versiuni Sally mai vechi trebuie recompilate cu antetele curente.
Scripturi pentru Sally
Pluginul Automation execută scripturi Windows Script Host cu acces la panouri, selecție, ferestre de progres și formulare simple. Manualul său documentează modelul de obiecte și include scripturi demonstrative.
Contribuiți
- Cod: deschideți o cerere de integrare pe GitHub. Modificările mici și concentrate, cu o descriere clară a problemei, sunt cel mai ușor de verificat.
- Traduceri: fiecare limbă este un fișier obișnuit de resurse încorporat în Sally:
src/lang/<language>/lang.rcpentru Sally șisrc/plugins/<plugin>/lang/<language>/lang.rcpentru fiecare plugin. Editați textul păstrând toate ID-urile, stilurile și controalele în aceeași ordine ca în fișierul englezesc, apoi deschideți o cerere de integrare sau raportați traducerea greșită ca problemă. Ghidul dezvoltatorului explică adăugarea unei limbi. - Finanțare: donațiile prin PayPal sau Buy Me a Coffee finanțează timpul de dezvoltare.
- Rapoarte de erori: descrieți problema și pașii de reproducere în Probleme. Includeți versiunile Sally și Windows.
- Manualul: raportați o pagină greșită sau lipsă în Probleme. Sursa sa este publicată ca manual/source.zip.