i wanted to have a quick way while in finder to change directories via keyboard.
I couldnt find anyway way in KM or in the finders keybinds to do it , so up with this uber crude way:
anyone can think of a better way of doing so without multiple binds+pauses
also would be cool to maybe create a pre defined list of places and use that for changing dir, copying to the predefined locations etc..anyone know of such an example?
@JimmyHartington..wow!!!!
this is the stuff dreams are made of lol
thx so much. in a related question then, can one use this to instead open a path rather move a selected file to one of the targets in that list you presented?
I see you're trying to change the directory of the front Finder window.
AppleScript makes that pretty easy.
----------------------------------------------------------------
# Auth: Christopher Stone
# dCre: 2019/01/09 16:27
# dMod: 2019/01/09 16:27
# Appl: Finder
# Task: Change the Target of the Front Finder Window
# Libs: None
# Osax: None
# Tags: @Applescript, @Script, @Finder, @Change, @Target, @Front, @Window
----------------------------------------------------------------
set newTarget to path to downloads folder
tell application "Finder"
if window 1 exists then
tell window 1
if (its target as alias) ≠ newTarget then
set its target to newTarget
else
beep 2
end if
end tell
end if
end tell
----------------------------------------------------------------
Jimmy's “Open folder” macro could easily be repurposed to do this as well.
The good news is that I just tried it again, to verify the error message, and the darn thing worked. Have tried it twice more and it works. So I'm at a loss as to why it repeatedly failed before. I tried it at least 10 times before and it failed every time, no matter what folder I tried.
I find this AppleScript super useful, but realized that it throws an error if the finder is showing "Recents" ... probably because it's not really a real folder.
I updated the AppleScript to make it work ...
set newTarget to "Mac HD:Users:UserName:Downloads:"
tell application "Finder"
if window 1 exists then
tell window 1
if (its target as string) is equal to "" then --my additon to code
set its target to newTarget
else if (its target as alias) ≠ newTarget then --added an "else" to beginning
set its target to newTarget
else
beep 2
end if
end tell
end if
end tell
Here's a new and improved version of my script above.
-Chris
--------------------------------------------------------
# Auth: Christopher Stone <scriptmeister@thestoneforge.com>
# dCre: 2019/01/09 16:27
# dMod: 2021/01/25 14:18
# Appl: Finder
# Task: Change the Target of the Front Finder Window (Improved).
# Libs: None
# Osax: None
# Tags: @Applescript, @Script, @Finder, @Change, @Target, @Front, @Window
# Vers: 2.0
--------------------------------------------------------
# Never use a hard-coded path unless you have to.
# They're fragile and break when you least want them to.
set newTargetAlias to path to downloads folder as text
tell application "Finder"
if exists of window 1 then
tell window 1
set windowTargetPathHFS to its target as text
if (windowTargetPathHFS = "") or (windowTargetPathHFS ≠ newTargetAlias as text) then
set its target to newTargetAlias as alias
else
display notification linefeed & (newTargetAlias as text) & linefeed ¬
with title "Front Window Location already set to:" sound name "Tink"
end if
end tell
else
set newFinderWindow to make new Finder window
tell newFinderWindow
set its target to newTargetAlias
set its bounds to {488, 23, 1432, 1196}
if toolbar visible = false then set toolbar visible to true
end tell
end if
end tell
--------------------------------------------------------