Guide de Développement de Scripts
Pour créer un script personnalisé pour Seer, vous devez définir les métadonnées et implémenter la logique fonctionnelle correspondante.
1. Définition des Métadonnées du Script
Seer initialise les scripts en recherchant un dictionnaire SCRIPT_INFO ou une fonction script_info() dans votre script.
Champs Obligatoires
name: Nom d'affichage du script.type: La catégorie fonctionnelle :0: Aperçu (Preview)1: Contrôles (Controls)2: Propriétés (Property)
extensions: Une liste d'extensions de fichiers (chaînes). Utilisez${type_folder}pour la correspondance avec les répertoires.arguments: Une liste d'arguments CLI (excluezpython.exeet le nom du fichier du script).
Exemple de Définition
SCRIPT_INFO = {
"name": "unzip",
"type": 1,
"extensions": ["zip", "rar", "7z"],
"arguments": ["-e", "${7z}", "-i", "${input_file}", "-o", __save_path, "-w"],
# Métadonnées optionnelles
"author": "YourName",
"version": "1.0.1",
"description": "Courte description du script",
"icon_path": "icon.png", # Type Contrôles uniquement
}
2. Implémentation des Fonctionnalités
- Aperçu (Type 0) : Charge/analyse le fichier d'entrée et le convertit en un format pris en charge nativement par Seer (ex. PDF, image ou HTML).
-
Exemple : Conversion d'un fichier
.epuben.html. -
Contrôles (Type 1) : Ajoute un bouton sur le côté gauche de la Barre de Contrôle. Un clic exécute le script défini.
-
Exemple : Compression du dossier actuellement prévisualisé en un fichier
.zip. -
Propriétés (Type 2) : Seer exécute automatiquement le script après le chargement réussi du fichier. Le script doit écrire les métadonnées dans un fichier JSON à l'emplacement spécifié par
${output_file}. Seer lit et affiche ensuite ce contenu JSON. - Exemple : Calcul du hash SHA512 d'un fichier.
3. Variables Disponibles
Ces jetons sont dynamiquement remplacés par Seer et passés comme arguments en ligne de commande :
| Variable | Description |
|---|---|
${7z} |
Chemin absolu vers le 7z.exe fourni avec Seer. |
${seer_exe} |
Chemin absolu vers Seer.exe. |
${seer_dir} |
Répertoire contenant Seer.exe. |
${input_file} |
Chemin vers le fichier/dossier cible actuellement prévisualisé. |
${output_file} |
Chemin vers le fichier de sortie temporaire (obligatoire pour les scripts de Propriété et certains d'Aperçu). |
${no_cache} |
Aperçu uniquement : Drapeau pour demander à Seer de supprimer le fichier temporaire après la fermeture de l'aperçu (non transmis au script comme argument). |
${type_folder} |
Contrôles uniquement : Utilisé pour correspondre aux types de répertoires. |
${use_backslash} |
Utiliser \ au lieu de / pour les séparateurs de chemin. |
Remarque :
${no_cache}est un drapeau interne pour Seer et n'est pas transmis à votre script comme argument en ligne de commande.