Guide för skriptutveckling
För att skapa ett anpassat skript för Seer måste du definiera metadata och implementera motsvarande funktionella logik.
1. Definiera skriptmetadata
Seer initierar skript genom att leta efter en SCRIPT_INFO-ordbok eller en script_info()-funktion i ditt skript.
Obligatoriska fält
name: Visningsnamn för skriptet.type: Den funktionella kategorin:0: Förhandsgranskning1: Kontroller2: Egenskaper
extensions: En lista med filtillägg (strängar). Använd${type_folder}för katalogmatchning.arguments: En lista med CLI-argument (exkluderapython.exeoch skriptfilnamnet).
Exempeldefinition
SCRIPT_INFO = {
"name": "unzip",
"type": 1,
"extensions": ["zip", "rar", "7z"],
"arguments": ["-e", "${7z}", "-i", "${input_file}", "-o", __save_path, "-w"],
# Valfri metadata
"author": "YourName",
"version": "1.0.1",
"description": "Kort beskrivning av skriptet",
"icon_path": "icon.png", # Endast för kontrolltyp
}
2. Funktionsimplementation
- Förhandsgranskning (Typ 0): Läser/tolkar indatafilen och konverterar den till ett format som stöds av Seer (t.ex. PDF, bild eller HTML).
-
Exempel: Konvertera en
.epub-fil till.html. -
Kontroller (Typ 1): Lägger till en knapp till vänster på kontrollpanelen. Att klicka på den kör det definierade skriptet.
-
Exempel: Komprimera den förhandsgranskade mappen till en
.zip-fil. -
Egenskaper (Typ 2): Seer kör automatiskt skriptet efter lyckad filladdning. Skriptet måste skriva metadata till en JSON-fil på platsen som anges av
${output_file}. Seer läser och visar sedan detta JSON-innehåll. - Exempel: Beräkna SHA512-hash av en fil.
3. Tillgängliga variabler
Dessa tokens ersätts dynamiskt av Seer och skickas som kommandoradsargument:
| Variabel | Beskrivning |
|---|---|
${7z} |
Absolut sökväg till Seers inbyggda 7z.exe. |
${seer_exe} |
Absolut sökväg till Seer.exe. |
${seer_dir} |
Katalog som innehåller Seer.exe. |
${input_file} |
Sökväg till målfilen/mappen som förhandsgranskas. |
${output_file} |
Sökväg till den temporära utdatafilen (krävs för Egenskap och vissa Förhandsgranskningsskript). |
${no_cache} |
Endast förhandsgranskning: Flagga som instruerar Seer att ta bort den temporära filen efter att förhandsgranskningen stängs (skickas inte till skriptet som argument). |
${type_folder} |
Endast kontroller: Används för att matcha katalogtyper. |
${use_backslash} |
Använd \ istället för / för sökvägsseparatorer. |
Notera:
${no_cache}är en intern flagga för Seer och skickas inte till ditt skript som ett kommandoradsargument.