PL6 ergonomics

I’m a relatively new user now getting to grips with PL6 functionality, but I’m really struggling with the ergonomics of the program. I came from LrC and was used to using an X-Touch Mini as a midi controller for that. Very intuitive, especially when editing with sliders. Since starting with PL6 I’ve focused more on getting to know how parts of it work and do what I did in LrC. So far I love, and prefer, the results of editing in PL6, but I want to improve my workflow.
I know there are keyboard shortcuts but I find them clumsy to use. For instance, just being able to select (tag) or reject an image is awkward. I can ‘arrow’ through the images on my right hand but Ctrl-7 is an awkward combo for my left. Star ratings are just as awkward and don’t even get me started on colour labels.
Is there any way to configure shortcuts? Or does anyone have a recommendation for configuring at least the rating/label keys on a small keyboard/controller?
Thanks.

Unfortunately there is presently no way to change the keyboard shortcuts. This feature is requested here: (I suggest you add your vote.)

In the meantime, you could add a device that lets you map its buttons to the keyboard shortcuts you use most in PhotoLab. Game controllers, advanced mice, graphic design input devices…

Thanks for that pointer. I shall do so but given the age of the request it doesn’t look like DXO is in any hurry to respond.

2 Likes

I am trying to move from Capture One due to an eighteen-month-old database issue that CO are unable/unwilling to resolve (and certainly unwilling to deal with my requests for information). One of CO’s great strengths is their shortcut facility - both the number and the configurability and I miss that greatly in PL6. But even in CO, there were things I was unable to do so I resorted to AutoHotKey (AHK) and have found it a fabulous bit of software.

You can configure any combination of shortcut to interface with the application and can set it to implement the shortcuts only when an app is running - so, say, Ctrl+P as an export in DxO does not interfere with the universal Windows Print command in all other applications.

This means that any PL6 shortcut can be reconfigured. For example, setting a red color tag: Ctrl+Alt+1 could become Ctrl+R using the code:

;Red Tag
^R::
^!1
Return

[AHK uses ^ as Ctrl and ! as Alt]

I have shortcuts for most of the Local Adjustments so I can get a control point or line or linear gradient with Ctrl+ a key. X toggles on both Shadows and Highlights exposure warning:

;Shadows, Highlights
x::
send {ctrl down}{alt down}bw{alt up}{ctrl up}
Return

It is also possible to arrange to click on a certain icon on the screen, but only if the window is full screen (otherwise the position of the icon is variable) using the following:

;Retouch
h::
ClickBack(1227,16)
Sleep, 250
Return

;ReShape
z::
ClickBack(1195,16)
Sleep, 250
Return

ClickBack is the click, the co-ordinates are the icon location and the sleep is to allow time for the effect before command is handed back to PL6.

Clive

2 Likes

That sounds useful, thanks. I’ll have a look.

Woah, this is awesome (I wish it were avaiable for Mac too as I work cross platform)! I’ve had a look at the AHK website and downloaded it. Now to get to grips with it all :slight_smile:

The lack of customisable shortcut keys (Mac and Win) is a major negative regarding Photolab imo.

Thanks for sharing.

I’ve been doing a bit of digging on AHK, and came across a midi - to - keystroke script. That would be a great step forward. The functionality to click on an area of screen could also mean that I could use the rotary controls of my X Touch Mini to control the up/down icons for sliders (probably separate rotary controls for up/down unless there is something clever that can be done with increasing/decreasing values in the scripting).

The following is a work in progress. It does not (yet) include the Capture One replications of Ctrl+ R-ed, G-reen, Y-ellow etc for color tagging, but it will.

===START

#IfWinActive ahk_exe DxO.PhotoLab.exe

Settitlematchmode, 2
SetMouseDelay, -1
; — Auto Exec
; nothing

; — Hotkeys

;Crop
c::
toggle := !toggle
goto, % toggle ? “firstcrop” : “secondcrop”
return
;Firstcrop
firstcrop:
ClickBack(989,16)
Sleep, 250
Click 325 1045
Return
;Secondcrop
secondcrop:
ClickBack(989,16)
Return

;Straighten Horizon
s::
ClickBack(1059,16)
;Sleep, 250
Return

;Zoom-to-fit
,::
ClickBack(814,16)
Sleep, 250
Return

;Zoom one-to-one
.::
ClickBack(850,16)
Sleep, 250
Return

;Retouch
h::
ClickBack(1227,16)
Sleep, 250
Return

;ReShape
z::
ClickBack(1195,16)
Sleep, 250
Return

;Local Adjustment - Brush
^b::
send l
Sleep, 250
send {shift down}n{shift up}
Sleep, 250
send {shift down}b{shift up}
Return

;Local Adjustment - Graduated Filter
^g::
send l
Sleep, 250
send {shift down}n{shift up}
Sleep, 250
send {shift down}g{shift up}
Return

;Local Adjustment - Control Point
^t::
send l
Sleep, 250
send {shift down}n{shift up}
Sleep, 250
send {shift down}c{shift up}
Return

;Local Adjustment - Control Line
^l::
send l
Sleep, 250
send {shift down}n{shift up}
Sleep, 250
send {shift down}l{shift up}
Return

;Local Adjustment - Auto Mask
^k::
send l
Sleep, 250
send {shift down}n{shift up}
Sleep, 250
send {shift down}a{shift up}
Return

;Shadows, Highlights
x::
send {ctrl down}{alt down}bw{alt up}{ctrl up}
Return

;F12 Modified (left panel)
F12::
toggle := !toggle
goto, % toggle ? “firstf12” : “secondf12”
return
;Firstf12
firstf12:
ClickBack(407,440)
; Sleep, 200
send {F12}
Return
;Secondf12
secondf12:
ClickBack(5,565)
; sleep, 125
send {F12}
Return

; — Functions
ClickBack(x,y,Clicks=1)
{
MouseGetPos Px, Py
Click, %x%, %y%, %Clicks%
Click %Px%, %Py%, 0
}

#IfWinActive

;Using percentages on the window and position to enable different position windows
;WinGetPos, winX, winY, winWidth, winHeight, A
;X := winWidth * 0.5
;Y := winHeight * 0.5
;Click %X% %Y%

;Maximised screen positions
;heal 1227 16
;level 1059
;crop 989
;377 1048
;zoom to fit 814
;1:1 850

===END

The first line: #IfWinActive ahk_exe DxO.PhotoLab.exe and its mate at the end of the active code: #IfWinActive ensures that the code is only active while PL6 is active.

On my installation, I have noted that sometimes it has been necessary to use a {send} rather than use a simple keypress. It has been necessary to get the code working, but in use, it seems to make no difference to the UI experience.

I have also noted that some keypresses don’t work if you string a number together - almost as if the AHK input process is too quick - so I have introduced some {Wait} times. Again, this is something that may not be needed in your cases, or the wait times may be different.

{down} / {up} coupled with any other keypress is used when a key needs to be held (eg: my ‘x’ to toggle shadow and highlight warning on/off}.

I use Windows MPos to get the mouse position.

I am still having problems with the Modified F12 script. It is a toggle that has to click on different screen positions on the Enable and Disable parts of the script - and while the script code works fine, it sometimes get out of sequence and clicks on the enable position when it is in the disable mode and I have not yet worked out how to resolve that one.

Good hunting. I have found that the User Forum support, seemingly supported by one person, is phenomenal. But if you use it, be clear what you want to achieve, paste code you have tried and if the person asks questions or makes suggestions, respond clearly to each point. You may see in some responses that he get tetchy and withdraws quickly if you don’t work with him. Responding with another ‘it doesn’t work’ will aggravate him.

Interested if you share your achievements so that I and others might learn from the experience.

Clive

This is really helpful, thank you. I’ll need to try and carve out a bit of time to get my head round it all, but it looks very promising for taking usability a step in the right direction.

When you install AHK, don’t go looking for an application to run as there isn’t one. It all works off the right-click context menu in Windows Explorer. Using your chosen text editor, create code or copy/paste mine to initially get going, then save the file as any-name.ahk - then right-click on that file and either run (in which case, it will load ahk and the code file) or choose compile (in which case it will generate an exe file). With an exe file you can automate things - either by running that file at Windows starup or by creating a batch file designed to load the exe then to run PL6. As I have satisfied myself that it is stable and does not interrupt other applications, and as it is tiny, I choose to run it at startup and forget about it.

Clive

1 Like

@ jko

I agree photolab would have a lot to do to get a modern, reactive and easy to get very precise result interface.

Some sliders are even near to not usable.
Have you tried to use the hue slider in local adjustment for example ?

And there are many concepts that have become commonplace in many professional softwares in order to simplify and allow customization and optimization of the workflow that photolab does not know or ignore.

@roadcone , well that’s been an interesting few days and a bit of a workout for my long-unused coding skills. Using your script I got some basics of how AHK worked. I then found a script that converted MIDI controller output to AHK shortcuts ( GitHub - RudyB24/AutoHotKey_Bome_MIDI_2_Key: AutoHotKey script that reads incoming MIDI messages and translates them into keyboard shortcuts for DaVinci Resolve. ). So now I have managed to get my Behringer XTouch Mini to operate, via AHK, as a (sort of) control for PL6. The buttons are mainly for going through the library, tagging, colour-coding, and rating the images. I have also managed to get the rotary controls to operate the sliders for highlights, shadows, etc. So long as the program window is always in the same place (or fullscreen), and the sliders are at the same screen co-ordinates, it works reasonably well - well-enough for what I need. It’s certainly not a universal solution but allows me to do what I want for 90% of my editing.

@jko : I am pleased that you have made sufficient progress to get ‘mostly’ there. I think ‘mostly’ was as far as you could have hoped as there are some things that are insurmountable obstacles in PL6. Since they don’t have any form of shortcut for the adjustment sliders, but only proximity use with the mouse, the co-ordinate approach, while it works, does rely on the sliders always being in the same place. I can achieve that with the menu and tools along the top so long as the screen is maximised (and it usually is) but the adjustments scroll up and down and because so much depends on the image, it is not the case that the same tools will always be maximised.

This is one of CO’s great strengths - what they term their Speed Edit Keys, where a key is held and the mouse scroll rotated to effect the adjustment. That, coupled with the ability to use AHK to enable changing brush size and feathering with a held key-press (I use the otherwise unused key to the left of the number 1 key on the second row beneath the Esc) and the mouse position movement (I use a trackball so it is the thumb-ball). Then combinations such as H for Heal and Alt+H for Heal but on a new layer and it really is very functional. Shame I cannot get very much closer with PL6.

Anyway, glad you got close and good luck with it all.

Clive