Skip to content

Commit

Permalink
Merge pull request #7 from tomoyukikashiro/v1.4
Browse files Browse the repository at this point in the history
Update to v1.4 by chrismessina
  • Loading branch information
tomoyukikashiro committed Oct 16, 2020
2 parents f99be88 + 81ceda4 commit f17bcb4
Show file tree
Hide file tree
Showing 4 changed files with 154 additions and 12 deletions.
Binary file added 6540BABD-D92D-4357-AD27-525BB38CE8C1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
# Alfred Workflow For Dropbox Paper

Type `dp` to run !
Type `paper` to run !

[![Image from Gyazo](https://i.gyazo.com/648a3cd9f00d1722d52419e16d184985.gif)](https://gyazo.com/648a3cd9f00d1722d52419e16d184985)
[![Image from Gyazo](https://i.gyazo.com/7c61f94e0ed3f5ed19ce4aeed12351ff.gif)](https://gyazo.com/7c61f94e0ed3f5ed19ce4aeed12351ff)

## Attention
This workflow only support Alfred 3 (not support v2).
Expand Down
Binary file removed icon.png
Binary file not shown.
162 changes: 152 additions & 10 deletions info.plist
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@
<dict>
<key>bundleid</key>
<string>me.tomoyukikashiro.dropbox-paper-finder</string>
<key>category</key>
<string>Internet</string>
<key>connections</key>
<dict>
<key>6540BABD-D92D-4357-AD27-525BB38CE8C1</key>
Expand All @@ -18,6 +20,16 @@
<key>vitoclose</key>
<false/>
</dict>
<dict>
<key>destinationuid</key>
<string>236C5A94-1439-4E6A-B18B-94BA8B3DB9C3</string>
<key>modifiers</key>
<integer>1048576</integer>
<key>modifiersubtext</key>
<string>Copy link to clipboard</string>
<key>vitoclose</key>
<false/>
</dict>
</array>
</dict>
<key>createdby</key>
Expand Down Expand Up @@ -56,14 +68,16 @@
<false/>
<key>alfredfiltersresultsmatchmode</key>
<integer>0</integer>
<key>argumenttreatemptyqueryasnil</key>
<false/>
<key>argumenttrimmode</key>
<integer>0</integer>
<key>argumenttype</key>
<integer>0</integer>
<key>escaping</key>
<integer>102</integer>
<key>keyword</key>
<string>dp</string>
<string>paper</string>
<key>queuedelaycustom</key>
<integer>3</integer>
<key>queuedelayimmediatelyinitially</key>
Expand All @@ -73,7 +87,7 @@
<key>queuemode</key>
<integer>1</integer>
<key>runningsubtext</key>
<string>Loading</string>
<string>Loading...</string>
<key>script</key>
<string>query=`echo $1 | iconv -f UTF-8-MAC -t UTF-8`
python main.py $query</string>
Expand All @@ -84,7 +98,7 @@ python main.py $query</string>
<key>subtext</key>
<string></string>
<key>title</key>
<string>search dropbox paper</string>
<string>Search Dropbox Paper for {query}</string>
<key>type</key>
<integer>0</integer>
<key>withspace</key>
Expand All @@ -95,26 +109,154 @@ python main.py $query</string>
<key>uid</key>
<string>6540BABD-D92D-4357-AD27-525BB38CE8C1</string>
<key>version</key>
<integer>3</integer>
</dict>
<dict>
<key>config</key>
<dict>
<key>concurrently</key>
<false/>
<key>escaping</key>
<integer>0</integer>
<key>script</key>
<string># THESE VARIABLES MUST BE SET. SEE THE ONEUPDATER README FOR AN EXPLANATION OF EACH.
readonly remote_info_plist='https://github.com/tomoyukikashiro/dropbox-paper-alfred-workflow/releases/latest/info.plist?raw=true'
readonly workflow_url='https://github.com/tomoyukikashiro/dropbox-paper-alfred-workflow/Dropbox Paper Finder.alfredworkflow?raw=true'
readonly download_type='direct'
readonly frequency_check='30'
# FROM HERE ON, CODE SHOULD BE LEFT UNTOUCHED!
function abort {
echo "${1}" &gt;&amp;2
exit 1
}
function url_exists {
curl --silent --location --output /dev/null --fail --range 0-0 "${1}"
}
function notification {
local -r notificator="$(find . -type d -name 'Notificator.app')"
if [[ -n "${notificator}" ]]; then
"${notificator}/Contents/Resources/Scripts/notificator" --message "${1}" --title "${alfred_workflow_name}" --subtitle 'A new version is available'
return
fi
local -r terminal_notifier="$(find . -type f -name 'terminal-notifier')"
if [[ -n "${terminal_notifier}" ]]; then
"${terminal_notifier}" -title "${alfred_workflow_name}" -subtitle 'A new version is available' -message "${1}"
return
fi
osascript -e "display notification \"${1}\" with title \"${alfred_workflow_name}\" subtitle \"A new version is available\""
}
# Local sanity checks
readonly local_info_plist='info.plist'
readonly local_version="$(/usr/libexec/PlistBuddy -c 'print version' "${local_info_plist}")"
[[ -n "${local_version}" ]] || abort 'You need to set a workflow version in the configuration sheet.'
[[ "${download_type}" =~ ^(direct|page|github_release)$ ]] || abort "'download_type' (${download_type}) needs to be one of 'direct', 'page', or 'github_release'."
[[ "${frequency_check}" =~ ^[0-9]+$ ]] || abort "'frequency_check' (${frequency_check}) needs to be a number."
# Check for updates
if [[ $(find "${local_info_plist}" -mtime +"${frequency_check}"d) ]]; then
if ! url_exists "${remote_info_plist}"; then abort "'remote_info_plist' (${remote_info_plist}) appears to not be reachable."; fi # Remote sanity check
readonly tmp_file="$(mktemp)"
curl --silent --location --output "${tmp_file}" "${remote_info_plist}"
readonly remote_version="$(/usr/libexec/PlistBuddy -c 'print version' "${tmp_file}")"
if [[ "${local_version}" == "${remote_version}" ]]; then
touch "${local_info_plist}" # Reset timer by touching local file
exit 0
fi
if [[ "${download_type}" == 'page' ]]; then
notification 'Opening download page…'
open "${workflow_url}"
exit 0
fi
download_url="$([[ "${download_type}" == 'github_release' ]] &amp;&amp; curl --silent "https://api.github.com/repos/${workflow_url}/releases/latest" | grep 'browser_download_url' | head -1 | sed -E 's/.*browser_download_url": "(.*)"/\1/' || echo "${workflow_url}")"
if url_exists "${download_url}"; then
notification 'Downloading and installing…'
curl --silent --location --output "${HOME}/Downloads/${alfred_workflow_name}.alfredworkflow" "${download_url}"
open "${HOME}/Downloads/${alfred_workflow_name}.alfredworkflow"
else
abort "'workflow_url' (${download_url}) appears to not be reachable."
fi
fi</string>
<key>scriptargtype</key>
<integer>1</integer>
<key>scriptfile</key>
<string></string>
<key>type</key>
<integer>0</integer>
</dict>
<key>type</key>
<string>alfred.workflow.action.script</string>
<key>uid</key>
<string>69151B9E-78B4-4224-8FE0-F7EE87DB7BC9</string>
<key>version</key>
<integer>2</integer>
</dict>
<dict>
<key>config</key>
<dict>
<key>autopaste</key>
<true/>
<key>clipboardtext</key>
<string>{query}</string>
<key>ignoredynamicplaceholders</key>
<false/>
<key>transient</key>
<false/>
</dict>
<key>type</key>
<string>alfred.workflow.output.clipboard</string>
<key>uid</key>
<string>236C5A94-1439-4E6A-B18B-94BA8B3DB9C3</string>
<key>version</key>
<integer>3</integer>
</dict>
</array>
<key>readme</key>
<string></string>
<string>Search for and open Dropbox Paper documents from within Alfred!</string>
<key>uidata</key>
<dict>
<key>6540BABD-D92D-4357-AD27-525BB38CE8C1</key>
<key>236C5A94-1439-4E6A-B18B-94BA8B3DB9C3</key>
<dict>
<key>xpos</key>
<integer>235</integer>
<key>ypos</key>
<integer>230</integer>
</dict>
<key>6540BABD-D92D-4357-AD27-525BB38CE8C1</key>
<dict>
<key>xpos</key>
<integer>35</integer>
<key>ypos</key>
<integer>300</integer>
<integer>85</integer>
</dict>
<key>69151B9E-78B4-4224-8FE0-F7EE87DB7BC9</key>
<dict>
<key>colorindex</key>
<integer>12</integer>
<key>note</key>
<string>OneUpdater</string>
<key>xpos</key>
<integer>565</integer>
<key>ypos</key>
<integer>85</integer>
</dict>
<key>AEFAE652-536F-4AB8-B1E9-EEE87EB53D3F</key>
<dict>
<key>xpos</key>
<integer>430</integer>
<integer>235</integer>
<key>ypos</key>
<integer>170</integer>
<integer>80</integer>
</dict>
</dict>
<key>variables</key>
Expand All @@ -127,8 +269,8 @@ python main.py $query</string>
<string>token</string>
</array>
<key>version</key>
<string></string>
<string>1.4</string>
<key>webaddress</key>
<string></string>
<string>https://github.com/tomoyukikashiro/dropbox-paper-alfred-workflow</string>
</dict>
</plist>

0 comments on commit f17bcb4

Please sign in to comment.