QuickAdd
QuickAdd n’est pas nécessaire. Les enchaînements d’Hypomnema couvrent ce qui touche l’annotation ; QuickAdd sert quand on a déjà des macros et qu’on veut faire d’Hypomnema l’une de leurs étapes.
Ce qu’il apporte
Section intitulée « Ce qu’il apporte »Les macros QuickAdd enchaînent des commandes, des captures et des scripts de n’importe quel plugin. Chaque commande d’Hypomnema peut en être une étape : la fin d’une lecture alimente alors un journal, une note de projet ou une note quotidienne que QuickAdd gère déjà.
Recette minimale : extraire en fin de lecture
Section intitulée « Recette minimale : extraire en fin de lecture »- Dans les réglages de QuickAdd, créez un choix Macro, par exemple « Fin de lecture ».
- Ajoutez une étape Obsidian command : Hypomnema: Extraire les commentaires de cette note.
- Ajoutez ensuite les étapes voulues, par exemple une Capture vers une note « Journal de lecture » au format
- {{DATE}} [[{{LINKCURRENT}}]]. - Activez la commande de la macro (l’icône éclair) pour la lancer depuis la palette ou un raccourci.
La même commande est accessible à tout plugin ou script : app.commands.executeCommandById("hypomnema:extract-note").
Variante : gestes et API dans une macro
Section intitulée « Variante : gestes et API dans une macro »Chaque geste dont l’option Commande est activée devient la commande hypomnema:geste-<id> : il apparaît dans l’étape Obsidian command de QuickAdd comme n’importe quelle autre commande.
Un script utilisateur QuickAdd peut aussi appeler l’API publique. Les scripts écrits pour Hypomnema reprennent la signature de ceux de QuickAdd : le même fichier fonctionne dans les deux.
module.exports = async (params) => { const api = params.app.plugins.plugins.hypomnema?.api; if (!api) throw new Error("Hypomnema n'est pas activé"); const file = params.app.workspace.getActiveFile(); const threads = await api.threads(file); new Notice(`${threads.length} commentaire(s) dans ${file.basename}`);};Pour réagir à Hypomnema depuis l’extérieur, on s’abonne à ses événements, par exemple pour consigner chaque extraction :
app.workspace.on("hypomnema:extracted", (d) => console.log(`${d.added} commentaire(s) → ${d.file.path}`));Les événements et leur contenu sont décrits sur la page API.