ObsiGate/HIDDEN_FILES_GUIDE.md

4.6 KiB

Guide de configuration des fichiers et dossiers cachés

Vue d'ensemble

ObsiGate prend désormais en charge les fichiers et dossiers cachés (ceux qui commencent par un point, comme .obsidian, .git, etc.) avec une configuration flexible par vault.

Fonctionnalités

1. Activation globale par vault

Vous pouvez activer l'indexation de TOUS les fichiers cachés pour un vault spécifique.

2. Liste blanche flexible

Ajoutez des dossiers cachés individuels à une liste blanche, même si l'activation globale est désactivée.

3. Configuration persistante

Les paramètres sont sauvegardés et persistent entre les redémarrages.

Configuration

Via variables d'environnement

Ajoutez ces variables à votre configuration Docker ou .env :

# Pour activer tous les fichiers cachés dans un vault
VAULT_1_INCLUDE_HIDDEN=true

# Pour ajouter des dossiers spécifiques à la liste blanche
VAULT_1_HIDDEN_WHITELIST=.obsidian,.github,.vscode

# Exemple pour un deuxième vault
VAULT_2_INCLUDE_HIDDEN=false
VAULT_2_HIDDEN_WHITELIST=.obsidian

Via l'interface web

  1. Ouvrez le menu Options (icône d'engrenage)

  2. Cliquez sur Configurations

  3. Faites défiler jusqu'à la section 📁 Fichiers et dossiers cachés

  4. Pour chaque vault, vous pouvez :

    • Activer/désactiver l'inclusion de tous les fichiers cachés
    • Ajouter des dossiers à la liste blanche individuellement
    • Supprimer des dossiers de la liste blanche
  5. Cliquez sur Sauvegarder les paramètres

  6. Cliquez sur Réindexer avec nouveaux paramètres pour appliquer les changements

Exemples d'utilisation

Cas 1 : Indexer uniquement le dossier .obsidian

VAULT_1_INCLUDE_HIDDEN=false
VAULT_1_HIDDEN_WHITELIST=.obsidian

Ou via l'interface :

  • Désactiver "Inclure tous les fichiers cachés"
  • Ajouter .obsidian à la liste blanche

Cas 2 : Indexer tous les fichiers cachés

VAULT_1_INCLUDE_HIDDEN=true

Ou via l'interface :

  • Activer "Inclure tous les fichiers cachés"

Cas 3 : Indexer plusieurs dossiers cachés spécifiques

VAULT_1_INCLUDE_HIDDEN=false
VAULT_1_HIDDEN_WHITELIST=.obsidian,.github,.vscode

Ou via l'interface :

  • Désactiver "Inclure tous les fichiers cachés"
  • Ajouter .obsidian, .github, .vscode à la liste blanche

API Endpoints

Obtenir les paramètres d'un vault

GET /api/vaults/{vault_name}/settings

Réponse :

{
  "includeHidden": false,
  "hiddenWhitelist": [".obsidian", ".github"]
}

Mettre à jour les paramètres d'un vault

POST /api/vaults/{vault_name}/settings
Content-Type: application/json

{
  "includeHidden": true,
  "hiddenWhitelist": [".obsidian"]
}

Obtenir les paramètres de tous les vaults

GET /api/vaults/settings/all

Architecture technique

Backend

  • backend/indexer.py : Fonction _should_include_path() qui vérifie si un chemin doit être inclus
  • backend/vault_settings.py : Gestion de la persistance des paramètres
  • backend/main.py : Endpoints API pour gérer les paramètres
  • backend/attachment_indexer.py : Respect des paramètres pour les pièces jointes

Frontend

  • frontend/index.html : Section de configuration dans le modal
  • frontend/app.js : Fonctions loadHiddenFilesSettings(), saveHiddenFilesSettings(), etc.
  • frontend/style.css : Styles pour l'interface de configuration

Notes importantes

  1. Réindexation requise : Après modification des paramètres, une réindexation est nécessaire pour appliquer les changements
  2. Persistance : Les paramètres sont sauvegardés dans /app/data/vault_settings.json
  3. Priorité : Les variables d'environnement sont chargées au démarrage, mais peuvent être écrasées via l'interface web
  4. Performance : L'activation de tous les fichiers cachés peut augmenter le temps d'indexation selon le nombre de fichiers

Dépannage

Les fichiers cachés n'apparaissent pas après activation

  1. Vérifiez que les paramètres sont bien sauvegardés
  2. Déclenchez une réindexation manuelle
  3. Vérifiez les logs du serveur pour d'éventuelles erreurs

Les paramètres ne persistent pas

  1. Vérifiez que le dossier /app/data/ est accessible en écriture
  2. Vérifiez les permissions du fichier vault_settings.json
  3. Consultez les logs pour les erreurs de sauvegarde

Conflit entre variables d'environnement et interface web

Les paramètres de l'interface web écrasent les variables d'environnement. Pour revenir aux variables d'environnement, supprimez le fichier vault_settings.json et redémarrez.