I revisited this hint recently. This script should be compatible with Tiger and higher system versions. It tries to make tandem windows from bottom of the screen up from the first two eligible Finder windows. If only one eligible window is available, it uses that one and creates another, and if no eligible windows are available, it creates and arranges two. It doesn't respect Spaces, so if a single eligible window exists, the existing window and the new window may end up in different spaces.

Here is the modified script. You can save it to ~/Library/Scripts/Applications/Finder to make it available from the AppleScript menu. You may need to create the Finder folder.

set danswer to (do shell script "/usr/sbin/system_profiler SPDisplaysDataType | grep Resolution")
set monitor_width to (word 2 of danswer) div 1
set monitor_height to (word 4 of danswer) div 1
set hit1 to false
set hit2 to false
tell application "Finder"
activate
set window_count to the count of windows
repeat with i from 1 to window_count
try
if not hit1 then
set the current view of window i to column view
set the bounds of window i to {0, ((monitor_height * 0.33) div 1 - 23), monitor_width, (monitor_height * 0.66) div 1 - 23}
set hit1 to true
if not hit2 then
set the current view of onenewwin to column view
set the bounds of onenewwin to {0, (monitor_height * 0.66) div 1, monitor_width, monitor_height}
set hit2 to true
exit repeat
end if
else
set the current view of window i to column view
set the bounds of window i to {0, (monitor_height * 0.66) div 1, monitor_width, monitor_height}
set hit2 to true
exit repeat
end if
end try
end repeat
if hit1 and hit2 then
else if hit1 then
set newwin to make new Finder window
set the current view of newwin to column view
set the bounds of newwin to {0, (monitor_height * 0.66) div 1, monitor_width, monitor_height}
else if not hit1 and not hit2 then
set onehit to 2
set onenewwin to make new Finder window
set the current view of onenewwin to column view
set the bounds of onenewwin to {0, ((monitor_height * 0.33) div 1 - 23), monitor_width, (monitor_height * 0.66) div 1 - 23}
set twonewwin to make new Finder window
set the current view of twonewwin to column view
set the bounds of twonewwin to {0, (monitor_height * 0.66) div 1, monitor_width, monitor_height}
end if
end tell

[crarko adds: I tested it in 10.6.4, and it works as described. The AppleScript source is mirrored here.]

I think Cinch lets you use a mouse gesture to resize a window so that it takes up either half your screen horizontally so you can quickly resize two windows to occupy the entire screen side by side. The two windows can be from any application and don't have to be from the same one. Cinch isn't free, though.

I'd like to see this with vertical windows, side by side, list view. I managed to get list view to work, but not vertical windows, with an offset to push them out 40 pixels from the left, to accommodate the dock on the left.

set danswer to (do shell script "/usr/sbin/system_profiler SPDisplaysDataType | grep Resolution")
set monitor_width to (word 2 of danswer) div 1
set monitor_height to (word 4 of danswer) div 1
set hit1 to false
set hit2 to false
tell application "Finder"
activate
set window_count to the count of windows
repeat with i from 1 to window_count
try
if not hit1 then -- place first window / left
set the current view of window i to list view
set the bounds of window i to {40, 0, (monitor_width * 0.5) div 1 + 20, monitor_height}
set hit1 to true
if not hit2 then -- place second window / right
set the current view of onenewwin to list view
set the bounds of onenewwin to {(monitor_width * 0.5) div 1 + 20, 0, monitor_width, monitor_height}
set hit2 to true
exit repeat
end if
else -- if first window already placed - proceed with second / right window
set the current view of window i to list view
set the bounds of window i to {(monitor_width * 0.5) div 1 + 20, 0, monitor_width, monitor_height}
set hit2 to true
exit repeat
end if
end try
end repeat
if hit1 and hit2 then -- both windows already placed -> exit
else if hit1 then -- first / left window already placed - create second / right
set newwin to make new Finder window
set the current view of newwin to list view
set the bounds of newwin to {(monitor_width * 0.5) div 1 + 20, 0, monitor_width, monitor_height}
else if hit2 then -- second / right window already placed - create first / left
set newwin to make new Finder window
set the current view of newwin to list view
set the bounds of newwin to {40, 0, (monitor_width * 0.5) div 1 + 20, monitor_height}
else if not hit1 and not hit2 then -- create two new windows
set onehit to 2
set onenewwin to make new Finder window
set the current view of onenewwin to list view
set the bounds of onenewwin to {40, 0, (monitor_width * 0.5) div 1 + 20, monitor_height}
set twonewwin to make new Finder window
set the current view of twonewwin to list view
set the bounds of twonewwin to {(monitor_width * 0.5) div 1 + 20, 0, monitor_width, monitor_height}
end if
end tell

btw - there is a bug with creating the second window, if one already exists .. its this part from the code above (added to modified original hint):

...

else if hit2 then -- second / right window already placed - create first / left
set newwin to make new Finder window
set the current view of newwin to list view
set the bounds of newwin to {40, 0, (monitor_width * 0.5) div 1 + 20, monitor_height}

...

Big question .. this is the first time for me posting code here. .. how to format it?? It's really a pain using html "br"s all over the place...
Thanks