Copy link to clipboard
Copied
I just switched over from PHOTO MECHANIC - And it does this cool file sort feature when you look at your camera card, it shows you RAW and JPG with the same file name as one... which makes selecting your finals quicker. I can't figure out how to do this in Adobe Bridge 2020.
Can anyone tell me how this is done please?
I found a 'Auto Stack' selection under 'Stacks' but it just crashes my Mac without doing anything lol.
Any help most appreciated thankyou.
Bridge does not have this feature. It could be scripted if you wanted to write a script to do so.
I threw together a basic script to get you started. This works in MINIMAL testing but may have bugs! Posting as-is.
Save this script as a PLAIN TEXT file with a .jsx extension. Open Bridge Preferences->Startup Scripts and click the Reveal button. Drag the .jsx file into the folder and relaunch Bridge. The script will be in your Tools menu.
To use, navigate for a folder with RAW + JPEG files and select the script in Tools.
#target bridge
if(BridgeTalk.appName == 'bridge'){
var StackCmd = Menu
I'm a bit of a novice about Bridge, but this is what I found (v 14.0):
I don't see that you need this stack feature, as Bridge seems to manage identical twin image files (e.g. myphoto.raw and myphoto.jpeg) in the background as a single "myphoto" without any need for user intervention:
where you load a photo with twin image files (JPEG & RAW) into Bridge and sort the RAW image in the central window, Bridge will manage both these files as a single "photo" (not manage the JPEG and RAW image files sep
...Copy link to clipboard
Copied
Bridge does not have this feature. It could be scripted if you wanted to write a script to do so.
Copy link to clipboard
Copied
I threw together a basic script to get you started. This works in MINIMAL testing but may have bugs! Posting as-is.
Save this script as a PLAIN TEXT file with a .jsx extension. Open Bridge Preferences->Startup Scripts and click the Reveal button. Drag the .jsx file into the folder and relaunch Bridge. The script will be in your Tools menu.
To use, navigate for a folder with RAW + JPEG files and select the script in Tools.
#target bridge
if(BridgeTalk.appName == 'bridge'){
var StackCmd = MenuElement.create('command', 'Stack RAW + JPEG', 'at the end of Tools');
}
StackCmd.onSelect = function(){
try{
var thumbs = app.document.thumbnail.children;
var baseName = '';
var baseLen = 0;
for(var i = 0; i < thumbs.length; i++){
if(thumbs[i].core.itemContent.canDoCameraRaw){
baseName = thumbs[i].name.split('.');
baseLen = baseName.length - 1;
if(baseName[baseLen] != 'jpg'){
baseName.length--;
baseName = baseName.join('.');
for(var j = 0; j < thumbs.length; j++){
if(thumbs[j].name == baseName + '.jpg'){
app.document.select(thumbs[i]);
app.document.select(thumbs[j]);
app.document.chooseMenuItem('StackGroup');
app.document.deselectAll();
}
}
}
}
}
}
catch(e){
alert(e + ' ' + e.line);
}
}
Copy link to clipboard
Copied
Thanks Lumigraphics I did find scripts of this nature like this - but they were from 10 years ago, I thought surely Adobe would have built this by now into their Photo File Managment Software?
Are there really only a few people that find this feature useful lol?
Thanks for your script I'll give it a crack.
Copy link to clipboard
Copied
Thanks for this. Carried it all out as per your advice and the file 'raw stack.jsx' is definitely in my start up scripts folder but when I reopen Bridge there is nothing under 'Tools'; am I missing something obvious here?
Copy link to clipboard
Copied
I'm assuming you're on a Mac and you created the script file with TextEdit. If so, the issue is that it's probably saved the script with a double extension - if you look at it in Terminal it will probably be called "raw stack.jsx.txt" - NB this happens even if you save the script as plain text (cmd-shift-T) and specify the "If no extension is provided, use txt" option in TextEdit.
Probably the quickest way to solve this is the rename the file using Terminal.
The file on a Mac is stored here:
/Users/YourUserName/Library/Application Support/Adobe Bridge 2021/Startup Scripts
(replace YourUserName with the name of your home directory)
Open a Terminal window, navigate to the Startup Scripts folder (put the folder names that have spaces in them in double quotes) and then rename the file.
So, if the file is called "raw stack.jsx.txt" the command would be mv "raw stack.jsx.txt" "raw stack.jsx"
There might be a similar fix for Windows but it's been a while since I've used that OS. I remember Notepad used to do a similar thing with text files...
Copy link to clipboard
Copied
Copy link to clipboard
Copied
You have to save it as PLAIN TEXT not RTF.
Copy link to clipboard
Copied
Thanks heaps - that now works a treat
Copy link to clipboard
Copied
Copy link to clipboard
Copied
Thanks so much for posting this -- I've done everything suggested in this thread (was on a Mac so I had to make sure it didn't have a double extension etc...), but when I select a folder and then run it, it doesn't do anything. If I select a few photos and run it, it seems to remove them rather than stack them. Any ideas for me? This would save me a boatload of time if i can get it to work!
Copy link to clipboard
Copied
I'm actually using a different script for this (Bridge 2021, Big Sur) - this is pretty old, I think I found it on DPReview, all credit to the original author. As always, test it on a bunch of photos you have a backup of. In general, most of these scripts aren't super-speedy so do it with a handful of files first...
(NB it assumes that the jpgs are a .jpg extension, which should be the case but you might need to change it if your camera writes them as .jpeg)
#target bridge
if( BridgeTalk.appName == "bridge" ) {
AutoStack = MenuElement.create("command", "Auto Stack", "at the beginning of submenu/Stack", "zx1");
}
AutoStack.onSelect = function () {
stackEm();
}
function stackEm(){
app.document.sorts = [{ name:"name",type:"string", reverse:false}];
var jpgs = Folder(app.document.presentationPath).getFiles ("*.jpg");
app.document.deselectAll();
for(var a in jpgs){
var Name = decodeURI(jpgs[a].name).replace(/\.[^\.]+$/, '');
var stacks = Folder(app.document.presentationPath).getFiles(Name+".*");
if(stacks.length < 2) continue;
for(var z in stacks){ app.document.select(new Thumbnail(stacks[z]));}
StackFiles();
app.document.deselectAll();
}
function StackFiles(){
app.document.chooseMenuItem('submenu/Stack');
app.document.chooseMenuItem('StackGroup');
}
}
Copy link to clipboard
Copied
That worked! Thanks so much! Now if I could just figure out how to delete the entire stack with one click I'd be golden!
Copy link to clipboard
Copied
presentationPath has some problems with certain folders, just be aware of that.
Copy link to clipboard
Copied
Copy link to clipboard
Copied
This is my finalized version, save as PLAIN TEXT:
/*
Utility Pack Scripts created by David M. Converse ©2018-21
This script autostacks RAW+JPEG
Last modifed 6/7/2021
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/
#target bridge
if(BridgeTalk.appName == 'bridge'){
var StackCmd = MenuElement.create('command', 'Stack RAW + JPEG', 'at the end of Tools'); //create new menu command
}
StackCmd.onSelect = function(){
try{
var thumbs = app.document.thumbnail.children;
var baseName = '';
var baseLen = 0;
for(var i = 0; i < thumbs.length; i++){
if(thumbs[i].core.itemContent.canDoCameraRaw){
baseName = thumbs[i].name.split('.');
baseLen = baseName.length - 1;
if(baseName[baseLen] != 'jpg'){
baseName.length--;
baseName = baseName.join('.');
for(var j = 0; j < thumbs.length; j++){
if(thumbs[j].name == baseName + '.jpg'){
app.document.select(thumbs[i]);
app.document.select(thumbs[j]);
app.document.chooseMenuItem('StackGroup');
app.document.deselectAll();
}
}
}
}
}
}
catch(e){
alert(e + ' ' + e.line);
}
}
Copy link to clipboard
Copied
Great, thanks, at least I see it in the tools now but when I run it nothing happens. Any advice? Thanks again!
Copy link to clipboard
Copied
Yeah, you need to select some matching RAW and JPEG files.
Copy link to clipboard
Copied
That's what I've been doing but nothing happens...I'll keep trying...
Copy link to clipboard
Copied
I'll test it tomorrow but it should work fine.
Copy link to clipboard
Copied
I just tested this and it works fine. All paired files in a folder will be stacked, you don't even need to select anything.
Copy link to clipboard
Copied
I must have done something wrong. Thanks for testing
Copy link to clipboard
Copied
On a PC in C:\Users\tbd\AppData\Roaming\Adobe\Bridge 2020\Startup Scripts-
.txt file is not recognized
.jsx file loads but does not run
Copy link to clipboard
Copied
Scripts must be saved as plain text with .jsx extension. Bridge will ask whether to allow a new script.
Copy link to clipboard
Copied
Thank you already for your work! But I have the same problem:
- I opened a new TXT file with notepad++, copied the script and saved it as .JSX
- Then I moved the file to %APPDATA%\Adobe\Bridge 2021\Startup Scripts
- Restarted Bridge
- Bridge asked me to activate the new Script. I said "yes"
- Now in the menu tools, I have the new option "Stack RAW + JPEG" (I hope it's called tools in English. In my German version, the menu is called "Werkzeuge" 😄 )
It doesn't matter whether I select the pictures first or not - when I click on the new option, nothing happens 😞