GIMP 3 en remplacement de GIMP 2 comme éditeur externe

Bonjour,

J’ai remplacé le chemin de GIMP 2 par celui de GIMP 3 dans les préférences, en face de Dossier d’installation de GIMP : C:\Program Files\Gimp 3
Ça ne marche pas : GIMP 3 ne s’ouvre pas.

NB : j’utilise la version 1.25.3.1 de ART.

Bien sûr, Gimp 3 se lance si, à la troisième ligne des éditeurs externes (ligne de commande personnalisée), j’écris : C:\Program Files\GIMP 3\bin\gimp-3.0.exe … mais je souhaite garder cette ligne pour un autre éditeur : Silver Efex.

Au passage, serait-il possible d’avoir un menu permettant de choisir d’autres éditeurs. La version actuelle d’ART ne permettant que d’avoir une seule ligne de commande personnalisée en plus de Gimp et Photoshop.

D’avance, merci.

salut @Piblo,

oui tu peux déclencher un menu avec tous les éditeurs que tu peux et veux bien y mettre en cliquant sur cet icone:

qui va déclencher l’apparition d’un menu:

en utilisant la fonction “usercommand” dont tu trouveras des explications pour la mettre en place dans ce post:

Salut jllailes,

Sauf erreur de ma part, la méthode que tu donnes est pour Linux. Non ? Comme tu peux voir sur les chemins que j’ai indiqué dans mon post initial, je suis sous Windows.

En regardant vite fait dans le code de ART, en effet pour Windows ART cherche Gimp sous la forme “gimp-2.%1.exe”, et bien entendu cet exécutable n’existe plus avec Gimp 3.
Il est possible aussi qu’il cherche cet exécutable dans l’ancien dossier qui devait être C:\Program Files\GIMP 2\bin\
Il faudrait faire ouvrir une issue sur le Github : GitHub · Where software is built

Ou en attendant, peut-être placer un raccourci vers Gimp 3 là où ART s’attend à trouver Gimp 2 : C:\Program Files\GIMP 2\bin\Gimp-2.0.exeC:\Program Files\GIMP 3\bin\Gimp-3.0.exe mais je ne sais pas si ça fonctionnera.

Au temps pour moi, le post traite uniquement le usercommand sous linux, en effet, il faudrait adapter le script pour qu’il soit lisible sous Windows, et adapter les chemins du dossier de configuration…

En installant au préalable Zenity pour windows, tu peux tester mon script selec-editor.sh transformé en bat pour windows par ChatGpt… Tu adapteras les softs et les chemins d’accès à ce que tu possèdes.
ART-cli doit être accessible depuis le PATH ou tu dois spécifier son chemin complet dans le script (idem pour Zenity)

setlocal enabledelayedexpansion

REM Chemin vers Zenity pour Windows (modifiez selon votre installation)
set zenity="C:\\path\\to\\zenity.exe"

REM Vérification de la présence d'un fichier ARP associé
set arpfile=%~1.arp
set t=%TEMP%\temp_profile.arp

REM Création du fichier temporaire avec le profil de couleur
(
echo [Version]
echo Version=1015
echo.
echo [Color Management]
echo OutputProfile=RTv4_ACES-AP1
) > "%t%"

REM Si un fichier ARP existe, l'utiliser (sans profil de sortie)
if exist "%arpfile%" (
    set sidecar=-p "%arpfile%"
) else (
    set sidecar=
    (
    echo [Exposure]
    echo HLRecovery=Blend
    echo.
    echo [ToneCurve]
    echo Enabled=false
    echo.
    echo [LensProfile]
    echo LcMode=lfauto
    echo UseDistortion=true
    echo UseVignette=true
    echo UseCA=false
    echo.
    echo [RAW]
    echo CAEnabled=true
    echo CA=true
    echo CAAvoidColourshift=true
    echo CAAutoIterations=2
    ) >> "%t%"
)

REM Traitement des fichiers RAW en TIFF via ART-cli avec Zenity pour la progression
ART-cli %sidecar% -p "%t%" -Y -t -b16 -c %* | %zenity% --progress --pulsate --no-cancel --auto-close --text="Conversion vers TIFF en cours..."

REM Suppression du fichier temporaire
DEL "%t%"

REM Préparation de la liste des TIFF
set "tiffs="
for %%F in (%*) do (
    set "tiffs=!tiffs! "%%~dpnF.tif""
)

REM Préparation des choix d'éditeur pour Zenity
set editors="1" "Gimp" "2" "Krita" "3" "Luminance HDR" "4" "Analog Efex Pro 2" "5" "Silver Efex Pro 2" "6" "Color Efex Pro 4" "7" "Dfine 2" "8" "HDR Efex Pro 2" "9" "Sharpener pre raw" "10" "Sharpener out" "11" "QTR-Piezzo"

FOR /F %%A IN ('%zenity% --list --column="ID" --column="Name" --title="Sélectionnez l'éditeur" --hide-column=1 --print-column=1 %editors%') DO (
    set choice=%%A
)

REM Sélection de l'éditeur basé sur le choix Zenity
if "%choice%"=="1" (start "" "C:\Program Files\GIMP 3\bin\gimp-3.10.exe" %tiffs%)
if "%choice%"=="2" (start "" krita %tiffs%)
if "%choice%"=="3" (start "" "C:\Program Files\Luminance HDR\luminance-hdr.exe" %tiffs%)
if "%choice%"=="4" (start "" "C:\Program Files\Google\Nik Collection\Analog Efex Pro 2\Analog Efex Pro 2 (64-Bit)\Analog Efex Pro 2.exe" %tiffs%)
if "%choice%"=="5" (start "" "C:\Program Files\Google\Nik Collection\Silver Efex Pro 2\Silver Efex Pro 2 (64-Bit)\Silver Efex Pro 2.exe" %tiffs%)
if "%choice%"=="6" (start "" "C:\Program Files\Google\Nik Collection\Color Efex Pro 4\Color Efex Pro 4 (64-Bit)\Color Efex Pro 4.exe" %tiffs%)
if "%choice%"=="7" (start "" "C:\Program Files\Google\Nik Collection\Dfine 2\Dfine 2 (64-Bit)\Dfine2.exe" %tiffs%)
if "%choice%"=="8" (start "" "C:\Program Files\Google\Nik Collection\HDR Efex Pro 2\HDR Efex Pro 2.exe" %tiffs%)
if "%choice%"=="9" (start "" "C:\Program Files\Google\Nik Collection\Sharpener Pro 3\Sharpener Pro 3 (64-Bit)\SHP3RPS.exe" %tiffs%)
if "%choice%"=="10" (start "" "C:\Program Files\Google\Nik Collection\Sharpener Pro 3\Sharpener Pro 3 (64-Bit)\SHP3OS.exe" %tiffs%)
if "%choice%"=="11" (start "" "C:\Program Files (x86)\QuadToneRIP\bin\QTRgui.exe" %tiffs%)

endlocal


N’étant pas un windowsien… pas certain que tout cela fonctionne, mais tu peux tester :wink:

@ jllailes > Tout cela me semble compliqué. Je cherche une solution simple, clé en main, pouvant être diffusée aux personnes à qui je donne un cours sur ART. Je ne me vois pas leur demander d’installer un logiciel supplémentaire sur leur PC. Le maximum que je puisse leur proposer, c’est de déposer quelque part dans un répertoire, un script faisant le job… comme, par exemple, ce que nous avons dans Gimp pour appeler les modules de la Nik Collection.

@ sguyader > J’ai testé un raccourci vers GIMP 3 depuis l’arborescence de GIMP 2. Ça ne marche pas.

Ok, j’ai créé une issue sur Github (The Gimp external application button doesn't launch Gimp 3 on Windows · Issue #367 · artpixls/ART · GitHub).

1 « J'aime »

Super ! Merci.

Alberto me propose de tester le patch suivant, mais n’étant pas moi-même sous Windows je ne peux pas le tester. Est-ce que quelqu’un peu essayer ?

Patch :

diff --git a/rtgui/extprog.cc b/rtgui/extprog.cc
--- a/rtgui/extprog.cc
+++ b/rtgui/extprog.cc
@@ -380,13 +380,15 @@
 
 #ifdef WIN32
 
-    for (auto ver = 12; ver >= 0; --ver) {
+    for (auto major = 3; major >= 2; --major) {
+        for (auto minor = (major == 3 ? 1 : 12); minor >= 0; --minor) {
 
-        executable = rtengine::subprocess::to_wstr(Glib::build_filename (options.gimpDir, "bin", Glib::ustring::compose (Glib::ustring("gimp-2.%1.exe"), ver)));
-        auto success = ShellExecuteW( NULL, open.c_str(), executable.c_str(), fn.c_str(), NULL, SW_SHOWNORMAL );
+            executable = rtengine::subprocess::to_wstr(Glib::build_filename (options.gimpDir, "bin", Glib::ustring::compose (Glib::ustring("gimp-%1.%2.exe"), major, minor)));
+            auto success = ShellExecuteW( NULL, open.c_str(), executable.c_str(), fn.c_str(), NULL, SW_SHOWNORMAL );
 
-        if ((uintptr_t)success > 32) {
-            return true;
+            if ((uintptr_t)success > 32) {
+                return true;
+            }
         }
     }
 

Ouh ! Ça dépasse mes compétences. Je suppose que c’est à mettre quelque part dans le code avant de re-compiler. En général je me contente de télécharger et installer un .exe

Quand tu sais comment compiler à partir du dépôt cloné avec git, c’est assez simple il suffit de coller le code du patch dans un fichier que tu appelles par exemple “patch.txt” placé à la racine du dépôt ART, puis pour appliquer le patch avec la commande git apply patch.txt. Tu compiles, et tu testes.
Ensuite tu peux annuler le patch avec git apply -R patch.txt pour retourner à l’état initial.

Avec un peu de chance, quelqu’un d’autre ici va pouvoir tester le patch ?