![]() |
Ouvrir le dossier d'origine de l'image à partir de DT ? - Version imprimable +- Forum darktable FR (https://forums.darktable.fr) +-- Forum : Utilisation de darktable (https://forums.darktable.fr/forumdisplay.php?fid=97) +--- Forum : Module Table Lumineuse (https://forums.darktable.fr/forumdisplay.php?fid=74) +--- Sujet : Ouvrir le dossier d'origine de l'image à partir de DT ? (/showthread.php?tid=1405) |
Ouvrir le dossier d'origine de l'image à partir de DT ? - jpverrue - 25-07-16 Si tu es un peu codeur, ce n'est pas très difficile. Il y a un chapitre entier à la fin du manuel darktable, qui est un très bon pas à pas pour débuter. Ensuite si tu veux aller plus loin, le doc darktable-lua-api.pdf est le manuel de référence exhaustif de toutes les fonctions, structures de données et types qu'il est possible d'utiliser pour réaliser son script. Il est absolument indispensable ; sans lui, tu ne peux rien faire. Enfin, concernant la syntaxe générale du langage, il faut consulter le site Lua Ouvrir le dossier d'origine de l'image à partir de DT ? - manu - 28-07-16 Bonjour, j'arrive bien jusqu'aux options lua dans les préférences, et j'ai mis Code : /usr/bin/nautilus J'ai choisi F9 pour le raccourci clavier et quand je presse la touche, j'ai des boîtes qui me disent : Impossible de trouver le fichier demandé. Vérifiez l'orthographe et essayez à nouveau. Message d'erreur non géré : Erreur lors de l'obtention des informations du fichier « /home/manu/16/160721-Jam » : Aucun fichier ou dossier de ce type Puis : Message d'erreur non géré : Erreur lors de l'obtention des informations du fichier « /home/manu/- » : Aucun fichier ou dossier de ce type Puis : Message d'erreur non géré : Erreur lors de l'obtention des informations du fichier « /home/manu/juillet » : Aucun fichier ou dossier de ce type etc... Puis : Message d'erreur non géré : Erreur lors de l'obtention des informations du fichier « /media/shared/Photos/2016/07 » : Aucun fichier ou dossier de ce type Oui, il y a des espaces dans les noms de répertoire et au final c'est "/media/shared/Photos/2016/07 - juillet 16/160721-Jam au Joug" qui devrait être ouvert. Ouvrir le dossier d'origine de l'image à partir de DT ? - manu - 31-07-16 La solution à l'erreur que j'exposais concernant des chemins incluant des espaces : à la ligne 42 du script remplacer : Code : local command = navigator_path.." "..navigator_options.." "..image_path par : Code : local command = navigator_path.." "..navigator_options.." '"..image_path.."'" Ainsi le chemin de l'image, ou image_path sera encadré de quotes et passera comme paramètre unique, et non N paramètres séparés par des espaces. Par ailleurs, les lignes : <pre> Code : if coroutine.yield("RUN_COMMAND", command) then pour lancer la commande peuvent être remplacées par : Code : dt.control.execute( command) En tout cas, merci pour le boulot ! :-) Ouvrir le dossier d'origine de l'image à partir de DT ? - jpverrue - 02-08-16 Oops, je ne vois tes messages qu'aujourd'hui. Le flux RSS a buggé il me semble. Effectivement, il faut gérer les espaces dans les noms de fichiers. C'est un grand classique et je suis tombé dans le panneau, comme d'hab :-( Concernant le remplacement de "coroutine" par "execute", il semble que cela bloque l'exécution de DT tant que le navigateur est ouvert. D'un certain coté c'est prudent, car ça évite de laisser traîner des fenêtres du navigateur en arrière plan, mais d'un autre coté, ça bloque aussi les traitements en file d'attente. Pour l'instant, perso je laisse "coroutine" Ouvrir le dossier d'origine de l'image à partir de DT ? - manu - 03-08-16 2513 a écrit :Concernant le remplacement de “coroutine” par “execute”, il semble que cela bloque l’exécution de DT tant que le navigateur est ouvert. Je reproduis pas, DT fonctionne normalement après ouverture du dossier par le sccript lua, et j'en ouvre autant que je veux apparemment... Ouvrir le dossier d'origine de l'image à partir de DT ? - jpverrue - 03-08-16 j'ai pas testé. J'ai juste lu ceci dans le manuel : "Nous utilisons coroutine.yield pour appeler un programme externe. Le code normal os.execute bloquerait l'exécution d'autres codes Lua." Effectivement ce n'est pas le code DT qui est bloqué, mais l'interpréteur Lua. Dans le doute, j'ai conservé la proposition de l'exemple du manuel Ouvrir le dossier d'origine de l'image à partir de DT ? - manu - 03-08-16 OK, c'est raisonnable même si je n'observe pas de problème de script lua après utilisation du os.execute (Ubuntu 16.04/DT 2.0.5). RE: Ouvrir le dossier d'origine de l'image à partir de DT ? - jpverrue - 01-03-17 Suite au passage à la version 2.2, l'api Lua à changé un peu et j'ai du en conséquence modifier le script. Voici la version à jour : Code : --[[ RE: Ouvrir le dossier d'origine de l'image à partir de DT ? - manu - 01-03-17 Merci, ça fonctionne nickel ! :-) RE: Ouvrir le dossier d'origine de l'image à partir de DT ? - jpverrue - 22-04-17 Tel quel, Le script ne fonctionne pas quand il doit ouvrir un dossier dont le nom contient une apostrophe ou un guillemet. Voici une nouvelle version corrigeant ce bug. Au passage, merci à Manu pour m'avoir suggéré ce besoin. Maintenant j'utilise ce script tout le temps ! Code : --[[ |