0

enter image description hereI've read another post that seemed to address how to use Automator to open screenshots automatically. (Automator task to open screenshots in Preview automatically) I've followed the steps exactly, but the last step still doesn't work (opening the screenshot in Preview)

So, I'm stuck. I really want the easiest solution to get Preview to open after I take an Interactive or Full Screenshot. I thought this may be it but...

enter image description here

  • The question that you linked saves the screenshot to a file, not the clipboard as in your screenshot. – tubedogg Oct 6 '16 at 23:32
  • I now see that it saves to a file...but I really want it to open into Preview automatically after I take the screenshot. That last step doesn't work for some reason...at least not in "real practice". It works great when I run the script, just not when I actually take a screen shot outside of the Automator – gbigs Oct 6 '16 at 23:47
0

After playing with it a little bit I couldn't get the process to work as listed in your screenshot, either. Here's a flow which works - in fact, it took the screenshot below. Note that you need to set this up as a service in order to assign it a keyboard shortcut. (Create a new Automator workflow and select Service as the document type.) Otherwise, if you save it as an app, you have to run the app every time you want to take a screenshot.

Once you have saved your workflow as a service, go to System Preferences > Keyboard > Shortcuts and select Services on the left-hand side, then scroll down on the right to find your service and set a keyboard shortcut.

enter image description here

  • Awesome @Tubedogg!! One more question for you re: the "Save to" field. The normal screenshot shortcut produced a sequential filename (ie, screenshot1, screenshot2, etc), but this appears like I can only have the most recent screenshot, since all screenshots have the same name. I take a ton of screenshots, so any advice to make the names sequential? – gbigs Oct 7 '16 at 14:50
0

To address your comment, and the overall question, here is how I'd automate the whole process.

I'd use the screencapture command line utility in a Run Shell Script action instead of using the Take Screenshot and Open Images in Preview actions. For more information about the screencapture command line utility read its manual page.

The example code produces a filename same as the default when using standard keyboard shortcuts while placing it on the Desktop.

cd "$HOME/Desktop"
screenShot="Screen Shot $(date "+%Y-%m-%d") at $(date "+%H.%M.%S").png"
screencapture -i -P "$screenShot"
  • cd "$HOME/Desktop" can be any valid location you'd like.
  • screenShot="Screen Shot $(date "+%Y-%m-%d") at $(date "+%H.%M.%S").png" the screenShot variable forms the filename to be saved to. $(date "+%Y-%m-%d") will be e.g. 2016-10-06 and $(date "+%H.%M.%S") will be e.g 21.23.07 and the filename would then be, e.g.: Screen Shot 2016-10-07 at 21.23.07.png, just as if you used the default standard keyboard shortcuts.

  • screencapture -i -P "$screenShot", -i runs screencapture interactively, by selection or window. The control key will cause the screen shot to go to the clipboard. The space key will toggle between mouse selection and window selection modes. The escape key will cancel the interactive screen shot. -P Open the taken picture in a Preview window.

Note that you can modify the options of the screencapture command if you want it to behave differently then the example code. Also, if pressing the control key, which places the screen shot on the Clipboard, it will not then be opened in Preview.


enter image description here

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .