View Single Post
Old 08-14-2012, 04:31 PM   #136
GRiker
Comparer of the Ephemeris
GRiker ought to be getting tired of karma fortunes by now.GRiker ought to be getting tired of karma fortunes by now.GRiker ought to be getting tired of karma fortunes by now.GRiker ought to be getting tired of karma fortunes by now.GRiker ought to be getting tired of karma fortunes by now.GRiker ought to be getting tired of karma fortunes by now.GRiker ought to be getting tired of karma fortunes by now.GRiker ought to be getting tired of karma fortunes by now.GRiker ought to be getting tired of karma fortunes by now.GRiker ought to be getting tired of karma fortunes by now.GRiker ought to be getting tired of karma fortunes by now.
 
Posts: 1,497
Karma: 424627
Join Date: Mar 2009
Device: iPad
Using the Open With plugin to launch Kindle Previewer (OS X)

The most recent version of the Open With plugin has the ability to run shell scripts instead of apps under OS X. Why does this matter?

The Kindle Previewer app does a nice job of simulating the various Kindle devices, but, infuriatingly, it does not accept a file to open as an argument under OS X. I finally decided to solve this annoyance.

You can now use Open With to open Kindle Previewer with any of the file types it supports. I only care about MOBI and AZW3.

Here's how to do it.

1) Create a text file with the following contents:

Code:
#!/bin/sh
# Execute Applescript telling Kindle Previewer to open passed file
# This file should be saved to /usr/bin/launch_kindle_previewer, 
# then set as executable from Terminal by typing
# cd /usr/bin
# chmod +x launch_kindle_previewer
osascript <<EOF
tell application "Kindle Previewer" to activate
tell application "System Events"
    tell process "Kindle Previewer"
        keystroke "o" using command down
        keystroke "$1"
        keystroke return
        (* Allow time for the filespec to be entered. Increase delay if file not opened *)
        delay 3
        (* Close the dialog by pressing the Open button *)
        keystroke return
        (* Go to beginning - removes banner *)
        keystroke "s" using command down
    end tell
end tell
EOF
Save this file to /usr/bin/launch_kindle_previewer. This is the same directory where calibre stores its command line tools.

2) Set permissions on the file so that it can be executed. The following code assumes you're currently in /usr/bin:
Code:
chmod +x launch_kindle_previewer
3) Open the Customize Open With dialog. Add a new entry for format MOBI, and a second entry for format AZW3. In the Application Path column, type:
Code:
/usr/bin/launch_kindle_previewer
The matching format of the currently selected book will be passed to the shell script you created above when invoked from the Open With plugin.

4) You can also add the matching icon to Open With (attached below).

Have fun watching AppleScript jam keystrokes down Kindle Previewer's throat.

If the dialog opens but the Open key is not activated, try increasing the delay value.

G
Attached Images
 

Last edited by GRiker; 08-16-2012 at 09:08 AM.
GRiker is offline   Reply With Quote