Note de ce sujet :
  • Moyenne : 0 (0 vote(s))
  • 1
  • 2
  • 3
  • 4
  • 5
script LUA avec Daktable pour Windows
#1
Bonjour

J'ai tenté vainement d'activer des scripts Lua avec Darktable pour Windows (v2.4.0).

Pour cela j'ai :
- créé un répertoire lua dans le répertoire "%LOCALAPPDATA%\darktable" : "%LOCALAPPDATA%\darktable\lua" 
- placé les scripts obtenus sur https://github.com/darktable-org/lua-scripts en gardant l'aboresnce dans %LOCALAPPDATA%\darktable\lua" 
- créé un fichier "luarc" dans "%LOCALAPPDATA%\darktable"
- écrit la ligne "require "examples/hello_world" "dans ce fichier

Au lancement de DT, rien ne se passe ....

J'ai essayé les variations suivantes : 
- "lua.rc" au lieu de "luarc"
- placé ces fichiers dans "%LOCALAPPDATA%\darktable\lua" 
- écrit  "require "examples/include_all" "

Rien n'y fait ....  cela ne fonctionne pas ..... un idée ?
Répondre
#2
Essaye de lancer "darktable -d lua" (depuis une ligne de commande, a priori sous Windows c'est soit l'ancien cmd.exe soit powershell), et regarde les messages affichés (dans la fenêtre de ligne de commande depuis laquelle tu as lancé dt).
Répondre
#3
[Image: dt2.jpg]

Je  viens de faire l'essai : avec la commande "darktable -d lua", DT se lance mais dans la fenêtre d'invite de commandes , aucune information n'apparait
[Image: DT_LUA.jpg]
Répondre
#4
(27-02-18, 21:33)courdi9 a écrit : - placé les scripts obtenus sur https://github.com/darktable-org/lua-scripts en gardant l'aboresnce dans %LOCALAPPDATA%\darktable\lua" 

Bonjour 
J'ai réussi à faire fonctionné " Hello Word"  en ne respectant pas  l'arboresence

" C:\Users\aaaa\AppData\Local\darktable\lua\hello_world.lua"
 dossier luarc  (require "hello_world") 

 le script  ( delete_unused_tags.lua  ) fonctionne bien chez moi ,je n'ai pas eu le temps d'en essayé d'autres .
Criss

Ps. je suis sur win 10 darktable 2.4.1
Répondre
#5
(28-02-18, 11:07)criss a écrit :
(27-02-18, 21:33)courdi9 a écrit : - placé les scripts obtenus sur https://github.com/darktable-org/lua-scripts en gardant l'aboresnce dans %LOCALAPPDATA%\darktable\lua" 

Bonjour 
J'ai réussi à faire fonctionné " Hello Word"  en ne respectant pas  l'arboresence

" C:\Users\aaaa\AppData\Local\darktable\lua\hello_world.lua"
 dossier luarc  (require "hello_world") 

 le script  ( delete_unused_tags.lua  ) fonctionne bien chez moi ,je n'ai pas eu le temps d'en essayé d'autres .
Criss

Ps. je suis sur win 10 darktable 2.4.1

Ca y est .... je me suis fait avoir par le côté "fugace" du hello_world : je cherchais une information statique, alors que c'est un "Toast" ...

Pour résumer, ce qui marche :
- double click sur l'icone DT
- ou lancement par invite de commande dans le répertoire bin de DT :
darktable
- ou lancement par invite de commande dans le répertoire bin de DT:
darktable -d lua

- avec fichier luarc placé dans
C:\Users\aaaa\AppData\Local\darktable\
- et fichier luarc contenant:
require "hello_world"
- et fichier "hello_world.lua" placé dans :
C:\Users\aaaa\AppData\Local\darktable\lua

Le toast apparait 2/3 secondes dans la partie basse de la fenêtre (j'étais en plein écran), sous la forme d'un cartouche de la même couleur (je cherchais autre chose ...)

Si on change le fichier luarc, cela fonctionne aussi et il utilise bien l'arborescence :
require "examples/hello_world"

Ce que je voudrais faire/avoir :
- un script comme LRMogrify pour retailler mes images en ayant la possibilité de mettre une bordure de 2 pixels autour de l'image : si qqun a fait ce script ou à la même besoin ....
- un script comme celui qu'intègre Photolab dans LR pour faire l'A/R vers Photolab ... idem : si qqu l'a fait :-)
Répondre
#6
> - un script comme LRMogrify pour retailler mes images en ayant la possibilité de mettre une bordure de 2 pixels autour de l'image : si qqun a fait ce script
> ou à la même besoin ....

Pas de Lua nécessaire, car tu peux faire une bordure directement dans dt.

> - un script comme celui qu'intègre Photolab dans LR pour faire l'A/R vers Photolab ... idem : si qqu l'a fait :-)

Comprends pas Smile Tu peux nous dire ce que ça fait?
--
Pascal - GNU/Debian (sid) - version darktable git/master
http://photos.obry.net
Répondre
#7
(28-02-18, 17:31)pascal a écrit : > - un script comme LRMogrify pour retailler mes images en ayant la possibilité de mettre une bordure de 2 pixels autour de l'image : si qqun a fait ce script
> ou à la même besoin ....

Pas de Lua nécessaire, car tu peux faire une bordure directement dans dt.

> - un script comme celui qu'intègre Photolab dans LR pour faire l'A/R vers Photolab ... idem : si qqu l'a fait :-)

Comprends pas Smile Tu peux nous dire ce que ça fait?

- cadre : avec quel module ? le module cadre décoratif ne m'a pas permis d'avoir une bordure de 2 pixels en bordure intérieure de mon image -> avec LRMogrify dans LR c'est très facile / ce plugin est en Lua et utilise ImageMagick comme processeur

- A/R dans Photolab : c'est ce que propose Photolab qui intègre automatique dans LR un plugin Lua pour faire cela .... ce module permet de sélectionner une image dans LR puis de l'envoyer dans PL pour la traiter et d'en récupérer le résultat ensuite dans LR ... je voudrais faire la même chose dans DT
Répondre
#8
Oui effectivement tu veux 2 pixels et dt propose un %. En passant un % est plus "proportionnel" et aura la même taille apparent peut importe la taille de l'export.

Si tu utilises 2 pixels, alors prenons des cas absurde mais parlant, une image de 4x4 pixels alors tes bordures prendront la moité de ton image et si tu export en 10000x10000 alors ta bordure sera presque invisible.

Pour PL ok, je comprends maintenant. Rien de tel pour dt en Lua mais c'est possible car c'est ce que fait le plug-in Gimp. Avec un peu de chance, en utilisant ce plug-in et changeant l'exécutable à lancer le tour est joué.
--
Pascal - GNU/Debian (sid) - version darktable git/master
http://photos.obry.net
Répondre
#9
Pour la bordure : c'est pour les projections dans mon club photo -> on retaille les images dans un rectangle max de 1920x1080 (résolution du projecteur) avec une bordure de 2px pour bien isoler l'image et voir où elle s'arrête sans dénaturer la photo.

Pour DxO ... je viens de faire une première version de script :

//////////////////////////////////////////
--[[
This file is part of darktable,
copyright © 2014--2018 Tobias Ellinghaus

darktable is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

darktable is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with darktable. If not, see <http://www.gnu.org/licenses/>.
]]

--[[
Export to PL

dxoexporter - export an image and open with DxO PhotoLab for editing

This script provides another storage (export target) for darktable. Selected
images are exported to be opened with DxO. Dxo PhotoLab (PL) is launched
and opens the files.

ADDITIONAL SOFTWARE NEEDED FOR THIS SCRIPT
* Dxo Photolab : http://www.dxo.com

USAGE
* require this script from your main lua file
* select an image or images for editing with PL
* in the export dialog select "Export to DxO" and select the format and bit depth for the
exported image
* Press "export"
* Edit the image with PL then save the changes


CAVEATS
* Developed and tested on Windows 10 with darktable 2.4.1 and Dxo Photolab 1


BUGS, COMMENTS, SUGGESTIONS
* Send to JJ Monot, jeanjacques.monot@gmail.com

CHANGES
* 20180301 - creation
]]

local darktable = require "darktable"
local dtdebug = require "darktable.debug"
local dtfiles = require "lib/dtutils.file"
require "official/yield"

darktable.configuration.check_version(...,{3,0,0},{4,0,0},{5,0,0})


--[[ ////////////////////////////////////////////////////////////////////////////////]]
darktable.print(" ----------- Demarrage DxOOpen ------------- ")
--[[ ////////////////////////////////////////////////////////////////////////////////]]


--[[ ////////////////////Export DxO ////////////////////////////////////////////////////////////]]
darktable.register_storage("dxoopen","Export to DxO",
function( storage, image, format, filename,
number, total, high_quality, extra_data)

local command = '"C:\\Program Files\\DxO\\DxO PhotoLab 1\\DxO.PhotoLab.exe" '..filename
darktable.print("command : "..command)
darktable.print_log("command : "..command)
darktable.print_error("command : "..command)

if darktable.control.execute( command) > 0 then
darktable.print("error")
else
//darktable.print ("")
end

end)

--[[ ///////////////////////FIN/////////////////////////////////////////////////////////]]




/////////////////////////////////////////
Répondre
#10
Tu veux mettre ton script dans une boîte
Code :
Comme ça

pour ne pas avoir de post long comme un jour sans pain pour ceux qui ne sont pas concerner. Ce n'est pas la première fois que plusieurs utilisateurs.
Un peu de respect des autres utilisateurs serait bien et de ceux qui sont obligés de lire tous les messages pour l'administration du forum.
Répondre


Atteindre :


Utilisateur(s) parcourant ce sujet : 2 visiteur(s)