Ontwikkelaars
Bouwen, uitbreiden en bijdragen
Sally is vrije software onder de GNU GPL versie 2 of later en wordt openlijk ontwikkeld op GitHub. Hier lees je hoe je het bouwt, uitbreidt en wijzigingen terugstuurt.
Bouwen vanuit broncode
Visual Studio 2022, de Windows 11 SDK en CMake. Eén opdracht bouwt Sally en alle plugins, met alle talen ingebouwd.
BouwenEen plugin schrijven
Voeg archiefformaten, bestandssystemen, viewers of opdrachten toe via de plugininterface, beginnend met de demoplugins.
PluginsScripts voor Sally
Automatiseer herhalend werk met JScript, VBScript of andere Windows Script Host-talen.
ScriptsBijdragen
Verhelp een fout, verbeter een vertaling of meld een probleem.
BijdragenBouwen vanuit broncode
Je hebt Visual Studio 2022 nodig met de workload Desktop development with C++ en de Windows 11 SDK 10.0.26100 of nieuwer.
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
Het uitvoerbare programma komt in build/out/sally/<Config>_<Arch>/. Voer na elke build opnieuw populate uit, zodat de plugins naast sally.exe bij de build passen. CMake-presets ondersteunen x64, ARM64 en crosscompilatie met clang-cl; de ontwikkelaarshandleiding beschrijft de repository-indeling, de bouwdoelen en de codestijl.
Een plugin schrijven
Plugins zijn DLL's die Sally op verzoek laadt. De interface staat in src/plugins/shared/spl_*.h: een ingangspunt registreert wat de plugin biedt, zoals een archiefprogramma (spl_arc.h), een bestandssysteem voor de panelen (spl_fs.h), een viewer, menuopdrachten (spl_menu.h) of miniaturen (spl_thum.h), en Sally doet terugaanroepen via algemene, GUI- en bestandsdiensten (spl_gen.h, spl_gui.h, spl_file.h).
- Begin met een demo:
src/plugins/demopluggebruikt de meeste interfaces,demomenutoont een menu-uitbreiding endemovieween viewer. - Bestudeer een echte plugin: elke meegeleverde plugin staat in
src/plugins, van de kleinechecksumtotftpenzip. - Plugin-SDK-versie: sinds Sally 1.0.33 laden alleen plugins die voor de huidige plugin-SDK (109) zijn gebouwd. Plugins voor Altap Salamander 4.0 of oudere versies van Sally moeten opnieuw worden gebouwd met de huidige headers.
Scripts voor Sally
De Automation-plugin voert Windows Script Host-scripts uit met toegang tot de panelen, selectie, voortgangsvensters en eenvoudige formulieren. De handleiding beschrijft het objectmodel en bevat voorbeeldscripts.
Bijdragen
- Code: open een pull request op GitHub. Kleine, gerichte wijzigingen met een duidelijke probleembeschrijving zijn het gemakkelijkst te beoordelen.
- Vertalingen: elke taal is een gewoon resourcebestand dat in Sally wordt ingebouwd:
src/lang/<language>/lang.rcvoor Sally ensrc/plugins/<plugin>/lang/<language>/lang.rcvoor elke plugin. Bewerk de tekst en behoud alle ID’s, stijlen en besturingselementen in dezelfde volgorde als het Engelse bestand. Open daarna een pull request of meld een onjuiste vertaling als issue. De ontwikkelaarshandleiding legt uit hoe je een taal toevoegt. - Financiering: donaties via PayPal of Buy Me a Coffee bekostigen ontwikkeltijd.
- Foutrapporten: beschrijf het probleem en de stappen om het te reproduceren in Issues. Vermeld je versie van Sally en Windows.
- De handleiding: meld een onjuiste of ontbrekende pagina in Issues. De bronbestanden zijn beschikbaar als manual/source.zip.