From 3f177c7e9b5253ef22c4364974497a39b4c8d741 Mon Sep 17 00:00:00 2001 From: Thiago Holanda Date: Wed, 13 Dec 2023 16:23:37 +0100 Subject: [PATCH 001/146] Update ARGUMENTS.md Small fixes to the `data` row --- documentation/ARGUMENTS.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/documentation/ARGUMENTS.md b/documentation/ARGUMENTS.md index cb240375e..e9d34d296 100644 --- a/documentation/ARGUMENTS.md +++ b/documentation/ARGUMENTS.md @@ -12,7 +12,7 @@ The value of the argument metadata parameter should be valid json with these fie | placeholder | Placeholder for the input field. | ✅ | 1.2.0+ | | optional | Set to `true` if you want to mark the argument as optional. When not provided, the argument is considered to be required (Raycast will not allow executing the script if the argument input is empty) | | 1.3.0+ | | percentEncoded | Set to `true` if you want Raycast to perform percent-encoding on the argument value before passing it to the script. Can be handy for scripts that pass the argument directly to URL query | | 1.4.0+ | -| data | An array of objects with `title` and `value` properties, e.g.: `[{"title": "Item 1", "value": "1"}]| ✅ when `type`is`dropdown`. | +| data | An array of objects with `title` and `value` properties, e.g.: `[{"title": "Item 1", "value": "1"}]` | ✅ when `type` is `dropdown`. | 1.64.0+ | | ~~secure~~ | Deprecated in favor of `"type" = "password"` | | 1.18.0+ | 💡 **Maximum number of arguments:** 3 (if you have a use case that requires more, please let us know via feedback or in the [Slack community](https://www.raycast.com/community)) From 3f3e71ddbd375d1108afcbce96e70e6cd9002784 Mon Sep 17 00:00:00 2001 From: Zach Dawson Date: Fri, 22 Dec 2023 08:19:14 -0600 Subject: [PATCH 002/146] Create reset-launchpad.sh (#895) * Create reset-launchpad.sh * Update commands/system/reset-launchpad.sh --- commands/system/reset-launchpad.sh | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 commands/system/reset-launchpad.sh diff --git a/commands/system/reset-launchpad.sh b/commands/system/reset-launchpad.sh new file mode 100644 index 000000000..5df20819d --- /dev/null +++ b/commands/system/reset-launchpad.sh @@ -0,0 +1,18 @@ +#!/bin/bash + +# Required parameters: +# @raycast.schemaVersion 1 +# @raycast.title Reset Launchpad +# @raycast.mode silent + +# Optional parameters: +# @raycast.icon 🚀 +# @raycast.packageName System + +# Documentation: +# @raycast.description Resets the macOS Launchpad to its default state +# @raycast.author Zach Dawson +# @raycast.authorURL https://raycast.com/zdawz + +defaults write com.apple.dock ResetLaunchPad -bool true +killall Dock From cb8ca31e53219d3b6a4ddc4c71b078be0911be98 Mon Sep 17 00:00:00 2001 From: Raycast Bot Date: Fri, 22 Dec 2023 14:21:54 +0000 Subject: [PATCH 003/146] Set scripts as executable --- commands/system/reset-launchpad.sh | 0 1 file changed, 0 insertions(+), 0 deletions(-) mode change 100644 => 100755 commands/system/reset-launchpad.sh diff --git a/commands/system/reset-launchpad.sh b/commands/system/reset-launchpad.sh old mode 100644 new mode 100755 From 3335fbbf3d4931f79ca6f6696e8a67a124ac6389 Mon Sep 17 00:00:00 2001 From: Raycast Bot Date: Fri, 22 Dec 2023 14:22:56 +0000 Subject: [PATCH 004/146] Update Script Commands documentation --- commands/README.md | 1 + commands/extensions.json | 60 +++++++++++++++++++++++++++++----------- 2 files changed, 45 insertions(+), 16 deletions(-) diff --git a/commands/README.md b/commands/README.md index 509395197..51dc70283 100644 --- a/commands/README.md +++ b/commands/README.md @@ -1465,6 +1465,7 @@ This repository contains sample commands and documentation to write your own one | 💥 | [Quit All Applications](system/quit-all-apps.swift) | Quits all running applications except Finder and Raycast. | Raycast | | | | | 💥 | [Quit app](system/quit-app.swift) | Quits an app, by name or process id. | [Roland Leth](https://runtimesharks.com) | ✅ | | | | 🖼️ | [Refresh Wallpaper](system/wallpaper-refresh.applescript) | Apply a random image from the [wallpaper directory](https://support.apple.com/guide/mac-help/change-your-desktop-picture-mchlp3013/mac) for the main display's current [Space](https://support.apple.com/guide/mac-help/work-in-multiple-spaces-mh14112/mac). | [Caleb Stauffer](https://github.com/crstauf) | | | | + | 🚀 | [Reset Launchpad](system/reset-launchpad.sh) | Resets the macOS Launchpad to its default state | [Zach Dawson](https://raycast.com/zdawz) | | | | | ♻️ | [Restart](system/restart.applescript) | Restarts computer. | Raycast | | | | | 💀 | [Restart the Dock](system/restart-dock.sh) | Restart the Dock | [Jordi Clement](https://github.com/jordicl) | | | | | 💀 | [Restart the Finder](system/restart-finder.sh) | Restart the Finder | [Jordi Clement](https://github.com/jordicl) | | | | diff --git a/commands/extensions.json b/commands/extensions.json index 48df04c1e..a26e03567 100644 --- a/commands/extensions.json +++ b/commands/extensions.json @@ -6391,6 +6391,34 @@ "title" : "Largest RAM Process", "updatedAt" : "2020-11-28T13:04:44-05:00" }, + { + "authors" : [ + { + "name" : "Zach Dawson", + "url" : "https:\/\/raycast.com\/zdawz" + } + ], + "createdAt" : "2023-12-22T08:19:14-06:00", + "currentDirectoryPath" : null, + "description" : "Resets the macOS Launchpad to its default state", + "filename" : "reset-launchpad.sh", + "hasArguments" : false, + "icon" : { + "dark" : null, + "light" : "🚀" + }, + "identifier" : "1c9956877da036e214c52ae82f128cb1", + "isTemplate" : false, + "language" : "bash", + "mode" : "silent", + "needsConfirmation" : null, + "packageName" : "System", + "path" : "system\/", + "refreshTime" : null, + "schemaVersion" : 1, + "title" : "Reset Launchpad", + "updatedAt" : "2023-12-22T14:21:54+00:00" + }, { "authors" : [ { @@ -23137,9 +23165,9 @@ ], "languages" : [ { - "displayName" : "Swift", - "icon" : "icon-swift.png", - "name" : "swift" + "displayName" : "Python", + "icon" : "icon-python.png", + "name" : "python" }, { "displayName" : "Node", @@ -23147,14 +23175,9 @@ "name" : "node" }, { - "displayName" : "Bash", - "icon" : "icon-bash.png", - "name" : "bash" - }, - { - "displayName" : "Python", - "icon" : "icon-python.png", - "name" : "python" + "displayName" : "Ruby", + "icon" : "icon-ruby.png", + "name" : "ruby" }, { "displayName" : "AppleScript", @@ -23162,14 +23185,19 @@ "name" : "applescript" }, { - "displayName" : "Ruby", - "icon" : "icon-ruby.png", - "name" : "ruby" + "displayName" : "Swift", + "icon" : "icon-swift.png", + "name" : "swift" + }, + { + "displayName" : "Bash", + "icon" : "icon-bash.png", + "name" : "bash" } ], "metadata" : [ ], - "totalScriptCommands" : 805, - "updatedAt" : "2023-11-08T10:47:49Z" + "totalScriptCommands" : 806, + "updatedAt" : "2023-12-22T14:21:54Z" } \ No newline at end of file From 0e72085586251f97e80b16261a2bd6710a0cb902 Mon Sep 17 00:00:00 2001 From: Scott Willsey Date: Fri, 5 Jan 2024 16:03:05 -0800 Subject: [PATCH 005/146] Adds current browser check for compatibility with Chrome confirmation dialog when switching from Chrome to another browser --- commands/system/default-browser-arc.applescript | 17 ++++++++++++++++- .../system/default-browser-firefox.applescript | 17 ++++++++++++++++- .../system/default-browser-safari.applescript | 17 ++++++++++++++++- 3 files changed, 48 insertions(+), 3 deletions(-) diff --git a/commands/system/default-browser-arc.applescript b/commands/system/default-browser-arc.applescript index b48eb1aa6..d36e16fa7 100755 --- a/commands/system/default-browser-arc.applescript +++ b/commands/system/default-browser-arc.applescript @@ -17,6 +17,9 @@ # @raycast.authorURL https://github.com/dehesa # @raycast.description Set Arc as the default browser. +# check to see what the current browser is +set currentDefaultBrowser to my getCurrentDefaultBrowser() + set repeatCount to 0 tell application "System Events" @@ -28,7 +31,12 @@ tell application "System Events" if repeatCount = 15 then exit repeat end repeat try - click button 2 of window 1 of process "CoreServicesUIAgent" + # if Chrome is the current default browser, the order of the buttons is reversed. Click button 1 to change the default browser to Arc. + if currentDefaultBrowser contains "com.google.chrome" then + click button 1 of window 1 of process "CoreServicesUIAgent" + else # otherwise click button 2 to change the default browser to Arc. + click button 2 of window 1 of process "CoreServicesUIAgent" + end if log "Arc is now your default browser" on error log "Arc is already your default browser" @@ -38,6 +46,13 @@ tell application "System Events" end try end tell +to getCurrentDefaultBrowser() + set filePath to "~/Library/Preferences/com.apple.LaunchServices/com.apple.launchservices.secure.plist" + + set output to do shell script "plutil -p " & filePath & " | awk '/LSHandlerRoleAll/{a=$3}/LSHandlerURLScheme/{if($3==\"\\\"https\\\"\") print a}'" + return output +end getCurrentDefaultBrowser + to changeDefaultBrowser(thebrowser) do shell script " if ! command -v defaultbrowser &> /dev/null; then diff --git a/commands/system/default-browser-firefox.applescript b/commands/system/default-browser-firefox.applescript index ca0920c15..449f1c324 100755 --- a/commands/system/default-browser-firefox.applescript +++ b/commands/system/default-browser-firefox.applescript @@ -17,6 +17,9 @@ # @raycast.authorURL https://github.com/dehesa # @raycast.description Set Firefox as the default browser. +# check to see what the current browser is +set currentDefaultBrowser to my getCurrentDefaultBrowser() + set repeatCount to 0 tell application "System Events" @@ -28,7 +31,12 @@ tell application "System Events" if repeatCount = 15 then exit repeat end repeat try - click button 2 of window 1 of process "CoreServicesUIAgent" + # if Chrome is the current default browser, the order of the buttons is reversed. Click button 1 to change the default browser to FF. + if currentDefaultBrowser contains "com.google.chrome" then + click button 1 of window 1 of process "CoreServicesUIAgent" + else # otherwise click button 2 to change the default browser to FF. + click button 2 of window 1 of process "CoreServicesUIAgent" + end if log "Firefox is now your default browser" on error log "Firefox is already your default browser" @@ -38,6 +46,13 @@ tell application "System Events" end try end tell +to getCurrentDefaultBrowser() + set filePath to "~/Library/Preferences/com.apple.LaunchServices/com.apple.launchservices.secure.plist" + + set output to do shell script "plutil -p " & filePath & " | awk '/LSHandlerRoleAll/{a=$3}/LSHandlerURLScheme/{if($3==\"\\\"https\\\"\") print a}'" + return output +end getCurrentDefaultBrowser + to changeDefaultBrowser(thebrowser) do shell script " if ! command -v defaultbrowser &> /dev/null; then diff --git a/commands/system/default-browser-safari.applescript b/commands/system/default-browser-safari.applescript index 4d68962d9..d1c2cc9d7 100755 --- a/commands/system/default-browser-safari.applescript +++ b/commands/system/default-browser-safari.applescript @@ -17,6 +17,9 @@ # @raycast.authorURL https://github.com/dehesa # @raycast.description Set Safari as the default browser. +# check to see what the current browser is +set currentDefaultBrowser to my getCurrentDefaultBrowser() + set repeatCount to 0 tell application "System Events" @@ -28,7 +31,12 @@ tell application "System Events" if repeatCount = 15 then exit repeat end repeat try - click button 2 of window 1 of process "CoreServicesUIAgent" + # if Chrome is the current default browser, the order of the buttons is reversed. Click button 1 to change the default browser to Safari. + if currentDefaultBrowser contains "com.google.chrome" then + click button 1 of window 1 of process "CoreServicesUIAgent" + else # otherwise click button 2 to change the default browser to Safari. + click button 2 of window 1 of process "CoreServicesUIAgent" + end if log "Safari is now your default browser" on error log "Safari is already your default browser" @@ -38,6 +46,13 @@ tell application "System Events" end try end tell +to getCurrentDefaultBrowser() + set filePath to "~/Library/Preferences/com.apple.LaunchServices/com.apple.launchservices.secure.plist" + + set output to do shell script "plutil -p " & filePath & " | awk '/LSHandlerRoleAll/{a=$3}/LSHandlerURLScheme/{if($3==\"\\\"https\\\"\") print a}'" + return output +end getCurrentDefaultBrowser + to changeDefaultBrowser(thebrowser) do shell script " if ! command -v defaultbrowser &> /dev/null; then From 6b65d6fde8d285cbc65fe4a6e13c58349700b316 Mon Sep 17 00:00:00 2001 From: Kailash Yellareddy <68571978+kyellareddy@users.noreply.github.com> Date: Tue, 9 Jan 2024 01:17:34 -0800 Subject: [PATCH 006/146] Speaker Setup.py (#898) * Speaker Setup.py * Add files via upload * Update Speaker Setup.py Forgot to add a line telling people that they had to install a Python package first * Add files via upload --- commands/media/Speaker Setup/Left.mp3 | Bin 0 -> 52585 bytes commands/media/Speaker Setup/Right.mp3 | Bin 0 -> 39211 bytes commands/media/Speaker Setup/Speaker Setup.py | 26 ++++++++++++++++++ commands/media/Speaker Setup/Speaker Setup.sh | 24 ++++++++++++++++ 4 files changed, 50 insertions(+) create mode 100644 commands/media/Speaker Setup/Left.mp3 create mode 100644 commands/media/Speaker Setup/Right.mp3 create mode 100644 commands/media/Speaker Setup/Speaker Setup.py create mode 100644 commands/media/Speaker Setup/Speaker Setup.sh diff --git a/commands/media/Speaker Setup/Left.mp3 b/commands/media/Speaker Setup/Left.mp3 new file mode 100644 index 0000000000000000000000000000000000000000..4b9618863bf3690904fa52f2c25d1b1d7bce932c GIT binary patch literal 52585 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
    kPGRLw6)wR!33lFhI~ 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 literal 0 HcmV?d00001 diff --git a/commands/media/Speaker Setup/Right.mp3 b/commands/media/Speaker Setup/Right.mp3 new file mode 100644 index 0000000000000000000000000000000000000000..53559d18d8577818548cc42ccee53ffb148a1771 GIT binary patch literal 39211 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" with the file path to Left.mp3 +# Replace with the file path for Right.mp3 +# Install the playsound package from https://pypi.org/project/playsound/ + +from playsound import playsound + +playsound('') + +playsound('') diff --git a/commands/media/Speaker Setup/Speaker Setup.sh b/commands/media/Speaker Setup/Speaker Setup.sh new file mode 100644 index 000000000..02e0011f0 --- /dev/null +++ b/commands/media/Speaker Setup/Speaker Setup.sh @@ -0,0 +1,24 @@ +#!/bin/bash + +# Required parameters: +# @raycast.schemaVersion 1 +# @raycast.title Speaker Setup +# @raycast.mode compact + +# Optional parameters: +# @raycast.icon 🔊 + +# Documentation: +# @raycast.author Kailash Yellareddy +# @raycast.authorURL https://github.com/kyellareddy + +# SETUP: +# 1. Download the files Left.mp3 and Right.mp3 +# 2. Replace "Left.mp3" in line 21 with the file path for the file Left.mp3 +# 3. Replace "Right.mp3" in line 24 with the file path for the file Right.mp3 + +# Play the first audio file +afplay Left.mp3 + +# Play the second audio file +afplay Right.mp3 \ No newline at end of file From c97b32725b7b26cc14a969e414d36d3e055b1387 Mon Sep 17 00:00:00 2001 From: Raycast Bot Date: Tue, 9 Jan 2024 09:19:23 +0000 Subject: [PATCH 007/146] Set scripts as executable --- commands/media/Speaker Setup/Speaker Setup.py | 0 commands/media/Speaker Setup/Speaker Setup.sh | 0 2 files changed, 0 insertions(+), 0 deletions(-) mode change 100644 => 100755 commands/media/Speaker Setup/Speaker Setup.py mode change 100644 => 100755 commands/media/Speaker Setup/Speaker Setup.sh diff --git a/commands/media/Speaker Setup/Speaker Setup.py b/commands/media/Speaker Setup/Speaker Setup.py old mode 100644 new mode 100755 diff --git a/commands/media/Speaker Setup/Speaker Setup.sh b/commands/media/Speaker Setup/Speaker Setup.sh old mode 100644 new mode 100755 From 566f858bae8e88af7990d8a7a3fd055e29d17b14 Mon Sep 17 00:00:00 2001 From: Raycast Bot Date: Tue, 9 Jan 2024 09:20:19 +0000 Subject: [PATCH 008/146] Update Script Commands documentation --- commands/README.md | 8 ++++ commands/extensions.json | 98 ++++++++++++++++++++++++++++++++-------- 2 files changed, 88 insertions(+), 18 deletions(-) diff --git a/commands/README.md b/commands/README.md index 51dc70283..fec4bcb8a 100644 --- a/commands/README.md +++ b/commands/README.md @@ -132,6 +132,7 @@ This repository contains sample commands and documentation to write your own one - [Cmus](#cmus) - [Endel](#endel) - [Sonos](#sonos) + - [Speaker Setup](#Speaker Setup) - [Spotify](#spotify) - [Tidal](#tidal) - [foobar2000](#foobar2000) @@ -1201,6 +1202,13 @@ This repository contains sample commands and documentation to write your own one | | [Volume Down](media/sonos/sonos-volume-down.sh) | Raises volume of Sonos. | [David Blackman](https://github.com/whizziwig) | | | | | | [Volume Up](media/sonos/sonos-volume-up.sh) | Raises volume of Sonos. | [David Blackman](https://github.com/whizziwig) | | | | +#### Speaker Setup + +| Icon | Title | Description | Author | Args | Templ | Lang | +| :--: | ----- | ----------- | :----: | :--: | :---: | :--: | + | 🔊 | [Speaker Setup](media/Speaker Setup/Speaker Setup.sh) | N/A | [Kailash Yellareddy](https://github.com/kyellareddy) | | | | + | 🔊 | [Speaker Setup](media/Speaker Setup/Speaker Setup.py) | N/A | [Kailash Yellareddy](https://github.com/kyellareddy) | | | | + #### Spotify | Icon | Title | Description | Author | Args | Templ | Lang | diff --git a/commands/extensions.json b/commands/extensions.json index a26e03567..3d70d5c68 100644 --- a/commands/extensions.json +++ b/commands/extensions.json @@ -5341,7 +5341,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Default to Firefox", - "updatedAt" : "2023-08-31T18:05:16+09:00" + "updatedAt" : "2024-01-05T16:03:05-08:00" }, { "authors" : [ @@ -5565,7 +5565,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Default to Arc", - "updatedAt" : "2023-02-22T16:16:58+11:00" + "updatedAt" : "2024-01-05T16:03:05-08:00" }, { "authors" : [ @@ -5840,7 +5840,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Default to Safari", - "updatedAt" : "2023-02-22T16:16:58+11:00" + "updatedAt" : "2024-01-05T16:03:05-08:00" }, { "authors" : [ @@ -21288,6 +21288,68 @@ ], "subGroups" : [ + { + "name" : "Speaker Setup", + "path" : "Speaker Setup", + "scriptCommands" : [ + { + "authors" : [ + { + "name" : "Kailash Yellareddy", + "url" : "https:\/\/github.com\/kyellareddy" + } + ], + "createdAt" : "2024-01-09T01:17:34-08:00", + "currentDirectoryPath" : null, + "description" : null, + "filename" : "Speaker Setup.sh", + "hasArguments" : false, + "icon" : { + "dark" : null, + "light" : "🔊" + }, + "identifier" : "c126087406eedbe412b247d5aec01d4e", + "isTemplate" : false, + "language" : "bash", + "mode" : "compact", + "needsConfirmation" : null, + "packageName" : "Speaker Setup", + "path" : "media\/Speaker Setup\/", + "refreshTime" : null, + "schemaVersion" : 1, + "title" : "Speaker Setup", + "updatedAt" : "2024-01-09T09:19:23+00:00" + }, + { + "authors" : [ + { + "name" : "Kailash Yellareddy", + "url" : "https:\/\/github.com\/kyellareddy" + } + ], + "createdAt" : "2024-01-09T01:17:34-08:00", + "currentDirectoryPath" : null, + "description" : null, + "filename" : "Speaker Setup.py", + "hasArguments" : false, + "icon" : { + "dark" : null, + "light" : "🔊" + }, + "identifier" : "8ac694d5417055dc31314f1be9dcb171", + "isTemplate" : false, + "language" : "python", + "mode" : "compact", + "needsConfirmation" : null, + "packageName" : "Speaker Setup", + "path" : "media\/Speaker Setup\/", + "refreshTime" : null, + "schemaVersion" : 1, + "title" : "Speaker Setup", + "updatedAt" : "2024-01-09T09:19:23+00:00" + } + ] + }, { "name" : "Apple Music", "path" : "apple-music", @@ -23164,6 +23226,16 @@ } ], "languages" : [ + { + "displayName" : "Bash", + "icon" : "icon-bash.png", + "name" : "bash" + }, + { + "displayName" : "AppleScript", + "icon" : "icon-applescript.png", + "name" : "applescript" + }, { "displayName" : "Python", "icon" : "icon-python.png", @@ -23174,30 +23246,20 @@ "icon" : "icon-nodejs.png", "name" : "node" }, - { - "displayName" : "Ruby", - "icon" : "icon-ruby.png", - "name" : "ruby" - }, - { - "displayName" : "AppleScript", - "icon" : "icon-applescript.png", - "name" : "applescript" - }, { "displayName" : "Swift", "icon" : "icon-swift.png", "name" : "swift" }, { - "displayName" : "Bash", - "icon" : "icon-bash.png", - "name" : "bash" + "displayName" : "Ruby", + "icon" : "icon-ruby.png", + "name" : "ruby" } ], "metadata" : [ ], - "totalScriptCommands" : 806, - "updatedAt" : "2023-12-22T14:21:54Z" + "totalScriptCommands" : 808, + "updatedAt" : "2024-01-09T09:19:23Z" } \ No newline at end of file From 0b293375ef2b5d64c6cbcec0caf8b8029f82962b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Sa=CC=81nchez-Dehesa?= Date: Tue, 9 Jan 2024 10:22:01 +0100 Subject: [PATCH 009/146] Remove python script from Speaker Setup --- commands/media/Speaker Setup/Speaker Setup.py | 26 ------------------ .../{Speaker Setup => speaker-setup}/Left.mp3 | Bin .../Right.mp3 | Bin .../Speaker Setup.sh | 2 +- 4 files changed, 1 insertion(+), 27 deletions(-) delete mode 100755 commands/media/Speaker Setup/Speaker Setup.py rename commands/media/{Speaker Setup => speaker-setup}/Left.mp3 (100%) rename commands/media/{Speaker Setup => speaker-setup}/Right.mp3 (100%) rename commands/media/{Speaker Setup => speaker-setup}/Speaker Setup.sh (97%) diff --git a/commands/media/Speaker Setup/Speaker Setup.py b/commands/media/Speaker Setup/Speaker Setup.py deleted file mode 100755 index 0416c1886..000000000 --- a/commands/media/Speaker Setup/Speaker Setup.py +++ /dev/null @@ -1,26 +0,0 @@ -#!/usr/bin/env python3 - -# Required parameters: -# @raycast.schemaVersion 1 -# @raycast.title Speaker Setup -# @raycast.mode compact - -# Optional parameters: -# @raycast.icon 🔊 - -# Documentation: -# @raycast.author Kailash Yellareddy -# @raycast.authorURL https://github.com/kyellareddy - -# SETUP: -# There are two audio files that are needed for this script to work -# Left.mp3 and Right.mp3 -# Replace "" with the file path to Left.mp3 -# Replace with the file path for Right.mp3 -# Install the playsound package from https://pypi.org/project/playsound/ - -from playsound import playsound - -playsound('') - -playsound('') diff --git a/commands/media/Speaker Setup/Left.mp3 b/commands/media/speaker-setup/Left.mp3 similarity index 100% rename from commands/media/Speaker Setup/Left.mp3 rename to commands/media/speaker-setup/Left.mp3 diff --git a/commands/media/Speaker Setup/Right.mp3 b/commands/media/speaker-setup/Right.mp3 similarity index 100% rename from commands/media/Speaker Setup/Right.mp3 rename to commands/media/speaker-setup/Right.mp3 diff --git a/commands/media/Speaker Setup/Speaker Setup.sh b/commands/media/speaker-setup/Speaker Setup.sh similarity index 97% rename from commands/media/Speaker Setup/Speaker Setup.sh rename to commands/media/speaker-setup/Speaker Setup.sh index 02e0011f0..6ca3d983a 100755 --- a/commands/media/Speaker Setup/Speaker Setup.sh +++ b/commands/media/speaker-setup/Speaker Setup.sh @@ -21,4 +21,4 @@ afplay Left.mp3 # Play the second audio file -afplay Right.mp3 \ No newline at end of file +afplay Right.mp3 From 69ab20bf32e7f70f155a77d12b6fe7289cba6777 Mon Sep 17 00:00:00 2001 From: Raycast Bot Date: Tue, 9 Jan 2024 09:24:59 +0000 Subject: [PATCH 010/146] Update Script Commands documentation --- commands/README.md | 5 ++-- commands/extensions.json | 64 +++++++++++----------------------------- 2 files changed, 20 insertions(+), 49 deletions(-) diff --git a/commands/README.md b/commands/README.md index fec4bcb8a..137cfb79e 100644 --- a/commands/README.md +++ b/commands/README.md @@ -132,7 +132,7 @@ This repository contains sample commands and documentation to write your own one - [Cmus](#cmus) - [Endel](#endel) - [Sonos](#sonos) - - [Speaker Setup](#Speaker Setup) + - [Speaker Setup](#speaker-setup) - [Spotify](#spotify) - [Tidal](#tidal) - [foobar2000](#foobar2000) @@ -1206,8 +1206,7 @@ This repository contains sample commands and documentation to write your own one | Icon | Title | Description | Author | Args | Templ | Lang | | :--: | ----- | ----------- | :----: | :--: | :---: | :--: | - | 🔊 | [Speaker Setup](media/Speaker Setup/Speaker Setup.sh) | N/A | [Kailash Yellareddy](https://github.com/kyellareddy) | | | | - | 🔊 | [Speaker Setup](media/Speaker Setup/Speaker Setup.py) | N/A | [Kailash Yellareddy](https://github.com/kyellareddy) | | | | + | 🔊 | [Speaker Setup](media/speaker-setup/Speaker Setup.sh) | N/A | [Kailash Yellareddy](https://github.com/kyellareddy) | | | | #### Spotify diff --git a/commands/extensions.json b/commands/extensions.json index 3d70d5c68..001be2d77 100644 --- a/commands/extensions.json +++ b/commands/extensions.json @@ -21290,7 +21290,7 @@ "subGroups" : [ { "name" : "Speaker Setup", - "path" : "Speaker Setup", + "path" : "speaker-setup", "scriptCommands" : [ { "authors" : [ @@ -21314,39 +21314,11 @@ "mode" : "compact", "needsConfirmation" : null, "packageName" : "Speaker Setup", - "path" : "media\/Speaker Setup\/", + "path" : "media\/speaker-setup\/", "refreshTime" : null, "schemaVersion" : 1, "title" : "Speaker Setup", - "updatedAt" : "2024-01-09T09:19:23+00:00" - }, - { - "authors" : [ - { - "name" : "Kailash Yellareddy", - "url" : "https:\/\/github.com\/kyellareddy" - } - ], - "createdAt" : "2024-01-09T01:17:34-08:00", - "currentDirectoryPath" : null, - "description" : null, - "filename" : "Speaker Setup.py", - "hasArguments" : false, - "icon" : { - "dark" : null, - "light" : "🔊" - }, - "identifier" : "8ac694d5417055dc31314f1be9dcb171", - "isTemplate" : false, - "language" : "python", - "mode" : "compact", - "needsConfirmation" : null, - "packageName" : "Speaker Setup", - "path" : "media\/Speaker Setup\/", - "refreshTime" : null, - "schemaVersion" : 1, - "title" : "Speaker Setup", - "updatedAt" : "2024-01-09T09:19:23+00:00" + "updatedAt" : "2024-01-09T10:22:01+01:00" } ] }, @@ -23226,40 +23198,40 @@ } ], "languages" : [ - { - "displayName" : "Bash", - "icon" : "icon-bash.png", - "name" : "bash" - }, { "displayName" : "AppleScript", "icon" : "icon-applescript.png", "name" : "applescript" }, { - "displayName" : "Python", - "icon" : "icon-python.png", - "name" : "python" + "displayName" : "Swift", + "icon" : "icon-swift.png", + "name" : "swift" }, { "displayName" : "Node", "icon" : "icon-nodejs.png", "name" : "node" }, - { - "displayName" : "Swift", - "icon" : "icon-swift.png", - "name" : "swift" - }, { "displayName" : "Ruby", "icon" : "icon-ruby.png", "name" : "ruby" + }, + { + "displayName" : "Python", + "icon" : "icon-python.png", + "name" : "python" + }, + { + "displayName" : "Bash", + "icon" : "icon-bash.png", + "name" : "bash" } ], "metadata" : [ ], - "totalScriptCommands" : 808, - "updatedAt" : "2024-01-09T09:19:23Z" + "totalScriptCommands" : 807, + "updatedAt" : "2024-01-09T09:23:59Z" } \ No newline at end of file From ab26c6577d04b52c65a1d7a3b1e84db8d27fd2a2 Mon Sep 17 00:00:00 2001 From: Federico Zivolo <5382443+FezVrasta@users.noreply.github.com> Date: Sat, 20 Jan 2024 13:56:53 +0100 Subject: [PATCH 011/146] Create toggle-desktop-widget.sh --- commands/system/toggle-desktop-widget.sh | 26 ++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 commands/system/toggle-desktop-widget.sh diff --git a/commands/system/toggle-desktop-widget.sh b/commands/system/toggle-desktop-widget.sh new file mode 100644 index 000000000..a78783604 --- /dev/null +++ b/commands/system/toggle-desktop-widget.sh @@ -0,0 +1,26 @@ +#!/bin/bash + +# Required parameters: +# @raycast.schemaVersion 1 +# @raycast.title Toggle Desktop Widgets +# @raycast.mode silent + +# Optional parameters: +# @raycast.icon 🔄 + +# Documentation: +# @raycast.author Federico Zivolo +# @raycast.authorURL https://github.com/FezVrasta + +# Get the current value of the preference +current_value=$(defaults read com.apple.WindowManager StandardHideWidgets) + +# Toggle the value +if [[ $current_value == 1 ]]; then + new_value=0 +else + new_value=1 +fi + +# Write the new value to the preference +defaults write com.apple.WindowManager StandardHideWidgets -int $new_value From fe900e206f423bfe4fc8d37d489e25293a483cc7 Mon Sep 17 00:00:00 2001 From: Raycast Bot Date: Mon, 22 Jan 2024 22:39:53 +0000 Subject: [PATCH 012/146] Set scripts as executable --- commands/system/toggle-desktop-widget.sh | 0 1 file changed, 0 insertions(+), 0 deletions(-) mode change 100644 => 100755 commands/system/toggle-desktop-widget.sh diff --git a/commands/system/toggle-desktop-widget.sh b/commands/system/toggle-desktop-widget.sh old mode 100644 new mode 100755 From 62a9e84630bea623a67d340fb5d9dfd13c7f07d1 Mon Sep 17 00:00:00 2001 From: Raycast Bot Date: Mon, 22 Jan 2024 22:40:57 +0000 Subject: [PATCH 013/146] Update Script Commands documentation --- commands/README.md | 1 + commands/extensions.json | 52 ++++++++++++++++++++++++++++++---------- 2 files changed, 41 insertions(+), 12 deletions(-) diff --git a/commands/README.md b/commands/README.md index 137cfb79e..7ab4d8cf7 100644 --- a/commands/README.md +++ b/commands/README.md @@ -1487,6 +1487,7 @@ This repository contains sample commands and documentation to write your own one | 🔋 | [Toggle Battery Charging](system/toggle-battery-charging.sh) | Toggle charging the battery when it is plugged in. When turned off, it will always use the charger instead of the battery; when turned on, it will go to automatic mode (decide based on your settings and daily charging routine). | [Amir Hossein SamadiPour](https://github.com/SamadiPour) | | | | | | [Toggle Bluetooth](system/bluetooth.template.applescript) | Toggle your Bluetooth connection. | [Vincent Dörig](https://github.com/vincentdoerig) | | ✅ | | | 🖥 | [Toggle Desktop Icons](system/toggle-desktop-icons.applescript) | A script command to show and hide icons of Desktop folder | [Raycast](https://raycast.com) | | | | + | 🔄 | [Toggle Desktop Widgets](system/toggle-desktop-widget.sh) | N/A | [Federico Zivolo](https://github.com/FezVrasta) | | | | | 👓 | [Toggle Filename Extensions](system/toggle-filename-extensions.applescript) | Show or hide all filename extensions (like .txt, .png) | [Senthil Prabhu](https://github.com/senthilprabhut) | | | | | 🖥 | [Toggle Flip Screen to °](system/toggle-flip-screen.template.applescript) | Toggle flip (rotate) or revert the to ° | [Yohanes Bandung Bondowoso](https://github.com/ybbond) | | ✅ | | | 👓 | [Toggle Hidden Files](system/toggle-hidden-files.applescript) | Show and hide hidden files/folders which starts with "." (dot), i.e: .bash_rc, .ssh | [Thiago Holanda](https://twitter.com/tholanda) | | | | diff --git a/commands/extensions.json b/commands/extensions.json index 001be2d77..b545b8874 100644 --- a/commands/extensions.json +++ b/commands/extensions.json @@ -5595,6 +5595,34 @@ "title" : "Custom Window Size", "updatedAt" : "2021-11-17T17:41:07+01:00" }, + { + "authors" : [ + { + "name" : "Federico Zivolo", + "url" : "https:\/\/github.com\/FezVrasta" + } + ], + "createdAt" : "2024-01-20T13:56:53+01:00", + "currentDirectoryPath" : null, + "description" : null, + "filename" : "toggle-desktop-widget.sh", + "hasArguments" : false, + "icon" : { + "dark" : null, + "light" : "🔄" + }, + "identifier" : "79982c901bf4cd65eda80b5f7039d1d0", + "isTemplate" : false, + "language" : "bash", + "mode" : "silent", + "needsConfirmation" : null, + "packageName" : "Toggle Desktop Widget", + "path" : "system\/", + "refreshTime" : null, + "schemaVersion" : 1, + "title" : "Toggle Desktop Widgets", + "updatedAt" : "2024-01-22T22:39:53+00:00" + }, { "authors" : [ { @@ -23208,6 +23236,16 @@ "icon" : "icon-swift.png", "name" : "swift" }, + { + "displayName" : "Bash", + "icon" : "icon-bash.png", + "name" : "bash" + }, + { + "displayName" : "Python", + "icon" : "icon-python.png", + "name" : "python" + }, { "displayName" : "Node", "icon" : "icon-nodejs.png", @@ -23217,21 +23255,11 @@ "displayName" : "Ruby", "icon" : "icon-ruby.png", "name" : "ruby" - }, - { - "displayName" : "Python", - "icon" : "icon-python.png", - "name" : "python" - }, - { - "displayName" : "Bash", - "icon" : "icon-bash.png", - "name" : "bash" } ], "metadata" : [ ], - "totalScriptCommands" : 807, - "updatedAt" : "2024-01-09T09:23:59Z" + "totalScriptCommands" : 808, + "updatedAt" : "2024-01-22T22:39:53Z" } \ No newline at end of file From f1c0a0b1bb73d90f9240dd009cbdd2b8ead52db7 Mon Sep 17 00:00:00 2001 From: Annie Ma <67172603+annietma@users.noreply.github.com> Date: Fri, 26 Jan 2024 02:19:25 -0700 Subject: [PATCH 014/146] Add script to delete line at current cursor position (#903) * delete line * add packageName * New floating sticky --- commands/apps/stickies/images/stickies.png | Bin 0 -> 6083 bytes .../stickies/new-floating-sticky.applescript | 23 ++++++++++++++++++ .../delete-current-line.applescript | 20 +++++++++++++++ 3 files changed, 43 insertions(+) create mode 100644 commands/apps/stickies/images/stickies.png create mode 100644 commands/apps/stickies/new-floating-sticky.applescript create mode 100644 commands/developer-utils/delete-current-line.applescript diff --git a/commands/apps/stickies/images/stickies.png b/commands/apps/stickies/images/stickies.png new file mode 100644 index 0000000000000000000000000000000000000000..cd3651bb815ec574908ae4ce061da522707bb2b4 GIT binary patch literal 6083 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 literal 0 HcmV?d00001 diff --git a/commands/apps/stickies/new-floating-sticky.applescript b/commands/apps/stickies/new-floating-sticky.applescript new file mode 100644 index 000000000..3f3d2dc21 --- /dev/null +++ b/commands/apps/stickies/new-floating-sticky.applescript @@ -0,0 +1,23 @@ +#!/usr/bin/osascript + +# Required parameters: +# @raycast.schemaVersion 1 +# @raycast.title New Floating Sticky Note +# @raycast.mode silent +# @raycast.packageName Stickies + +# Optional parameters: +# @raycast.icon images/stickies.png + +# Documentation: +# @raycast.description This script creates a new floating note in the Apple Stickies application +# @raycast.author Annie Ma +# @raycast.authorURL http://www.anniema.co/ + +tell application "Stickies" + activate + tell application "System Events" + keystroke "n" using command down + keystroke "f" using command down & option down + end tell +end tell \ No newline at end of file diff --git a/commands/developer-utils/delete-current-line.applescript b/commands/developer-utils/delete-current-line.applescript new file mode 100644 index 000000000..b80fce527 --- /dev/null +++ b/commands/developer-utils/delete-current-line.applescript @@ -0,0 +1,20 @@ +#!/usr/bin/osascript + +# Required parameters: +# @raycast.schemaVersion 1 +# @raycast.title Delete Current Line +# @raycast.mode silent +# @raycast.packageName Developer Utilities + +# Optional parameters: +# @raycast.icon ⌨️ + +# Documentation: +# @raycast.description This script deletes the line at cursor position. +# @raycast.author Annie Ma +# @raycast.authorURL http://www.anniema.co/ + +tell application "System Events" + keystroke "k" using control down + keystroke (ASCII character 8) using command down +end tell From 1e44afb4a4853fad6c67f5d8218a9a12f865680f Mon Sep 17 00:00:00 2001 From: Raycast Bot Date: Fri, 26 Jan 2024 09:21:48 +0000 Subject: [PATCH 015/146] Set scripts as executable --- commands/apps/stickies/new-floating-sticky.applescript | 0 commands/developer-utils/delete-current-line.applescript | 0 2 files changed, 0 insertions(+), 0 deletions(-) mode change 100644 => 100755 commands/apps/stickies/new-floating-sticky.applescript mode change 100644 => 100755 commands/developer-utils/delete-current-line.applescript diff --git a/commands/apps/stickies/new-floating-sticky.applescript b/commands/apps/stickies/new-floating-sticky.applescript old mode 100644 new mode 100755 diff --git a/commands/developer-utils/delete-current-line.applescript b/commands/developer-utils/delete-current-line.applescript old mode 100644 new mode 100755 From b68f2f7fed26c428061cae440e3338bf400f89f6 Mon Sep 17 00:00:00 2001 From: Raycast Bot Date: Fri, 26 Jan 2024 09:23:01 +0000 Subject: [PATCH 016/146] Update Script Commands documentation --- commands/README.md | 8 ++++ commands/extensions.json | 88 ++++++++++++++++++++++++++++++++++------ 2 files changed, 83 insertions(+), 13 deletions(-) diff --git a/commands/README.md b/commands/README.md index 7ab4d8cf7..eee1366d0 100644 --- a/commands/README.md +++ b/commands/README.md @@ -72,6 +72,7 @@ This repository contains sample commands and documentation to write your own one - [Session](#session) - [SideNotes](#sidenotes) - [Sip](#sip) + - [Stickies](#stickies) - [Sublime](#sublime) - [Surfshark](#surfshark) - [Tailscale](#tailscale) @@ -575,6 +576,12 @@ This repository contains sample commands and documentation to write your own one | | [Open Contrast Checker](apps/sip/sip-open-check-contrast.sh) | Open Sip Contrast Checker. | [Sip](https://twitter.com/sip_app/) | | | | | | [Show Color Picker](apps/sip/sip-show-picker.sh) | Pick a color value from your screen. | [Sip](https://twitter.com/sip_app/) | | | | +#### Stickies + +| Icon | Title | Description | Author | Args | Templ | Lang | +| :--: | ----- | ----------- | :----: | :--: | :---: | :--: | + | | [New Floating Sticky Note](apps/stickies/new-floating-sticky.applescript) | This script creates a new floating note in the Apple Stickies application | [Annie Ma](http://www.anniema.co/) | | | | + #### Sublime | Icon | Title | Description | Author | Args | Templ | Lang | @@ -927,6 +934,7 @@ This repository contains sample commands and documentation to write your own one | 💻 | [Decode Base64](developer-utils/decode-base64.sh) | Decodes clipboard content to Base64 and copies it again. | Raycast | | | | | | [Decode JWT](developer-utils/decode-jwt.sh) | Decodes JSON web token from the clipboard. | Raycast | | | | | 💻 | [Decode URL](developer-utils/decode-url.sh) | Decodes clipboard content url and copies it again. | Raycast | | | | + | ⌨️ | [Delete Current Line](developer-utils/delete-current-line.applescript) | This script deletes the line at cursor position. | [Annie Ma](http://www.anniema.co/) | | | | | 🌍 | [Dig](developer-utils/dig.sh) | Perform a dig command with the specified options | Tommaso Panozzo | ✅ | | | | 💻 | [Encode Base64](developer-utils/encode-base64.sh) | Encodes clipboard content to Base64 and copies it again. | Raycast | | | | | 💻 | [Encode URL](developer-utils/encode-url.sh) | Encodes clipboard content url and copies it again. | Raycast | | | | diff --git a/commands/extensions.json b/commands/extensions.json index b545b8874..70bb7ccc8 100644 --- a/commands/extensions.json +++ b/commands/extensions.json @@ -8600,6 +8600,34 @@ "title" : "Base64 Encode", "updatedAt" : "2021-03-26T10:57:36+01:00" }, + { + "authors" : [ + { + "name" : "Annie Ma", + "url" : "http:\/\/www.anniema.co\/" + } + ], + "createdAt" : "2024-01-26T02:19:25-07:00", + "currentDirectoryPath" : null, + "description" : "This script deletes the line at cursor position.", + "filename" : "delete-current-line.applescript", + "hasArguments" : false, + "icon" : { + "dark" : null, + "light" : "⌨️" + }, + "identifier" : "155fc5e8e485cc9d9f7a08797ea68597", + "isTemplate" : false, + "language" : "applescript", + "mode" : "silent", + "needsConfirmation" : null, + "packageName" : "Developer Utilities", + "path" : "developer-utils\/", + "refreshTime" : null, + "schemaVersion" : 1, + "title" : "Delete Current Line", + "updatedAt" : "2024-01-26T09:21:48+00:00" + }, { "authors" : [ { @@ -14732,6 +14760,40 @@ } ] }, + { + "name" : "Stickies", + "path" : "stickies", + "scriptCommands" : [ + { + "authors" : [ + { + "name" : "Annie Ma", + "url" : "http:\/\/www.anniema.co\/" + } + ], + "createdAt" : "2024-01-26T02:19:25-07:00", + "currentDirectoryPath" : null, + "description" : "This script creates a new floating note in the Apple Stickies application", + "filename" : "new-floating-sticky.applescript", + "hasArguments" : false, + "icon" : { + "dark" : null, + "light" : "images\/stickies.png" + }, + "identifier" : "dae7953c0397480c8d99a3b0f56176b7", + "isTemplate" : false, + "language" : "applescript", + "mode" : "silent", + "needsConfirmation" : null, + "packageName" : "Stickies", + "path" : "apps\/stickies\/", + "refreshTime" : null, + "schemaVersion" : 1, + "title" : "New Floating Sticky Note", + "updatedAt" : "2024-01-26T09:21:48+00:00" + } + ] + }, { "name" : "Bartender", "path" : "bartender", @@ -23227,20 +23289,15 @@ ], "languages" : [ { - "displayName" : "AppleScript", - "icon" : "icon-applescript.png", - "name" : "applescript" + "displayName" : "Ruby", + "icon" : "icon-ruby.png", + "name" : "ruby" }, { "displayName" : "Swift", "icon" : "icon-swift.png", "name" : "swift" }, - { - "displayName" : "Bash", - "icon" : "icon-bash.png", - "name" : "bash" - }, { "displayName" : "Python", "icon" : "icon-python.png", @@ -23252,14 +23309,19 @@ "name" : "node" }, { - "displayName" : "Ruby", - "icon" : "icon-ruby.png", - "name" : "ruby" + "displayName" : "Bash", + "icon" : "icon-bash.png", + "name" : "bash" + }, + { + "displayName" : "AppleScript", + "icon" : "icon-applescript.png", + "name" : "applescript" } ], "metadata" : [ ], - "totalScriptCommands" : 808, - "updatedAt" : "2024-01-22T22:39:53Z" + "totalScriptCommands" : 810, + "updatedAt" : "2024-01-26T09:21:48Z" } \ No newline at end of file From bc8aff3e5fcf08046ef21f8b061118d903baf35d Mon Sep 17 00:00:00 2001 From: annietma Date: Fri, 26 Jan 2024 14:05:08 -0800 Subject: [PATCH 017/146] toggle mute --- ...oggle-mute-notification-sounds.applescript | 27 +++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 commands/system/audio/toggle-mute-notification-sounds.applescript diff --git a/commands/system/audio/toggle-mute-notification-sounds.applescript b/commands/system/audio/toggle-mute-notification-sounds.applescript new file mode 100644 index 000000000..779a3f4a8 --- /dev/null +++ b/commands/system/audio/toggle-mute-notification-sounds.applescript @@ -0,0 +1,27 @@ +#!/usr/bin/osascript + +# Required parameters: +# @raycast.schemaVersion 1 +# @raycast.title Toggle Mute Notifcation Sounds +# @raycast.mode silent +# @raycast.packageName System + +# Optional parameters: +# @raycast.icon 🔔 + +# Documentation: +# @raycast.author Annie Ma +# @raycast.authorURL http://www.anniema.co/ +# @raycast.description Toggles notification sounds. + +set volumeSettings to get volume settings +set alertVolume to alert volume of volumeSettings + +if alertVolume > 0 then + set volume alert volume 0 + display notification "" with title "Muted notification sounds" +else + set volume alert volume 100 + display notification "" with title "Unmuted notification sounds" +end if + From 71e78c3e8c24656bee1cd78840cdabf81843cbe5 Mon Sep 17 00:00:00 2001 From: Raycast Bot Date: Thu, 1 Feb 2024 16:53:25 +0000 Subject: [PATCH 018/146] Set scripts as executable --- commands/system/audio/toggle-mute-notification-sounds.applescript | 0 1 file changed, 0 insertions(+), 0 deletions(-) mode change 100644 => 100755 commands/system/audio/toggle-mute-notification-sounds.applescript diff --git a/commands/system/audio/toggle-mute-notification-sounds.applescript b/commands/system/audio/toggle-mute-notification-sounds.applescript old mode 100644 new mode 100755 From 16271c50595c13168a269d9023222af79285d4c6 Mon Sep 17 00:00:00 2001 From: Raycast Bot Date: Thu, 1 Feb 2024 16:55:10 +0000 Subject: [PATCH 019/146] Update Script Commands documentation --- commands/README.md | 1 + commands/extensions.json | 62 +++++++++++++++++++++++++++++----------- 2 files changed, 46 insertions(+), 17 deletions(-) diff --git a/commands/README.md b/commands/README.md index eee1366d0..750baf81c 100644 --- a/commands/README.md +++ b/commands/README.md @@ -1522,6 +1522,7 @@ This repository contains sample commands and documentation to write your own one | 🔊 | [Switch Audio to ](system/audio/audio-output-switch.template.applescript) | Switch audio output to desired device. | [mmerle](https://github.com/mmerle) | | ✅ | | | | [Toggle AirPods](system/audio/toggle-airpods.template.swift) | Toggle AirPods bluetooth device | [Nichlas W. Andersen](https://github.com/itsnwa) | | ✅ | | | 🎙 | [Toggle Microphone](system/audio/toggle-mic.applescript) | Toggles microphone. | [Matthew Morek](https://github.com/matthewmorek) | | | | + | 🔔 | [Toggle Mute Notifcation Sounds](system/audio/toggle-mute-notification-sounds.applescript) | Toggles notification sounds. | [Annie Ma](http://www.anniema.co/) | | | | #### VPN diff --git a/commands/extensions.json b/commands/extensions.json index 70bb7ccc8..b33958d19 100644 --- a/commands/extensions.json +++ b/commands/extensions.json @@ -7335,6 +7335,34 @@ "title" : "Reload CoreAudio", "updatedAt" : "2021-04-16T19:18:39+03:00" }, + { + "authors" : [ + { + "name" : "Annie Ma", + "url" : "http:\/\/www.anniema.co\/" + } + ], + "createdAt" : "2024-01-26T14:05:08-08:00", + "currentDirectoryPath" : null, + "description" : "Toggles notification sounds.", + "filename" : "toggle-mute-notification-sounds.applescript", + "hasArguments" : false, + "icon" : { + "dark" : null, + "light" : "🔔" + }, + "identifier" : "a3b32fd55c23706603f24da4c74fd8d0", + "isTemplate" : false, + "language" : "applescript", + "mode" : "silent", + "needsConfirmation" : null, + "packageName" : "System", + "path" : "system\/audio\/", + "refreshTime" : null, + "schemaVersion" : 1, + "title" : "Toggle Mute Notifcation Sounds", + "updatedAt" : "2024-02-01T16:53:25+00:00" + }, { "authors" : [ { @@ -23288,26 +23316,16 @@ } ], "languages" : [ - { - "displayName" : "Ruby", - "icon" : "icon-ruby.png", - "name" : "ruby" - }, - { - "displayName" : "Swift", - "icon" : "icon-swift.png", - "name" : "swift" - }, - { - "displayName" : "Python", - "icon" : "icon-python.png", - "name" : "python" - }, { "displayName" : "Node", "icon" : "icon-nodejs.png", "name" : "node" }, + { + "displayName" : "Ruby", + "icon" : "icon-ruby.png", + "name" : "ruby" + }, { "displayName" : "Bash", "icon" : "icon-bash.png", @@ -23317,11 +23335,21 @@ "displayName" : "AppleScript", "icon" : "icon-applescript.png", "name" : "applescript" + }, + { + "displayName" : "Python", + "icon" : "icon-python.png", + "name" : "python" + }, + { + "displayName" : "Swift", + "icon" : "icon-swift.png", + "name" : "swift" } ], "metadata" : [ ], - "totalScriptCommands" : 810, - "updatedAt" : "2024-01-26T09:21:48Z" + "totalScriptCommands" : 811, + "updatedAt" : "2024-02-01T16:53:25Z" } \ No newline at end of file From 2d49bc7c42e743f419f54938c5178815027993b5 Mon Sep 17 00:00:00 2001 From: Annie Ma <67172603+annietma@users.noreply.github.com> Date: Tue, 6 Feb 2024 01:35:01 -0700 Subject: [PATCH 020/146] Create new BusyCal event or task (#904) * new event * PR fixes * switch arg order --- commands/apps/busycal/images/busycal.png | Bin 0 -> 7280 bytes .../new-busycal-event-or-task.applescript | 28 ++++++++++++++++++ 2 files changed, 28 insertions(+) create mode 100644 commands/apps/busycal/images/busycal.png create mode 100644 commands/apps/busycal/new-busycal-event-or-task.applescript diff --git a/commands/apps/busycal/images/busycal.png b/commands/apps/busycal/images/busycal.png new file mode 100644 index 0000000000000000000000000000000000000000..8671a4bf020cbbf73dba42397fdc39eac9ce91b9 GIT binary patch literal 7280 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 Date: Tue, 6 Feb 2024 08:36:45 +0000 Subject: [PATCH 021/146] Set scripts as executable --- commands/apps/busycal/new-busycal-event-or-task.applescript | 0 1 file changed, 0 insertions(+), 0 deletions(-) mode change 100644 => 100755 commands/apps/busycal/new-busycal-event-or-task.applescript diff --git a/commands/apps/busycal/new-busycal-event-or-task.applescript b/commands/apps/busycal/new-busycal-event-or-task.applescript old mode 100644 new mode 100755 From c26117b4c7fea07000248dd1dab44a23dab18d7e Mon Sep 17 00:00:00 2001 From: Raycast Bot Date: Tue, 6 Feb 2024 08:37:45 +0000 Subject: [PATCH 022/146] Update Script Commands documentation --- commands/README.md | 7 ++++++ commands/extensions.json | 48 ++++++++++++++++++++++++++++++++++------ 2 files changed, 48 insertions(+), 7 deletions(-) diff --git a/commands/README.md b/commands/README.md index 750baf81c..7f699d1a6 100644 --- a/commands/README.md +++ b/commands/README.md @@ -31,6 +31,7 @@ This repository contains sample commands and documentation to write your own one - [Baremetrics](#baremetrics) - [Bartender](#bartender) - [Bear](#bear) + - [BusyCal](#busycal) - [Chatgpt](#chatgpt) - [Cleanshot](#cleanshot) - [Craft](#craft) @@ -204,6 +205,12 @@ This repository contains sample commands and documentation to write your own one | | [Open Todos](apps/bear/bear-todo.sh) | Open the Todo section in Bear. | [Tanay Nistala](https://github.com/tanaynistala) | ✅ | | | | | [Search](apps/bear/bear-search.sh) | Search notes by keyword and/or tag in Bear. | [Tanay Nistala](https://github.com/tanaynistala) | ✅ | | | +#### BusyCal + +| Icon | Title | Description | Author | Args | Templ | Lang | +| :--: | ----- | ----------- | :----: | :--: | :---: | :--: | + | | [Create Event/Task](apps/busycal/new-busycal-event-or-task.applescript) | Creates new events or tasks in BusyCal. | [Annie Ma](www.anniema.co) | ✅ | | | + #### Chatgpt | Icon | Title | Description | Author | Args | Templ | Lang | diff --git a/commands/extensions.json b/commands/extensions.json index b33958d19..70c6cbd5a 100644 --- a/commands/extensions.json +++ b/commands/extensions.json @@ -14788,6 +14788,40 @@ } ] }, + { + "name" : "BusyCal", + "path" : "busycal", + "scriptCommands" : [ + { + "authors" : [ + { + "name" : "Annie Ma", + "url" : "www.anniema.co" + } + ], + "createdAt" : "2024-02-06T01:35:01-07:00", + "currentDirectoryPath" : null, + "description" : "Creates new events or tasks in BusyCal.", + "filename" : "new-busycal-event-or-task.applescript", + "hasArguments" : true, + "icon" : { + "dark" : null, + "light" : "images\/busycal.png" + }, + "identifier" : "e4f836d21d4fcb8bcf522b1393aad74a", + "isTemplate" : false, + "language" : "applescript", + "mode" : "compact", + "needsConfirmation" : null, + "packageName" : "BusyCal", + "path" : "apps\/busycal\/", + "refreshTime" : null, + "schemaVersion" : 1, + "title" : "Create Event\/Task", + "updatedAt" : "2024-02-06T08:36:45+00:00" + } + ] + }, { "name" : "Stickies", "path" : "stickies", @@ -23321,11 +23355,6 @@ "icon" : "icon-nodejs.png", "name" : "node" }, - { - "displayName" : "Ruby", - "icon" : "icon-ruby.png", - "name" : "ruby" - }, { "displayName" : "Bash", "icon" : "icon-bash.png", @@ -23341,6 +23370,11 @@ "icon" : "icon-python.png", "name" : "python" }, + { + "displayName" : "Ruby", + "icon" : "icon-ruby.png", + "name" : "ruby" + }, { "displayName" : "Swift", "icon" : "icon-swift.png", @@ -23350,6 +23384,6 @@ "metadata" : [ ], - "totalScriptCommands" : 811, - "updatedAt" : "2024-02-01T16:53:25Z" + "totalScriptCommands" : 812, + "updatedAt" : "2024-02-06T08:36:45Z" } \ No newline at end of file From d374d011bb1120ce6382472db706a1a44f8bcd56 Mon Sep 17 00:00:00 2001 From: Grzegorz Krukowski Date: Wed, 14 Feb 2024 22:08:18 +0100 Subject: [PATCH 023/146] CI: update to action to node20 --- .github/workflows/script-commands.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/script-commands.yml b/.github/workflows/script-commands.yml index 4b139025e..6dd6f87d4 100644 --- a/.github/workflows/script-commands.yml +++ b/.github/workflows/script-commands.yml @@ -9,7 +9,7 @@ jobs: runs-on: macos-12 steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 with: fetch-depth: 0 From d18994827a9b09709e454309ecbf5ff8cb93345f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alexandru=20=C5=A2urcanu?= Date: Mon, 19 Feb 2024 19:37:34 -0800 Subject: [PATCH 024/146] Fix `search-script-command-marketplace` domain --- commands/web-searches/search-script-command-marketplace.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/commands/web-searches/search-script-command-marketplace.sh b/commands/web-searches/search-script-command-marketplace.sh index 17b36d23b..9d0997592 100755 --- a/commands/web-searches/search-script-command-marketplace.sh +++ b/commands/web-searches/search-script-command-marketplace.sh @@ -15,5 +15,5 @@ # @raycast.author Alexandru Turcanu # @raycast.authorURL https://github.com/Pondorasti -open "https://scriptcommands.com/?search=$1" +open "https://scriptcommands.alexandru.so/?search=$1" From 1874c0e9e78e3920b95d113e286d0ae50ddc16de Mon Sep 17 00:00:00 2001 From: hugivar Date: Mon, 19 Feb 2024 11:14:42 -0500 Subject: [PATCH 025/146] update the script API for apple music love song action to match current properities --- .../apple-music-love-current-track.applescript | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/commands/media/apple-music/apple-music-love-current-track.applescript b/commands/media/apple-music/apple-music-love-current-track.applescript index cf805be47..673f24ec2 100755 --- a/commands/media/apple-music/apple-music-love-current-track.applescript +++ b/commands/media/apple-music/apple-music-love-current-track.applescript @@ -11,6 +11,10 @@ # @raycast.schemaVersion 1 tell application "Music" - set loved of current track to true - log "<3 Yeah, that song is rad." + if player state is playing then + set favorited of current track to true + log "<3 Yeah, that song is rad." + else + return "No track is currently playing." + end if end tell \ No newline at end of file From d0b0ebb51cbf00191eb784a7ad0f424c4b2f0b65 Mon Sep 17 00:00:00 2001 From: hugo <102398135+hugivar@users.noreply.github.com> Date: Tue, 27 Feb 2024 09:52:24 -0500 Subject: [PATCH 026/146] Update apple-music-love-current-track.applescript --- .../apple-music/apple-music-love-current-track.applescript | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/commands/media/apple-music/apple-music-love-current-track.applescript b/commands/media/apple-music/apple-music-love-current-track.applescript index 673f24ec2..4971ffa85 100755 --- a/commands/media/apple-music/apple-music-love-current-track.applescript +++ b/commands/media/apple-music/apple-music-love-current-track.applescript @@ -13,8 +13,8 @@ tell application "Music" if player state is playing then set favorited of current track to true - log "<3 Yeah, that song is rad." + log "<3 Yeah, the song is now favorited" else return "No track is currently playing." end if - end tell \ No newline at end of file + end tell From 28622ba286d0979518c13a8a922edc63cfac6e5a Mon Sep 17 00:00:00 2001 From: RealTong Date: Sat, 2 Mar 2024 12:46:14 +0800 Subject: [PATCH 027/146] feat(apps/mail): add copy-captcha-from-mail script This script allows users to copy verification codes from Apple Mail and automatically copies them to the clipboard. Users can then paste the verification code anywhere they need it. --- commands/apps/mail/copy-captcha-from-mail.py | 97 +++++++++++++++++++ commands/apps/mail/images/mail.png | Bin 0 -> 4056 bytes 2 files changed, 97 insertions(+) create mode 100755 commands/apps/mail/copy-captcha-from-mail.py create mode 100644 commands/apps/mail/images/mail.png diff --git a/commands/apps/mail/copy-captcha-from-mail.py b/commands/apps/mail/copy-captcha-from-mail.py new file mode 100755 index 000000000..de5cae47b --- /dev/null +++ b/commands/apps/mail/copy-captcha-from-mail.py @@ -0,0 +1,97 @@ +#!/usr/bin/env python3 + +# Copy the verification code from Mail. +# +# Dependency: This script requires the `emlx` package. +# Install it via `pip install emlx`. +# +# Required parameters: +# @raycast.schemaVersion 1 +# @raycast.title CaptchaFromMail +# @raycast.mode silent + +# Optional parameters: +# @raycast.icon ./images/mail.png +# @raycast.packageName Mail + +# Documentation: +# @raycast.description Copy the captcha from the emlx file. +# @raycast.author RealTong +# @raycast.authorURL https://raycast.com/RealTong + +import os +import re +import pyperclip +import emlx + + +def extract_captcha_from_emlx(emlx_path): + if emlx_file is None or os.path.exists(emlx_file) is False: + print("Mail not found") + return + email = emlx.read(emlx_path) + headers = email.headers + content = email.html + subject = headers["Subject"] + captcha_match_keyword = [ + "验证码", + "动态密码", + "代码", + "确认", + "码", + "verification", + "code", + "confirm", + ] + content_pattern = r"\b[0-9]{6}\b" + subject_pattern = r"\b[a-zA-Z0-9]{6}\b" + # 判断内容中是否包含验证码关键字, 只有包含关键字的邮件才会查找验证码 + for keyword in captcha_match_keyword: + if keyword in subject: + if re.search(subject_pattern, subject): + captcha = re.search(subject_pattern, subject).group() + pyperclip.copy(captcha) + print("Verification code successfully copied to clipboard:", captcha) + return + if re.search(content_pattern, content): + captcha = re.search(content_pattern, content).group() + pyperclip.copy(captcha) + print("Verification code successfully copied to clipboard:", captcha) + return + else: + print("Verification code not found") + else: + print("Not a verification code email") + + +def get_latest_emlx_file(folder): + latest_emlx_file = None + latest_mod_time = 0 + for root, dirs, files in os.walk(folder): + for file in files: + if file.endswith(".emlx"): + file_path = os.path.join(root, file) + mod_time = os.path.getmtime(file_path) + if mod_time > latest_mod_time: + latest_mod_time = mod_time + latest_emlx_file = file_path + + return latest_emlx_file + + +if __name__ == "__main__": + try: + import emlx + + os.listdir(f"/") + except ImportError: + print("emlx not installed, please run 'pip install emlx' to install it") + exit(1) + except OSError: + print( + "Currently there is no Full Disk Access permission, please grant Full Disk Access permission to the terminal in System Preferences > Security & Privacy > Privacy > Full Disk Access." + ) + exit(1) + mail_path = f"{os.path.expanduser('~')}/Library/Mail/V10/" + emlx_file = get_latest_emlx_file(mail_path) + extract_captcha_from_emlx(emlx_file) diff --git a/commands/apps/mail/images/mail.png b/commands/apps/mail/images/mail.png new file mode 100644 index 0000000000000000000000000000000000000000..0ae662ac390eebadd2ea29664cce1720120060e1 GIT binary patch literal 4056 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 K{YNL=qy7VX4>i01 literal 0 HcmV?d00001 From 8b4255ca2e3ed85f29b0f361f79f1503ba950c98 Mon Sep 17 00:00:00 2001 From: Cody C Date: Sun, 10 Mar 2024 17:10:31 -0400 Subject: [PATCH 028/146] feat(communication/slack): slack-dev-mode script (#910) * feat(communication/slack): slack-dev-mode script * fix(slack-dev-mode): don't include Slack in the title --- commands/communication/slack/slack-dev-mode.sh | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100644 commands/communication/slack/slack-dev-mode.sh diff --git a/commands/communication/slack/slack-dev-mode.sh b/commands/communication/slack/slack-dev-mode.sh new file mode 100644 index 000000000..cd90d1cd5 --- /dev/null +++ b/commands/communication/slack/slack-dev-mode.sh @@ -0,0 +1,17 @@ +#!/bin/bash + +# Required parameters: +# @raycast.schemaVersion 1 +# @raycast.title Launch Dev Mode +# @raycast.mode silent + +# Optional parameters: +# @raycast.icon images/slack-logo.png +# @raycast.packageName Slack + +# Documentation: +# @raycast.description Open Slack with the Developer Menu enabled. ⌘⌥I to access the Developer Menu. If you find it's not working, quit Slack and run this command again. +# @raycast.author Cody Carrell +# @raycast.authorURL https://raycast.com/sourcecody + +SLACK_DEVELOPER_MENU=true open /Applications/Slack.app From 80841b6a1a2d12c33df93faae7f947b89890ff9e Mon Sep 17 00:00:00 2001 From: Maximilian <85677120+maximilianzuern@users.noreply.github.com> Date: Fri, 1 Mar 2024 12:51:47 +0100 Subject: [PATCH 029/146] Fixed title issue --- commands/apps/notes/create-note-from-clipboard.applescript | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/commands/apps/notes/create-note-from-clipboard.applescript b/commands/apps/notes/create-note-from-clipboard.applescript index e54c6bf7b..f131fd31a 100755 --- a/commands/apps/notes/create-note-from-clipboard.applescript +++ b/commands/apps/notes/create-note-from-clipboard.applescript @@ -21,6 +21,6 @@ on run argv " tell application "Notes" activate - make new note at folder "Notes" with properties {name: (item 1 of argv), body:content} + make new note at folder "Notes" with properties {name:"", body:content} end tell end run From df7a410d6c1b3c2a94adb1e4c0b7fe989368433a Mon Sep 17 00:00:00 2001 From: Raycast Bot Date: Sun, 10 Mar 2024 21:12:02 +0000 Subject: [PATCH 030/146] Set scripts as executable --- commands/communication/slack/slack-dev-mode.sh | 0 1 file changed, 0 insertions(+), 0 deletions(-) mode change 100644 => 100755 commands/communication/slack/slack-dev-mode.sh diff --git a/commands/communication/slack/slack-dev-mode.sh b/commands/communication/slack/slack-dev-mode.sh old mode 100644 new mode 100755 From 50024302432024f241d4810d84b187f902a77029 Mon Sep 17 00:00:00 2001 From: Raycast Bot Date: Sun, 10 Mar 2024 21:12:55 +0000 Subject: [PATCH 031/146] Update Script Commands documentation --- commands/README.md | 1 + commands/extensions.json | 70 ++++++++++++++++++++++++++++------------ 2 files changed, 50 insertions(+), 21 deletions(-) diff --git a/commands/README.md b/commands/README.md index 7f699d1a6..3da720e7a 100644 --- a/commands/README.md +++ b/commands/README.md @@ -804,6 +804,7 @@ This repository contains sample commands and documentation to write your own one | | [Clear Slack DND](communication/slack/clear-slack-DND-status.sh) | Clear DND Status in Slack | [Sam Ching](https://github.com/samching) | | | | | 🧼 | [Clear Status](communication/slack/clear-slack-status.template.sh) | Clear your status in Slack. | [Thomas Paul Mann](https://github.com/thomaspaulmann) | | ✅ | | | | [Jump to...](communication/slack/slack-jump-to.applescript) | N/A | [Jakub Lanski](https://github.com/jaklan) | ✅ | | | + | | [Launch Dev Mode](communication/slack/slack-dev-mode.sh) | Open Slack with the Developer Menu enabled. ⌘⌥I to access the Developer Menu. If you find it's not working, quit Slack and run this command again. | [Cody Carrell](https://raycast.com/sourcecody) | | | | | | [Open Workspace by Index](communication/slack/slack-open-workspace-by-index.applescript) | N/A | [Jakub Lanski](https://github.com/jaklan) | ✅ | | | | | [Open Workspace by Name](communication/slack/slack-open-workspace-by-name.applescript) | N/A | [Jakub Lanski](https://github.com/jaklan) | ✅ | | | | | [Send Message in Channel](communication/slack/slack-send-message.applescript) | This script posts a message text to a slack channel and sets active status (defaults to random good morning message in #general) | [Faris Aziz](https://github.com/farisaziz12) | ✅ | | | diff --git a/commands/extensions.json b/commands/extensions.json index 70c6cbd5a..b501ba01c 100644 --- a/commands/extensions.json +++ b/commands/extensions.json @@ -4259,7 +4259,7 @@ "url" : "https:\/\/github.com\/designedbyclu" } ], - "createdAt" : "2021-05-10T13:42:50+08:00", + "createdAt" : "2021-02-04T00:45:59-08:00", "currentDirectoryPath" : null, "description" : "Checking DOGE coin price", "filename" : "doge.sh", @@ -4268,7 +4268,7 @@ "dark" : null, "light" : "images\/dogecoin-logo.png" }, - "identifier" : "5ef2d6fa688d7beb5849da1bfcf41b17", + "identifier" : "ef5ccfacde23ff614355afb1f378cc1b", "isTemplate" : false, "language" : "bash", "mode" : "inline", @@ -11671,6 +11671,34 @@ "schemaVersion" : 1, "title" : "Set DND Status", "updatedAt" : "2021-03-04T08:32:41+01:00" + }, + { + "authors" : [ + { + "name" : "Cody Carrell", + "url" : "https:\/\/raycast.com\/sourcecody" + } + ], + "createdAt" : "2024-03-10T17:10:31-04:00", + "currentDirectoryPath" : null, + "description" : "Open Slack with the Developer Menu enabled. ⌘⌥I to access the Developer Menu. If you find it's not working, quit Slack and run this command again.", + "filename" : "slack-dev-mode.sh", + "hasArguments" : false, + "icon" : { + "dark" : null, + "light" : "images\/slack-logo.png" + }, + "identifier" : "7c43ddc9b86f860583abf7ea64a4d324", + "isTemplate" : false, + "language" : "bash", + "mode" : "silent", + "needsConfirmation" : null, + "packageName" : "Slack", + "path" : "communication\/slack\/", + "refreshTime" : null, + "schemaVersion" : 1, + "title" : "Launch Dev Mode", + "updatedAt" : "2024-03-10T21:12:02+00:00" } ] }, @@ -13433,7 +13461,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Search Script Command", - "updatedAt" : "2021-07-13T21:10:54-07:00" + "updatedAt" : "2024-02-19T19:37:34-08:00" }, { "authors" : [ @@ -21896,7 +21924,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Love Current Track", - "updatedAt" : "2021-09-24T08:42:54-04:00" + "updatedAt" : "2024-02-27T09:52:24-05:00" } ] }, @@ -23350,40 +23378,40 @@ } ], "languages" : [ + { + "displayName" : "Ruby", + "icon" : "icon-ruby.png", + "name" : "ruby" + }, { "displayName" : "Node", "icon" : "icon-nodejs.png", "name" : "node" }, - { - "displayName" : "Bash", - "icon" : "icon-bash.png", - "name" : "bash" - }, - { - "displayName" : "AppleScript", - "icon" : "icon-applescript.png", - "name" : "applescript" - }, { "displayName" : "Python", "icon" : "icon-python.png", "name" : "python" }, - { - "displayName" : "Ruby", - "icon" : "icon-ruby.png", - "name" : "ruby" - }, { "displayName" : "Swift", "icon" : "icon-swift.png", "name" : "swift" + }, + { + "displayName" : "Bash", + "icon" : "icon-bash.png", + "name" : "bash" + }, + { + "displayName" : "AppleScript", + "icon" : "icon-applescript.png", + "name" : "applescript" } ], "metadata" : [ ], - "totalScriptCommands" : 812, - "updatedAt" : "2024-02-06T08:36:45Z" + "totalScriptCommands" : 813, + "updatedAt" : "2024-03-10T21:12:02Z" } \ No newline at end of file From 28fc1d9b7fd638f0464be3a6fa42ea3d8ee4292f Mon Sep 17 00:00:00 2001 From: RealTong Date: Sat, 2 Mar 2024 12:46:14 +0800 Subject: [PATCH 032/146] feat(apps/mail): add copy-captcha-from-mail script This script allows users to copy verification codes from Apple Mail and automatically copies them to the clipboard. Users can then paste the verification code anywhere they need it. --- commands/apps/mail/copy-captcha-from-mail.py | 97 +++++++++++++++++++ commands/apps/mail/images/mail.png | Bin 0 -> 4056 bytes 2 files changed, 97 insertions(+) create mode 100755 commands/apps/mail/copy-captcha-from-mail.py create mode 100644 commands/apps/mail/images/mail.png diff --git a/commands/apps/mail/copy-captcha-from-mail.py b/commands/apps/mail/copy-captcha-from-mail.py new file mode 100755 index 000000000..de5cae47b --- /dev/null +++ b/commands/apps/mail/copy-captcha-from-mail.py @@ -0,0 +1,97 @@ +#!/usr/bin/env python3 + +# Copy the verification code from Mail. +# +# Dependency: This script requires the `emlx` package. +# Install it via `pip install emlx`. +# +# Required parameters: +# @raycast.schemaVersion 1 +# @raycast.title CaptchaFromMail +# @raycast.mode silent + +# Optional parameters: +# @raycast.icon ./images/mail.png +# @raycast.packageName Mail + +# Documentation: +# @raycast.description Copy the captcha from the emlx file. +# @raycast.author RealTong +# @raycast.authorURL https://raycast.com/RealTong + +import os +import re +import pyperclip +import emlx + + +def extract_captcha_from_emlx(emlx_path): + if emlx_file is None or os.path.exists(emlx_file) is False: + print("Mail not found") + return + email = emlx.read(emlx_path) + headers = email.headers + content = email.html + subject = headers["Subject"] + captcha_match_keyword = [ + "验证码", + "动态密码", + "代码", + "确认", + "码", + "verification", + "code", + "confirm", + ] + content_pattern = r"\b[0-9]{6}\b" + subject_pattern = r"\b[a-zA-Z0-9]{6}\b" + # 判断内容中是否包含验证码关键字, 只有包含关键字的邮件才会查找验证码 + for keyword in captcha_match_keyword: + if keyword in subject: + if re.search(subject_pattern, subject): + captcha = re.search(subject_pattern, subject).group() + pyperclip.copy(captcha) + print("Verification code successfully copied to clipboard:", captcha) + return + if re.search(content_pattern, content): + captcha = re.search(content_pattern, content).group() + pyperclip.copy(captcha) + print("Verification code successfully copied to clipboard:", captcha) + return + else: + print("Verification code not found") + else: + print("Not a verification code email") + + +def get_latest_emlx_file(folder): + latest_emlx_file = None + latest_mod_time = 0 + for root, dirs, files in os.walk(folder): + for file in files: + if file.endswith(".emlx"): + file_path = os.path.join(root, file) + mod_time = os.path.getmtime(file_path) + if mod_time > latest_mod_time: + latest_mod_time = mod_time + latest_emlx_file = file_path + + return latest_emlx_file + + +if __name__ == "__main__": + try: + import emlx + + os.listdir(f"/") + except ImportError: + print("emlx not installed, please run 'pip install emlx' to install it") + exit(1) + except OSError: + print( + "Currently there is no Full Disk Access permission, please grant Full Disk Access permission to the terminal in System Preferences > Security & Privacy > Privacy > Full Disk Access." + ) + exit(1) + mail_path = f"{os.path.expanduser('~')}/Library/Mail/V10/" + emlx_file = get_latest_emlx_file(mail_path) + extract_captcha_from_emlx(emlx_file) diff --git a/commands/apps/mail/images/mail.png b/commands/apps/mail/images/mail.png new file mode 100644 index 0000000000000000000000000000000000000000..0ae662ac390eebadd2ea29664cce1720120060e1 GIT binary patch literal 4056 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 K{YNL=qy7VX4>i01 literal 0 HcmV?d00001 From a067a63082117c24b7533705ffeb2ffc49ddbc23 Mon Sep 17 00:00:00 2001 From: Raycast Bot Date: Sun, 10 Mar 2024 21:16:33 +0000 Subject: [PATCH 033/146] Update Script Commands documentation --- commands/README.md | 1 + commands/extensions.json | 54 ++++++++++++++++++++++++++++++---------- 2 files changed, 42 insertions(+), 13 deletions(-) diff --git a/commands/README.md b/commands/README.md index 3da720e7a..9e7ad93c9 100644 --- a/commands/README.md +++ b/commands/README.md @@ -408,6 +408,7 @@ This repository contains sample commands and documentation to write your own one | Icon | Title | Description | Author | Args | Templ | Lang | | :--: | ----- | ----------- | :----: | :--: | :---: | :--: | + | | [CaptchaFromMail](apps/mail/copy-captcha-from-mail.py) | Copy the captcha from the emlx file. | [RealTong](https://raycast.com/RealTong) | | | | | 📧 | [Copy Foreground Mail Deeplink](apps/mail/copy-foreground-mail-deeplink.applescript) | Copies the foreground Mail deeplink | [Jesse Claven](https://github.com/jesse-c) | | | | #### Medo diff --git a/commands/extensions.json b/commands/extensions.json index b501ba01c..fb374698d 100644 --- a/commands/extensions.json +++ b/commands/extensions.json @@ -15464,6 +15464,34 @@ "schemaVersion" : 1, "title" : "Copy Foreground Mail Deeplink", "updatedAt" : "2021-05-22T16:27:53+01:00" + }, + { + "authors" : [ + { + "name" : "RealTong", + "url" : "https:\/\/raycast.com\/RealTong" + } + ], + "createdAt" : "2024-03-02T12:46:14+08:00", + "currentDirectoryPath" : null, + "description" : "Copy the captcha from the emlx file.", + "filename" : "copy-captcha-from-mail.py", + "hasArguments" : false, + "icon" : { + "dark" : null, + "light" : ".\/images\/mail.png" + }, + "identifier" : "eb5104b3db21de0c7ea654c49319716a", + "isTemplate" : false, + "language" : "python", + "mode" : "silent", + "needsConfirmation" : null, + "packageName" : "Mail", + "path" : "apps\/mail\/", + "refreshTime" : null, + "schemaVersion" : 1, + "title" : "CaptchaFromMail", + "updatedAt" : "2024-03-02T12:46:14+08:00" } ] }, @@ -17135,7 +17163,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Create Note From Clipboard", - "updatedAt" : "2021-08-18T17:31:58+01:00" + "updatedAt" : "2024-03-01T12:51:47+01:00" }, { "authors" : [ @@ -23383,11 +23411,21 @@ "icon" : "icon-ruby.png", "name" : "ruby" }, + { + "displayName" : "Bash", + "icon" : "icon-bash.png", + "name" : "bash" + }, { "displayName" : "Node", "icon" : "icon-nodejs.png", "name" : "node" }, + { + "displayName" : "AppleScript", + "icon" : "icon-applescript.png", + "name" : "applescript" + }, { "displayName" : "Python", "icon" : "icon-python.png", @@ -23397,21 +23435,11 @@ "displayName" : "Swift", "icon" : "icon-swift.png", "name" : "swift" - }, - { - "displayName" : "Bash", - "icon" : "icon-bash.png", - "name" : "bash" - }, - { - "displayName" : "AppleScript", - "icon" : "icon-applescript.png", - "name" : "applescript" } ], "metadata" : [ ], - "totalScriptCommands" : 813, - "updatedAt" : "2024-03-10T21:12:02Z" + "totalScriptCommands" : 814, + "updatedAt" : "2024-03-10T21:15:40Z" } \ No newline at end of file From 3cd3e45d7c58c2215385f90b8f59025632f523d8 Mon Sep 17 00:00:00 2001 From: Teepob Harutaipree Date: Tue, 12 Mar 2024 21:01:55 +0700 Subject: [PATCH 034/146] simplify title encoding logic and change the params to pass correctly --- commands/developer-utils/create-image-from-code.sh | 12 +++--------- 1 file changed, 3 insertions(+), 9 deletions(-) diff --git a/commands/developer-utils/create-image-from-code.sh b/commands/developer-utils/create-image-from-code.sh index 8b7e9387a..2a3aa7792 100755 --- a/commands/developer-utils/create-image-from-code.sh +++ b/commands/developer-utils/create-image-from-code.sh @@ -7,7 +7,7 @@ # Optional parameters: # @raycast.icon ./images/ray-so.png -# @raycast.argument1 { "type": "text", "placeholder": "Title", "optional": true } +# @raycast.argument1 { "type": "text", "placeholder": "Title", "optional": true, "percentEncoded": true } # Documentation: # @raycast.description Create beautiful images of your code with https://ray.so @@ -29,16 +29,10 @@ PADDING="64" LANGUAGE="auto" # Main: - -if [[ -z "$1" ]] -then - TITLE="Untitled-1" -else - TITLE=$(php -r "echo urlencode(\"$1\");") -fi +TITLE=${1:-"Untitled"} CODE=$(pbpaste | base64) # Urlencode any + symbols in the base64 encoded string CODE=${CODE//+/%2B} -open "https://ray.so/?colors=$COLORS&background=$BACKGROUND&darkMode=$DARK_MODE&padding=$PADDING&title=$TITLE&code=$CODE&language=$LANGUAGE" +open "https://ray.so/?#title=$TITLE&code=$CODE&colors=$COLORS&background=$BACKGROUND&darkMode=$DARK_MODE&padding=$PADDING&title=$TITLE&code=$CODE&language=$LANGUAGE" From 8fd5100950b1b8356ac1b5b69d9274e54f574f5f Mon Sep 17 00:00:00 2001 From: RealTong Date: Thu, 21 Mar 2024 12:03:11 +0800 Subject: [PATCH 035/146] feat(Conversions/Space-fixer): add Space-fixer script This script is used to add spaces between Chinese characters, English letters, and numbers to comply with the writing conventions of Chinese technical documents. --- commands/conversions/space-fixer.sh | 45 +++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100755 commands/conversions/space-fixer.sh diff --git a/commands/conversions/space-fixer.sh b/commands/conversions/space-fixer.sh new file mode 100755 index 000000000..bcaa0f678 --- /dev/null +++ b/commands/conversions/space-fixer.sh @@ -0,0 +1,45 @@ +#!/usr/bin/env bash + +# Add spaces between Chinese and English, number or symbols. +# +# Dependency: This script requires the `https://www.npmjs.com/package/pangu` package. +# Install it via `pip install pangu` or `pnpm install -g pangu` or `npm install -g pangu`. +# +# Required parameters: +# @raycast.schemaVersion 1 +# @raycast.title Space Fixer +# @raycast.mode silent + +# Optional parameters: +# @raycast.icon 📝 +# @raycast.packageName Conversions + +# Documentation: +# @raycast.description Add spaces between Chinese and English, number or symbols. +# @raycast.author RealTong +# @raycast.authorURL https://raycast.com/RealTong + +pangu_path="/Users/realtong/Library/pnpm/pangu" + +if [ -z "$pangu_path" ]; then + echo "Error: pangu not found in PATH" + exit 1 +fi + +input=$(pbpaste) + +if [ -z "$input" ]; then + echo "Input is empty" + exit 1 +fi + +# 调用 pangu : pangu -t "text" + +output=$($pangu_path -t "$input") +if [ -z "$output" ]; then + echo "Output is empty" + exit 1 +fi + +echo $output | pbcopy +echo "Fixed Chinese text has been copied to the clipboard" From 53fd1d2c86c82f4356eb7f34ce08a6c609bda2a6 Mon Sep 17 00:00:00 2001 From: RealTong Date: Fri, 22 Mar 2024 18:09:49 +0800 Subject: [PATCH 036/146] Fix(Conversions/Space-fixer): Automatically detect pangu paths --- commands/conversions/space-fixer.sh | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/commands/conversions/space-fixer.sh b/commands/conversions/space-fixer.sh index bcaa0f678..ef716c82a 100755 --- a/commands/conversions/space-fixer.sh +++ b/commands/conversions/space-fixer.sh @@ -19,7 +19,19 @@ # @raycast.author RealTong # @raycast.authorURL https://raycast.com/RealTong -pangu_path="/Users/realtong/Library/pnpm/pangu" +# pip, pnp paths +export PATH="$HOME/.pyenv/shims:$HOME/Library/pnpm:$PATH" +# nvm paths +export NVM_DIR="$HOME/.nvm" +[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" +# npm paths +NPM_BIN_PATH=$(which npm) +if [[ -n "$NPM_BIN_PATH" ]]; then + NPM_DIR=$(dirname "$NPM_BIN_PATH") + export PATH="$NPM_DIR:$PATH" +fi + +pangu_path=$(which pangu) if [ -z "$pangu_path" ]; then echo "Error: pangu not found in PATH" @@ -33,7 +45,7 @@ if [ -z "$input" ]; then exit 1 fi -# 调用 pangu : pangu -t "text" +# Call pangu : pangu -t "text" output=$($pangu_path -t "$input") if [ -z "$output" ]; then From dbbd521b68d313de343517ff6282dae3a764101e Mon Sep 17 00:00:00 2001 From: Raycast Bot Date: Wed, 27 Mar 2024 10:10:18 +0000 Subject: [PATCH 037/146] Update Script Commands documentation --- commands/README.md | 1 + commands/extensions.json | 66 ++++++++++++++++++++++++++++------------ 2 files changed, 48 insertions(+), 19 deletions(-) diff --git a/commands/README.md b/commands/README.md index 9e7ad93c9..a40a0f361 100644 --- a/commands/README.md +++ b/commands/README.md @@ -844,6 +844,7 @@ This repository contains sample commands and documentation to write your own one | 📝 | [Rich Text to Markdown](conversions/rich-text-clipboard-to-markdown.sh) | Convert rich text clipboard data to GitHub Flavored Markdown using Pandoc | [Adam Zethraeus](https://github.com/adam-zethraeus) | | | | | | [Screenshot QR Code to Clipboard](conversions/qr-code-screenshot-to-text.sh) | Decode QR Code from screenshot to clipboard using https://qrserver.com/ | [Diego Lopes](https://github.com/Dihgg) | | | | | 🔗 | [Simple Markdown Link Generator](conversions/inputs-to-markdown-link.sh) | Quickly and simply generate a markdown formatted link with your specified URL and title. | [atzzCokeK](https://github.com/atzzCokeK) | ✅ | | | + | 📝 | [Space Fixer](conversions/space-fixer.sh) | Add spaces between Chinese and English, number or symbols. | [RealTong](https://raycast.com/RealTong) | | | | | 🔠 | [Strikethrough Text](conversions/strikethrough.sh) | Converts given text (or clipboard if no argument) to t̶e̶x̶t̶ | [Jakub Lanski](https://github.com/jaklan) | ✅ | | | | ✂️ | [Trim Newlines and Tabs](conversions/trim-newlines-tabs.sh) | Trim newlines and tabs from clipboard content. | [Caleb Stauffer](https://github.com/crstauf) | | | | | 🦸‍♀️ | [Unicode Superscript](conversions/unicode-superscript.sh) | Convert clipboards text to fake unicode superscript | [Adam Zethraeus](https://github.com/adam-zethraeus) | ✅ | | | diff --git a/commands/extensions.json b/commands/extensions.json index fb374698d..e185043c3 100644 --- a/commands/extensions.json +++ b/commands/extensions.json @@ -249,6 +249,34 @@ "name" : "Conversions", "path" : "conversions", "scriptCommands" : [ + { + "authors" : [ + { + "name" : "RealTong", + "url" : "https:\/\/raycast.com\/RealTong" + } + ], + "createdAt" : "2024-03-21T12:03:11+08:00", + "currentDirectoryPath" : null, + "description" : "Add spaces between Chinese and English, number or symbols.", + "filename" : "space-fixer.sh", + "hasArguments" : false, + "icon" : { + "dark" : null, + "light" : "📝" + }, + "identifier" : "01ce6b040aecd6bcd05519b1880154c6", + "isTemplate" : false, + "language" : "bash", + "mode" : "silent", + "needsConfirmation" : null, + "packageName" : "Conversions", + "path" : "conversions\/", + "refreshTime" : null, + "schemaVersion" : 1, + "title" : "Space Fixer", + "updatedAt" : "2024-03-22T18:09:49+08:00" + }, { "authors" : [ { @@ -8407,7 +8435,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Create Image from Code", - "updatedAt" : "2021-12-07T11:53:06+07:00" + "updatedAt" : "2024-03-12T21:01:55+07:00" }, { "authors" : [ @@ -23407,14 +23435,9 @@ ], "languages" : [ { - "displayName" : "Ruby", - "icon" : "icon-ruby.png", - "name" : "ruby" - }, - { - "displayName" : "Bash", - "icon" : "icon-bash.png", - "name" : "bash" + "displayName" : "Python", + "icon" : "icon-python.png", + "name" : "python" }, { "displayName" : "Node", @@ -23422,24 +23445,29 @@ "name" : "node" }, { - "displayName" : "AppleScript", - "icon" : "icon-applescript.png", - "name" : "applescript" - }, - { - "displayName" : "Python", - "icon" : "icon-python.png", - "name" : "python" + "displayName" : "Bash", + "icon" : "icon-bash.png", + "name" : "bash" }, { "displayName" : "Swift", "icon" : "icon-swift.png", "name" : "swift" + }, + { + "displayName" : "Ruby", + "icon" : "icon-ruby.png", + "name" : "ruby" + }, + { + "displayName" : "AppleScript", + "icon" : "icon-applescript.png", + "name" : "applescript" } ], "metadata" : [ ], - "totalScriptCommands" : 814, - "updatedAt" : "2024-03-10T21:15:40Z" + "totalScriptCommands" : 815, + "updatedAt" : "2024-03-27T10:09:25Z" } \ No newline at end of file From b76e5b8f1b258678c3fd0f7660d07e9e9eeef7fa Mon Sep 17 00:00:00 2001 From: Fed Date: Sun, 7 Apr 2024 23:23:52 +0400 Subject: [PATCH 038/146] Rename Speaker Setup.sh to speaker-setup.sh The spacebar in the script name renders incorrectly in the autogenerated README.md file. --- .../media/speaker-setup/{Speaker Setup.sh => speaker-setup.sh} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename commands/media/speaker-setup/{Speaker Setup.sh => speaker-setup.sh} (100%) diff --git a/commands/media/speaker-setup/Speaker Setup.sh b/commands/media/speaker-setup/speaker-setup.sh similarity index 100% rename from commands/media/speaker-setup/Speaker Setup.sh rename to commands/media/speaker-setup/speaker-setup.sh From 0055bcf9a4090989220b962f4f619d796edf72c4 Mon Sep 17 00:00:00 2001 From: Raycast Bot Date: Mon, 8 Apr 2024 08:07:36 +0000 Subject: [PATCH 039/146] Update Script Commands documentation --- commands/README.md | 2 +- commands/extensions.json | 30 +++++++++++++++--------------- 2 files changed, 16 insertions(+), 16 deletions(-) diff --git a/commands/README.md b/commands/README.md index a40a0f361..c3c4d6fe7 100644 --- a/commands/README.md +++ b/commands/README.md @@ -1224,7 +1224,7 @@ This repository contains sample commands and documentation to write your own one | Icon | Title | Description | Author | Args | Templ | Lang | | :--: | ----- | ----------- | :----: | :--: | :---: | :--: | - | 🔊 | [Speaker Setup](media/speaker-setup/Speaker Setup.sh) | N/A | [Kailash Yellareddy](https://github.com/kyellareddy) | | | | + | 🔊 | [Speaker Setup](media/speaker-setup/speaker-setup.sh) | N/A | [Kailash Yellareddy](https://github.com/kyellareddy) | | | | #### Spotify diff --git a/commands/extensions.json b/commands/extensions.json index e185043c3..1771d18a6 100644 --- a/commands/extensions.json +++ b/commands/extensions.json @@ -21538,13 +21538,13 @@ "createdAt" : "2024-01-09T01:17:34-08:00", "currentDirectoryPath" : null, "description" : null, - "filename" : "Speaker Setup.sh", + "filename" : "speaker-setup.sh", "hasArguments" : false, "icon" : { "dark" : null, "light" : "🔊" }, - "identifier" : "c126087406eedbe412b247d5aec01d4e", + "identifier" : "7920ccb4e58a80afd149f6ce81e8f185", "isTemplate" : false, "language" : "bash", "mode" : "compact", @@ -21554,7 +21554,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Speaker Setup", - "updatedAt" : "2024-01-09T10:22:01+01:00" + "updatedAt" : "2024-04-07T23:23:52+04:00" } ] }, @@ -23434,40 +23434,40 @@ } ], "languages" : [ + { + "displayName" : "Swift", + "icon" : "icon-swift.png", + "name" : "swift" + }, { "displayName" : "Python", "icon" : "icon-python.png", "name" : "python" }, { - "displayName" : "Node", - "icon" : "icon-nodejs.png", - "name" : "node" + "displayName" : "AppleScript", + "icon" : "icon-applescript.png", + "name" : "applescript" }, { "displayName" : "Bash", "icon" : "icon-bash.png", "name" : "bash" }, - { - "displayName" : "Swift", - "icon" : "icon-swift.png", - "name" : "swift" - }, { "displayName" : "Ruby", "icon" : "icon-ruby.png", "name" : "ruby" }, { - "displayName" : "AppleScript", - "icon" : "icon-applescript.png", - "name" : "applescript" + "displayName" : "Node", + "icon" : "icon-nodejs.png", + "name" : "node" } ], "metadata" : [ ], "totalScriptCommands" : 815, - "updatedAt" : "2024-03-27T10:09:25Z" + "updatedAt" : "2024-04-08T08:06:31Z" } \ No newline at end of file From f132baa39957337b300c5c75c6f27834a07b6040 Mon Sep 17 00:00:00 2001 From: Sam Wright Date: Thu, 11 Apr 2024 17:21:31 +1000 Subject: [PATCH 040/146] Add iPerf Speed Test to dashboards (#926) * Add iPerf Speed Test to dashboards * Add suggestions from unnamedd Co-authored-by: Thiago Holanda * Rename iperf-speed-test.sh to iperf-speed-test.template.sh --------- Co-authored-by: Thiago Holanda --- .../dashboards/iperf-speed-test.template.sh | 30 +++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 commands/dashboards/iperf-speed-test.template.sh diff --git a/commands/dashboards/iperf-speed-test.template.sh b/commands/dashboards/iperf-speed-test.template.sh new file mode 100644 index 000000000..1e5f7d759 --- /dev/null +++ b/commands/dashboards/iperf-speed-test.template.sh @@ -0,0 +1,30 @@ +#!/bin/bash + +# Dependency: This script requires `iPerf` to be installed: https://iperf.fr/iperf-download.php +# Install via homebrew: `brew install iperf` + +# Required parameters: +# @raycast.schemaVersion 1 +# @raycast.title Speed Test +# @raycast.mode inline +# @raycast.refreshTime 1h +# @raycast.packageName iPerf + +# Optional parameters: +# @raycast.icon 💾 + +# Documentation: +# @raycast.description Runs an iPerf Speed Test. +# @raycast.author Sam Wright +# @raycast.authorURL https://raycast.com/samywamy10 + +# Add the IP address of your iPerf server here +ip_address='192.168.86.44' + +if ! command -v iperf &> /dev/null; then + echo "iperf command is required ('brew install iperf' or https://iperf.fr/iperf-download.php)."; + exit 1; +fi + +{ iperf3 -c $ip_address | grep 'sender' | tail -n 1 | awk '{print $7 " " $8}' && date +'%-I:%M%p'; } | tr '\n' ' ' | awk '{$3="@ "$3; print $0}' + From cfe4de39aac245f7dac5cf8302b0bae3d91a2fb9 Mon Sep 17 00:00:00 2001 From: Raycast Bot Date: Thu, 11 Apr 2024 07:23:05 +0000 Subject: [PATCH 041/146] Set scripts as executable --- commands/dashboards/iperf-speed-test.template.sh | 0 1 file changed, 0 insertions(+), 0 deletions(-) mode change 100644 => 100755 commands/dashboards/iperf-speed-test.template.sh diff --git a/commands/dashboards/iperf-speed-test.template.sh b/commands/dashboards/iperf-speed-test.template.sh old mode 100644 new mode 100755 From 0ef31d1da8f61f8fda45313e76a525512a9eddd4 Mon Sep 17 00:00:00 2001 From: Raycast Bot Date: Thu, 11 Apr 2024 07:23:58 +0000 Subject: [PATCH 042/146] Update Script Commands documentation --- commands/README.md | 7 +++++ commands/extensions.json | 60 +++++++++++++++++++++++++++++++--------- 2 files changed, 54 insertions(+), 13 deletions(-) diff --git a/commands/README.md b/commands/README.md index c3c4d6fe7..6818f79f6 100644 --- a/commands/README.md +++ b/commands/README.md @@ -110,6 +110,7 @@ This repository contains sample commands and documentation to write your own one - [Firebase](#firebase) - [Mood Meter](#mood-meter) - [Open Weather](#open-weather) +- [Dashboards](#dashboards) - [Developer Utils](#developer-utils) - [Aws](#aws) - [Brew](#brew) @@ -923,6 +924,12 @@ This repository contains sample commands and documentation to write your own one | ⛅️ | [Current Weather](dashboard/open-weather/weather-current.template.sh) | Get current weather from OpenWeather | [Marek Mašek](https://github.com/marekmasek) | | ✅ | | | ⛅️ | [Weather Forecast](dashboard/open-weather/weather-forecast.template.sh) | Get weather forecast from OpenWeather | [Marek Mašek](https://github.com/marekmasek) | | ✅ | | +## Dashboards + +| Icon | Title | Description | Author | Args | Templ | Lang | +| :--: | ----- | ----------- | :----: | :--: | :---: | :--: | + | 💾 | [Speed Test](dashboards/iperf-speed-test.template.sh) | Runs an iPerf Speed Test. | [Sam Wright](https://raycast.com/samywamy10) | | ✅ | | + ## Developer Utils | Icon | Title | Description | Author | Args | Templ | Lang | diff --git a/commands/extensions.json b/commands/extensions.json index 1771d18a6..0e7557251 100644 --- a/commands/extensions.json +++ b/commands/extensions.json @@ -7507,6 +7507,40 @@ } ] }, + { + "name" : "Dashboards", + "path" : "dashboards", + "scriptCommands" : [ + { + "authors" : [ + { + "name" : "Sam Wright", + "url" : "https:\/\/raycast.com\/samywamy10" + } + ], + "createdAt" : "2024-04-11T17:21:31+10:00", + "currentDirectoryPath" : null, + "description" : "Runs an iPerf Speed Test.", + "filename" : "iperf-speed-test.template.sh", + "hasArguments" : false, + "icon" : { + "dark" : null, + "light" : "💾" + }, + "identifier" : "804d7f7d15474c0b6f5798afa59badee", + "isTemplate" : true, + "language" : "bash", + "mode" : "inline", + "needsConfirmation" : null, + "packageName" : "iPerf", + "path" : "dashboards\/", + "refreshTime" : "1h", + "schemaVersion" : 1, + "title" : "Speed Test", + "updatedAt" : "2024-04-11T07:23:05+00:00" + } + ] + }, { "name" : "Developer Utils", "path" : "developer-utils", @@ -23435,15 +23469,20 @@ ], "languages" : [ { - "displayName" : "Swift", - "icon" : "icon-swift.png", - "name" : "swift" + "displayName" : "Ruby", + "icon" : "icon-ruby.png", + "name" : "ruby" }, { "displayName" : "Python", "icon" : "icon-python.png", "name" : "python" }, + { + "displayName" : "Node", + "icon" : "icon-nodejs.png", + "name" : "node" + }, { "displayName" : "AppleScript", "icon" : "icon-applescript.png", @@ -23455,19 +23494,14 @@ "name" : "bash" }, { - "displayName" : "Ruby", - "icon" : "icon-ruby.png", - "name" : "ruby" - }, - { - "displayName" : "Node", - "icon" : "icon-nodejs.png", - "name" : "node" + "displayName" : "Swift", + "icon" : "icon-swift.png", + "name" : "swift" } ], "metadata" : [ ], - "totalScriptCommands" : 815, - "updatedAt" : "2024-04-08T08:06:31Z" + "totalScriptCommands" : 816, + "updatedAt" : "2024-04-11T07:23:05Z" } \ No newline at end of file From 70355165cc78570f14906a6db022709d27565565 Mon Sep 17 00:00:00 2001 From: Timothy Boye Date: Mon, 22 Apr 2024 16:22:28 +1000 Subject: [PATCH 043/146] Update default-browser-front-most-app - Firefoc dev and SigmaOS (#925) * Update default-browser-front-most-app - Firefoc dev and SigmaOS Firexfox Developer Edition was not working as chrome dev was catching any browser with dev in the name before it could get to firefox dev, moved firefox dev before chrome to allow both to catch properly. Added SigmaOS to browser list. * Update default-browser-front-most-app.applescript to include Arc As requested, Arc browser has been added to the default-browser-front-most-app.applescript. As an aside could browser manufacturers please stop using unclear browser names. chrome development called just dev, SigmaOS called macos for some reason, and Arc is just calling itself browser... --- .../system/default-browser-front-most-app.applescript | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/commands/system/default-browser-front-most-app.applescript b/commands/system/default-browser-front-most-app.applescript index 7b67aeae7..83b41fc28 100755 --- a/commands/system/default-browser-front-most-app.applescript +++ b/commands/system/default-browser-front-most-app.applescript @@ -38,6 +38,8 @@ if (raycastArgv is equal to "") then set browserName to "safari" else if (appName is equal to "Safari Technology Preview") then set browserName to "safaritechnologypreview" + else if (appName contains "Firefox Dev") then + set browserName to "firefoxdeveloperedition" # set Google chrome dev as default browser # it need to put before Chrome else if (appName contains "dev") then @@ -48,8 +50,10 @@ if (raycastArgv is equal to "") then set browserName to "chromium" else if (appName is equal to "Firefox") then set browserName to "firefox" - else if (appName is equal to "Firefox Developer Edition") then - set browserName to "firefoxdeveloperedition" + else if (appName is equal to "SigmaOS") then + set browserName to "macos" + else if (appName is equal to "Arc") then + set browserName to "browser" end if else From ea44ba2c525e2295996b694dcb5aab1c3c7bf2b8 Mon Sep 17 00:00:00 2001 From: Jelte Lagendijk Date: Mon, 22 Apr 2024 08:23:05 +0200 Subject: [PATCH 044/146] feat: Add Dock Orientation/Autohide (#933) * feat: Add Dock Orientation/Autohide * Apply suggestions from code review Co-authored-by: Thiago Holanda * Rename script --------- Co-authored-by: Thiago Holanda --- commands/system/dock-autohide-toggle.sh | 23 +++++++++++++++++++++++ commands/system/dock-set-autohide.sh | 18 ++++++++++++++++++ commands/system/dock-set-position.sh | 18 ++++++++++++++++++ 3 files changed, 59 insertions(+) create mode 100755 commands/system/dock-autohide-toggle.sh create mode 100755 commands/system/dock-set-autohide.sh create mode 100755 commands/system/dock-set-position.sh diff --git a/commands/system/dock-autohide-toggle.sh b/commands/system/dock-autohide-toggle.sh new file mode 100755 index 000000000..5b05c740d --- /dev/null +++ b/commands/system/dock-autohide-toggle.sh @@ -0,0 +1,23 @@ +#!/bin/bash + +# Required parameters: +# @raycast.schemaVersion 1 +# @raycast.title Toggle Dock Autohide +# @raycast.mode silent + +# Optional parameters: +# @raycast.icon 🤖 +# @raycast.packageName System + +# Documentation: +# @raycast.description Toggle the Dock Autohide +# @raycast.author Jelte Lagendijk +# @raycast.authorURL https://raycast.com/j3lte + +autohide=$(defaults read com.apple.dock autohide) + +if [[ $autohide == 1 ]]; then + defaults write com.apple.dock autohide -bool false; killall Dock +else + defaults write com.apple.dock autohide -bool true; killall Dock +fi diff --git a/commands/system/dock-set-autohide.sh b/commands/system/dock-set-autohide.sh new file mode 100755 index 000000000..f3a4c0287 --- /dev/null +++ b/commands/system/dock-set-autohide.sh @@ -0,0 +1,18 @@ +#!/bin/bash + +# Required parameters: +# @raycast.schemaVersion 1 +# @raycast.title Dock Set Autohide +# @raycast.mode silent + +# Optional parameters: +# @raycast.icon 🤖 +# @raycast.argument1 { "type": "dropdown", "placeholder": "On/Off", "data": [{"title": "Off", "value": "false"}, {"title": "On", "value": "true"}] } +# @raycast.packageName System + +# Documentation: +# @raycast.description Set the Dock autohide +# @raycast.author Jelte Lagendijk +# @raycast.authorURL https://raycast.com/j3lte + +defaults write com.apple.dock autohide -bool $1; killall Dock diff --git a/commands/system/dock-set-position.sh b/commands/system/dock-set-position.sh new file mode 100755 index 000000000..de91f8452 --- /dev/null +++ b/commands/system/dock-set-position.sh @@ -0,0 +1,18 @@ +#!/bin/bash + +# Required parameters: +# @raycast.schemaVersion 1 +# @raycast.title Dock Position +# @raycast.mode silent + +# Optional parameters: +# @raycast.icon 🤖 +# @raycast.argument1 { "type": "dropdown", "placeholder": "Position on Screen", "data": [{"title": "Left", "value": "left"}, {"title": "Right", "value": "right"}, {"title": "Bottom", "value": "bottom"}] } +# @raycast.packageName System + +# Documentation: +# @raycast.description Set the position of the Dock in the screen +# @raycast.author Jelte Lagendijk +# @raycast.authorURL https://raycast.com/j3lte + +defaults write com.apple.dock orientation -string $1; killall Dock From 77076af7e9fdd3a397bd5f0ac7d5198d531c4e91 Mon Sep 17 00:00:00 2001 From: Juan Luis Romero Date: Mon, 22 Apr 2024 08:23:25 +0200 Subject: [PATCH 045/146] feat: add inline-cpu-usage-percent script (#932) --- commands/system/inline-cpu-usage-percent.sh | 22 +++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 commands/system/inline-cpu-usage-percent.sh diff --git a/commands/system/inline-cpu-usage-percent.sh b/commands/system/inline-cpu-usage-percent.sh new file mode 100644 index 000000000..cfe464085 --- /dev/null +++ b/commands/system/inline-cpu-usage-percent.sh @@ -0,0 +1,22 @@ +#!/bin/bash + +# Required parameters: +# @raycast.schemaVersion 1 +# @raycast.title CPU Usage +# @raycast.mode inline +# @raycast.packageName System +# @raycast.refreshTime 10s + +# Optional parameters: +# @raycast.icon 🖥️ + +# Documentation: +# @raycast.description Display CPU usage percent +# @raycast.author Juan Luis Romero +# @raycast.authorURL https://github.com/JuanluR8 + + +output=$(top -l 1 | grep "CPU usage") +cpu_usage=$(echo "$output" | awk -F " " '{print $3}' | cut -d% -f1) + +echo "CPU Usage: ${cpu_usage}%" \ No newline at end of file From 9ddee34bb8c0e031c1e699d3c9fdea94b26edb05 Mon Sep 17 00:00:00 2001 From: Raycast Bot Date: Mon, 22 Apr 2024 06:25:44 +0000 Subject: [PATCH 046/146] Update Script Commands documentation --- commands/README.md | 3 ++ commands/extensions.json | 100 +++++++++++++++++++++++++++++++++++---- 2 files changed, 95 insertions(+), 8 deletions(-) diff --git a/commands/README.md b/commands/README.md index 6818f79f6..00318f573 100644 --- a/commands/README.md +++ b/commands/README.md @@ -1472,6 +1472,8 @@ This repository contains sample commands and documentation to write your own one | 💿 | [Disk Usage](system/disk-usage.sh) | Show disk usage for / (root) | [Jesse Claven](https://github.com/jesse-c) | | | | | 🔕 | [Dismiss Notifications](system/dismiss-notifications.applescript) | Close all notification alerts staying on screen, e.g., Calendar notifications. | [benyn](github.com/benyn) | | | | | 🔕 | [Do Not Disturb](system/do-not-disturb.sh) | Do Not Disturb | [Antonio Dal Sie](https://github.com/exodusanto) | ✅ | | | + | 🤖 | [Dock Position](system/dock-set-position.sh) | Set the position of the Dock in the screen | [Jelte Lagendijk](https://raycast.com/j3lte) | ✅ | | | + | 🤖 | [Dock Set Autohide](system/dock-set-autohide.sh) | Set the Dock autohide | [Jelte Lagendijk](https://raycast.com/j3lte) | ✅ | | | | 📀 | [Eject All Disks](system/eject-all-disks.applescript) | Ejects all mounted disk images. | Raycast | | | | | 📋 | [Empty Clipboard](system/empty-clipboard.sh) | Empty Clipboard | Raycast | | | | | 🗑 | [Empty Trash](system/empty-trash.applescript) | Empty the trash. | Raycast | | | | @@ -1513,6 +1515,7 @@ This repository contains sample commands and documentation to write your own one | | [Toggle Bluetooth](system/bluetooth.template.applescript) | Toggle your Bluetooth connection. | [Vincent Dörig](https://github.com/vincentdoerig) | | ✅ | | | 🖥 | [Toggle Desktop Icons](system/toggle-desktop-icons.applescript) | A script command to show and hide icons of Desktop folder | [Raycast](https://raycast.com) | | | | | 🔄 | [Toggle Desktop Widgets](system/toggle-desktop-widget.sh) | N/A | [Federico Zivolo](https://github.com/FezVrasta) | | | | + | 🤖 | [Toggle Dock Autohide](system/dock-autohide-toggle.sh) | Toggle the Dock Autohide | [Jelte Lagendijk](https://raycast.com/j3lte) | | | | | 👓 | [Toggle Filename Extensions](system/toggle-filename-extensions.applescript) | Show or hide all filename extensions (like .txt, .png) | [Senthil Prabhu](https://github.com/senthilprabhut) | | | | | 🖥 | [Toggle Flip Screen to °](system/toggle-flip-screen.template.applescript) | Toggle flip (rotate) or revert the to ° | [Yohanes Bandung Bondowoso](https://github.com/ybbond) | | ✅ | | | 👓 | [Toggle Hidden Files](system/toggle-hidden-files.applescript) | Show and hide hidden files/folders which starts with "." (dot), i.e: .bash_rc, .ssh | [Thiago Holanda](https://twitter.com/tholanda) | | | | diff --git a/commands/extensions.json b/commands/extensions.json index 0e7557251..c72218283 100644 --- a/commands/extensions.json +++ b/commands/extensions.json @@ -4814,7 +4814,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Set Frontmost App as Default Browser", - "updatedAt" : "2021-08-06T19:23:46+02:00" + "updatedAt" : "2024-04-22T16:22:28+10:00" }, { "authors" : [ @@ -5012,6 +5012,34 @@ "title" : "Sample Color", "updatedAt" : "2021-07-21T10:01:35-04:00" }, + { + "authors" : [ + { + "name" : "Jelte Lagendijk", + "url" : "https:\/\/raycast.com\/j3lte" + } + ], + "createdAt" : "2024-04-22T08:23:05+02:00", + "currentDirectoryPath" : null, + "description" : "Set the position of the Dock in the screen", + "filename" : "dock-set-position.sh", + "hasArguments" : true, + "icon" : { + "dark" : null, + "light" : "🤖" + }, + "identifier" : "4d015ec34744b1b005c63343cace870a", + "isTemplate" : false, + "language" : "bash", + "mode" : "silent", + "needsConfirmation" : null, + "packageName" : "System", + "path" : "system\/", + "refreshTime" : null, + "schemaVersion" : 1, + "title" : "Dock Position", + "updatedAt" : "2024-04-22T08:23:05+02:00" + }, { "authors" : [ { @@ -5595,6 +5623,34 @@ "title" : "Default to Arc", "updatedAt" : "2024-01-05T16:03:05-08:00" }, + { + "authors" : [ + { + "name" : "Jelte Lagendijk", + "url" : "https:\/\/raycast.com\/j3lte" + } + ], + "createdAt" : "2024-04-22T08:23:05+02:00", + "currentDirectoryPath" : null, + "description" : "Set the Dock autohide", + "filename" : "dock-set-autohide.sh", + "hasArguments" : true, + "icon" : { + "dark" : null, + "light" : "🤖" + }, + "identifier" : "2e9f26f5c37a3f3c74cae49c82fc0fd5", + "isTemplate" : false, + "language" : "bash", + "mode" : "silent", + "needsConfirmation" : null, + "packageName" : "System", + "path" : "system\/", + "refreshTime" : null, + "schemaVersion" : 1, + "title" : "Dock Set Autohide", + "updatedAt" : "2024-04-22T08:23:05+02:00" + }, { "authors" : [ { @@ -5982,6 +6038,34 @@ "title" : "Minimize All Windows", "updatedAt" : "2022-02-21T17:47:42+01:00" }, + { + "authors" : [ + { + "name" : "Jelte Lagendijk", + "url" : "https:\/\/raycast.com\/j3lte" + } + ], + "createdAt" : "2024-04-22T08:23:05+02:00", + "currentDirectoryPath" : null, + "description" : "Toggle the Dock Autohide", + "filename" : "dock-autohide-toggle.sh", + "hasArguments" : false, + "icon" : { + "dark" : null, + "light" : "🤖" + }, + "identifier" : "48c4f52d832201490101c47dd2963bbd", + "isTemplate" : false, + "language" : "bash", + "mode" : "silent", + "needsConfirmation" : null, + "packageName" : "System", + "path" : "system\/", + "refreshTime" : null, + "schemaVersion" : 1, + "title" : "Toggle Dock Autohide", + "updatedAt" : "2024-04-22T08:23:05+02:00" + }, { "authors" : [ { @@ -23468,11 +23552,6 @@ } ], "languages" : [ - { - "displayName" : "Ruby", - "icon" : "icon-ruby.png", - "name" : "ruby" - }, { "displayName" : "Python", "icon" : "icon-python.png", @@ -23497,11 +23576,16 @@ "displayName" : "Swift", "icon" : "icon-swift.png", "name" : "swift" + }, + { + "displayName" : "Ruby", + "icon" : "icon-ruby.png", + "name" : "ruby" } ], "metadata" : [ ], - "totalScriptCommands" : 816, - "updatedAt" : "2024-04-11T07:23:05Z" + "totalScriptCommands" : 819, + "updatedAt" : "2024-04-22T06:24:50Z" } \ No newline at end of file From 5d752efc84869eba0309abe826f285cd5a0760db Mon Sep 17 00:00:00 2001 From: Raycast Bot Date: Mon, 22 Apr 2024 06:25:56 +0000 Subject: [PATCH 047/146] Set scripts as executable --- commands/system/inline-cpu-usage-percent.sh | 0 1 file changed, 0 insertions(+), 0 deletions(-) mode change 100644 => 100755 commands/system/inline-cpu-usage-percent.sh diff --git a/commands/system/inline-cpu-usage-percent.sh b/commands/system/inline-cpu-usage-percent.sh old mode 100644 new mode 100755 From bf02897a4eb19e0ba267d9844b32be4dc7f26a43 Mon Sep 17 00:00:00 2001 From: Kiran Koirala Date: Thu, 25 Apr 2024 21:10:36 +0545 Subject: [PATCH 048/146] Fix: Natural Scrolling Script for latest macos versions --- .../toggle-natural-scrolling.applescript | 42 ++++++++++++------- 1 file changed, 28 insertions(+), 14 deletions(-) diff --git a/commands/system/toggle-natural-scrolling.applescript b/commands/system/toggle-natural-scrolling.applescript index 106652a37..1d3e13253 100755 --- a/commands/system/toggle-natural-scrolling.applescript +++ b/commands/system/toggle-natural-scrolling.applescript @@ -12,18 +12,32 @@ # @raycast.authorURL https://twitter.com/wileymarques # @raycast.description Script Command to change natural trackpad/mouse scrolling setting. Reverting the setting value each time. -tell application "System Preferences" - activate - set current pane to pane "com.apple.preference.trackpad" -end tell +set macVersion to system version of (system info) -delay 0.6 - -tell application "System Events" - tell process "System Preferences" - click radio button 2 of tab group 1 of window "Trackpad" - click checkbox 1 of tab group 1 of window "Trackpad" - end tell -end tell - -tell application "System Preferences" to quit +if macVersion is greater than or equal to "14" then + set isNaturalScrolling to (do shell script "defaults -currentHost read NSGlobalDomain com.apple.swipescrolldirection") + + if isNaturalScrolling is "1" then + do shell script "defaults -currentHost write NSGlobalDomain com.apple.swipescrolldirection -bool NO" + else + do shell script "defaults -currentHost write NSGlobalDomain com.apple.swipescrolldirection -bool YES" + end if + + do shell script "/System/Library/PrivateFrameworks/SystemAdministration.framework/Resources/activateSettings -u" +else + tell application "System Settings" + activate + set current pane to pane "com.apple.preference.trackpad" + end tell + + delay 0.6 + + tell application "System Events" + tell process "System Preferences" + click radio button 2 of tab group 1 of window "Trackpad" + click checkbox 1 of tab group 1 of window "Trackpad" + end tell + end tell + + tell application "System Settings" to quit +end if From 88fe21feb9f697a2d4cc76e48796af06c283e532 Mon Sep 17 00:00:00 2001 From: Raycast Bot Date: Fri, 26 Apr 2024 16:13:40 +0000 Subject: [PATCH 049/146] Update Script Commands documentation --- commands/README.md | 1 + commands/extensions.json | 60 +++++++++++++++++++++++++++++----------- 2 files changed, 45 insertions(+), 16 deletions(-) diff --git a/commands/README.md b/commands/README.md index 00318f573..0e4bf8744 100644 --- a/commands/README.md +++ b/commands/README.md @@ -1447,6 +1447,7 @@ This repository contains sample commands and documentation to write your own one | 💻 | [Add Spacer to Dock](system/add-spacer-to-dock.sh) | Adds an invisible icon to the Dock as a separator. | [Alexandru Turcanu](https://github.com/Pondorasti) | | | | | 🔋 | [Battery Info](system/battery-info.sh) | Get Battery percentage, time remaining, charge status, charger wattage, total cycles etc. | [Fahim Faisal](https://github.com/i3p9) | | | | | ☀️ | [Brightness](system/brightness.sh) | Set system brightness | [Antonio Dal Sie](https://github.com/exodusanto) | ✅ | | | + | 🖥️ | [CPU Usage](system/inline-cpu-usage-percent.sh) | Display CPU usage percent | [Juan Luis Romero](https://github.com/JuanluR8) | | | | | ☕️ | [Caffeinate](system/caffeinate-status.swift) | Shows caffeinate status and time left if it's running | [Yan Smaliak](https://github.com/ysmaliak) | | | | | ☕️ | [Caffeinate](system/caffeinate-status.sh) | Shows caffeinate status | [Yan Smaliak](https://github.com/ysmaliak) | | | | | 💻 | [Capture Fullscreen to Clipboard](system/capture-fullscreen-to-clipboard.sh) | This script screenshots the entire screen and saves it to the clipboard. | [Aaron Miller](https://github.com/aaronhmiller) | | | | diff --git a/commands/extensions.json b/commands/extensions.json index c72218283..92f98dd13 100644 --- a/commands/extensions.json +++ b/commands/extensions.json @@ -6587,6 +6587,34 @@ "title" : "Network Info", "updatedAt" : "2023-07-04T10:01:20+00:00" }, + { + "authors" : [ + { + "name" : "Juan Luis Romero", + "url" : "https:\/\/github.com\/JuanluR8" + } + ], + "createdAt" : "2024-04-22T08:23:25+02:00", + "currentDirectoryPath" : null, + "description" : "Display CPU usage percent", + "filename" : "inline-cpu-usage-percent.sh", + "hasArguments" : false, + "icon" : { + "dark" : null, + "light" : "🖥️" + }, + "identifier" : "88b8ff2c77f987a58eadc153ac8e9629", + "isTemplate" : false, + "language" : "bash", + "mode" : "inline", + "needsConfirmation" : null, + "packageName" : "System", + "path" : "system\/", + "refreshTime" : "10s", + "schemaVersion" : 1, + "title" : "CPU Usage", + "updatedAt" : "2024-04-22T06:25:56+00:00" + }, { "authors" : [ { @@ -6743,7 +6771,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Toggle Natural Scrolling", - "updatedAt" : "2021-04-29T15:07:57+00:00" + "updatedAt" : "2024-04-25T21:10:36+05:45" }, { "authors" : [ @@ -23553,9 +23581,14 @@ ], "languages" : [ { - "displayName" : "Python", - "icon" : "icon-python.png", - "name" : "python" + "displayName" : "Swift", + "icon" : "icon-swift.png", + "name" : "swift" + }, + { + "displayName" : "Ruby", + "icon" : "icon-ruby.png", + "name" : "ruby" }, { "displayName" : "Node", @@ -23567,25 +23600,20 @@ "icon" : "icon-applescript.png", "name" : "applescript" }, + { + "displayName" : "Python", + "icon" : "icon-python.png", + "name" : "python" + }, { "displayName" : "Bash", "icon" : "icon-bash.png", "name" : "bash" - }, - { - "displayName" : "Swift", - "icon" : "icon-swift.png", - "name" : "swift" - }, - { - "displayName" : "Ruby", - "icon" : "icon-ruby.png", - "name" : "ruby" } ], "metadata" : [ ], - "totalScriptCommands" : 819, - "updatedAt" : "2024-04-22T06:24:50Z" + "totalScriptCommands" : 820, + "updatedAt" : "2024-04-26T16:12:33Z" } \ No newline at end of file From 61b35efc2ecf026e4cf086dbb2aa1225751ba62a Mon Sep 17 00:00:00 2001 From: Maxim Borzov Date: Tue, 21 May 2024 11:23:12 +0300 Subject: [PATCH 050/146] Script for convert Markdown formatting to Telegram format (#936) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Script for convert Markdown formatting to Telegram format, excluding processing inside code blocks or quotes (ver. 1.0) * Update commands/conversions/markdown-to-telegram.py Co-authored-by: Thiago Holanda * Update commands/conversions/markdown-to-telegram.py Co-authored-by: Thiago Holanda * Update commands/conversions/markdown-to-telegram.py Co-authored-by: Thiago Holanda * Update commands/conversions/markdown-to-telegram.py Co-authored-by: Thiago Holanda * Update commands/conversions/markdown-to-telegram.py Co-authored-by: Thiago Holanda * Update commands/conversions/markdown-to-telegram.py Co-authored-by: Thiago Holanda * Add comments to improve code readability • Add comments to explain the purpose of functions and variables • Describe the main stages of the conversion process • Clarify the formatting logic for different Markdown elements • Preserve the existing functionality and logic of the script The added comments aim to enhance the code's readability and maintainability without altering its behavior. This will make it easier for developers to understand and modify the script in the future. --------- Co-authored-by: Thiago Holanda --- commands/conversions/markdown-to-telegram.py | 100 +++++++++++++++++++ 1 file changed, 100 insertions(+) create mode 100755 commands/conversions/markdown-to-telegram.py diff --git a/commands/conversions/markdown-to-telegram.py b/commands/conversions/markdown-to-telegram.py new file mode 100755 index 000000000..ad61a9811 --- /dev/null +++ b/commands/conversions/markdown-to-telegram.py @@ -0,0 +1,100 @@ +#!/usr/bin/env python3 + +# Required parameters: +# @raycast.schemaVersion 1 +# @raycast.title Convert Markdown to Telegram Format +# @raycast.mode silent + +# Optional parameters: +# @raycast.icon 🔄 +# @raycast.packageName Conversions +# @raycast.description Convert Markdown formatting to Telegram format, excluding processing inside code blocks or quotes + +# Documentation: +# @raycast.author Maxim Borzov +# @raycast.authorURL https://github.com/borzov + +import re +import subprocess + +# Set environment variables and encoding +env_vars = {'LANG': 'en_US.UTF-8'} +encoding = 'utf-8' + +def paste(): + """Read text from the clipboard.""" + return subprocess.check_output('pbpaste', env=env_vars).decode(encoding) + +def copy(text): + """Write text to the clipboard.""" + process = subprocess.Popen('pbcopy', env=env_vars, stdin=subprocess.PIPE) + process.communicate(text.encode(encoding)) + +def convert_markdown(text): + """Convert Markdown formatting to Telegram format.""" + lines = text.split('\n') + converted_lines = [] + in_code_block = False + + for line in lines: + # Check if the line is a code block delimiter + if line.startswith('```'): + in_code_block = not in_code_block + converted_lines.append(line) + continue + + # Skip quotes and only format if not in a code block + if not in_code_block and not line.startswith('>'): + # Format headers with emojis and bold text + if line.startswith('# '): + line = f"⚫️ **{line[2:].strip()}**\n" + elif line.startswith('## '): + line = f"◾️ **{line[3:].strip()}**\n" + elif line.startswith('### '): + line = f"▪️ **{line[4:].strip()}**\n" + elif line.startswith('#### '): + line = f"🔹 **{line[5:].strip()}**\n" + elif line.startswith('##### '): + line = f"📌 **{line[6:].strip()}**\n" + elif line.startswith('###### '): + line = f"🔰 **{line[7:].strip()}**\n" + else: + # Format bold text + line = re.sub(r'(?')) and not next.startswith(('*', '-', '```', '|', '>')): + result.append('') + + return '\n'.join(result) + +if __name__ == "__main__": + try: + markdown_text = paste() + converted_text = convert_markdown(markdown_text) + copy(converted_text) + print("✅ Markdown converted and copied to clipboard") + except Exception as e: + print(f"❌ Error during conversion: {str(e)}") \ No newline at end of file From 503da2e9386d753100e3f4ff1c5b09b1ac876a75 Mon Sep 17 00:00:00 2001 From: Raycast Bot Date: Tue, 21 May 2024 08:25:56 +0000 Subject: [PATCH 051/146] Update Script Commands documentation --- commands/README.md | 1 + commands/extensions.json | 742 ++++++++++++++++++++------------------- 2 files changed, 386 insertions(+), 357 deletions(-) diff --git a/commands/README.md b/commands/README.md index 0e4bf8744..7c9232439 100644 --- a/commands/README.md +++ b/commands/README.md @@ -834,6 +834,7 @@ This repository contains sample commands and documentation to write your own one | ⏱ | [Convert Epoch to Human-Readable Date](conversions/epoch-to-human-date.sh) | Convert epoch to human-readable date. | [Siyuan Zhang](https://github.com/kastnerorz) | ✅ | | | | 📋 | [Convert Google Docs Rich Text HTML to Markdown](conversions/google-docs-to-markdown.sh) | A script to take the HTML pastboard type filled by google docs and convert it to nicely formatted markdown | [Michael Bianco](https://github.com/iloveitaly) | | | | | ⏱ | [Convert Human-Readable Date To Epoch](conversions/human-date-to-epoch.sh) | Convert human-readable date to timestamp epoch. | [Siyuan Zhang](https://github.com/kastnerorz) | ✅ | | | + | 🔄 | [Convert Markdown to Telegram Format](conversions/markdown-to-telegram.py) | Convert Markdown formatting to Telegram format, excluding processing inside code blocks or quotes | [Maxim Borzov](https://github.com/borzov) | | | | | 📋 | [Convert Raw HTML to Rich Text on Clipboard](conversions/raw-html-to-rich-text-clipboard.sh) | This script will convert raw HTML on your clipboard to rich text. It requires pandoc to be installed on your system. | [Michael Bianco](https://github.com/iloveitaly) | | | | | 📹 | [Create GIF from video](conversions/create-gif-from-video.py) | Create a GIF from video, by default it takes the last screen record video | [Quentin Eude](https://github.com/qeude) | ✅ | | | | 🎨 | [Hex to RGB](conversions/hex-to-rgb.sh) | Convert hexadecimal color value to RGB value. | [Caleb Stauffer](https://github.com/crstauf) | ✅ | | | diff --git a/commands/extensions.json b/commands/extensions.json index 92f98dd13..ad8b0366e 100644 --- a/commands/extensions.json +++ b/commands/extensions.json @@ -18,7 +18,7 @@ "url" : "https:\/\/github.com\/thomaspaulmann" } ], - "createdAt" : "2021-02-04T18:14:11+00:00", + "createdAt" : "2021-02-04T18:14:11Z", "currentDirectoryPath" : null, "description" : "Increase brightness of Elgato Key Light by 5%.", "filename" : "elgato-key-light-increase-brightness.template.rb", @@ -27,7 +27,7 @@ "dark" : null, "light" : "images\/elgato.png" }, - "identifier" : "1a5ced3b0eed17feb59e06d3b82a3235", + "identifier" : "0efbf0fc0112b8007548e0036851da5a", "isTemplate" : true, "language" : "ruby", "mode" : "silent", @@ -37,7 +37,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Increase Brightness", - "updatedAt" : "2021-02-04T18:14:11+00:00" + "updatedAt" : "2021-02-04T18:14:11Z" }, { "authors" : [ @@ -46,7 +46,7 @@ "url" : "https:\/\/github.com\/thomaspaulmann" } ], - "createdAt" : "2021-02-04T18:14:11+00:00", + "createdAt" : "2021-02-04T18:14:11Z", "currentDirectoryPath" : null, "description" : "Turn on Elgato Key Light.", "filename" : "elgato-key-light-turn-on.template.rb", @@ -55,7 +55,7 @@ "dark" : null, "light" : "images\/elgato.png" }, - "identifier" : "7a42a1bde2de4c6d198d04a2f527ea4a", + "identifier" : "6bded1a4b3b945dff30a380936a1741f", "isTemplate" : true, "language" : "ruby", "mode" : "silent", @@ -65,7 +65,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Turn On", - "updatedAt" : "2021-02-04T18:14:11+00:00" + "updatedAt" : "2021-02-04T18:14:11Z" }, { "authors" : [ @@ -74,7 +74,7 @@ "url" : "https:\/\/github.com\/thomaspaulmann" } ], - "createdAt" : "2021-02-04T18:14:11+00:00", + "createdAt" : "2021-02-04T18:14:11Z", "currentDirectoryPath" : null, "description" : "Turn off Elgato Key Light.", "filename" : "elgato-key-light-turn-off.template.rb", @@ -83,7 +83,7 @@ "dark" : null, "light" : "images\/elgato.png" }, - "identifier" : "ae1a70aec03ee5e74c3b504ab0bd5873", + "identifier" : "d5b4e7d38d50f78801983fed1ab9c710", "isTemplate" : true, "language" : "ruby", "mode" : "silent", @@ -93,7 +93,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Turn Off", - "updatedAt" : "2021-02-04T18:14:11+00:00" + "updatedAt" : "2021-02-04T18:14:11Z" }, { "authors" : [ @@ -102,7 +102,7 @@ "url" : "https:\/\/github.com\/thomaspaulmann" } ], - "createdAt" : "2021-02-04T18:14:11+00:00", + "createdAt" : "2021-02-04T18:14:11Z", "currentDirectoryPath" : null, "description" : "Decrease brightness of Elgato Key Light by 5%.", "filename" : "elgato-key-light-decrease-brightness.template.rb", @@ -111,7 +111,7 @@ "dark" : null, "light" : "images\/elgato.png" }, - "identifier" : "e507bdea0b66b92dfeb1753d50336677", + "identifier" : "6b6890b0f6e356b44fd73d3d7e30c902", "isTemplate" : true, "language" : "ruby", "mode" : "silent", @@ -121,7 +121,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Decrease Brightness", - "updatedAt" : "2021-02-04T21:22:04+00:00" + "updatedAt" : "2021-02-04T21:22:04Z" } ] }, @@ -382,7 +382,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "What Day Is...", - "updatedAt" : "2021-02-21T22:11:45+00:00" + "updatedAt" : "2021-02-21T22:11:45Z" }, { "authors" : [ @@ -466,7 +466,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Trim Newlines and Tabs", - "updatedAt" : "2021-08-23T10:12:46+00:00" + "updatedAt" : "2021-08-23T10:12:46Z" }, { "authors" : [ @@ -580,6 +580,34 @@ "title" : "QR Code Generation", "updatedAt" : "2021-11-04T03:59:40+08:00" }, + { + "authors" : [ + { + "name" : "Maxim Borzov", + "url" : "https:\/\/github.com\/borzov" + } + ], + "createdAt" : "2024-05-21T11:23:12+03:00", + "currentDirectoryPath" : null, + "description" : "Convert Markdown formatting to Telegram format, excluding processing inside code blocks or quotes", + "filename" : "markdown-to-telegram.py", + "hasArguments" : false, + "icon" : { + "dark" : null, + "light" : "🔄" + }, + "identifier" : "14c19002feb2ab3f839073ec5eda7c30", + "isTemplate" : false, + "language" : "python", + "mode" : "silent", + "needsConfirmation" : null, + "packageName" : "Conversions", + "path" : "conversions\/", + "refreshTime" : null, + "schemaVersion" : 1, + "title" : "Convert Markdown to Telegram Format", + "updatedAt" : "2024-05-21T11:23:12+03:00" + }, { "authors" : [ { @@ -606,7 +634,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Markdown Table", - "updatedAt" : "2021-11-03T20:04:02+00:00" + "updatedAt" : "2021-11-03T20:04:02Z" }, { "authors" : [ @@ -634,7 +662,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Paste and Match Style", - "updatedAt" : "2022-03-31T14:05:46+00:00" + "updatedAt" : "2022-03-31T14:05:46Z" }, { "authors" : [ @@ -690,7 +718,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Unix Time Reader From Clipboard", - "updatedAt" : "2021-03-30T15:34:59+00:00" + "updatedAt" : "2021-03-30T15:34:59Z" }, { "authors" : [ @@ -942,7 +970,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Convert Raw HTML to Rich Text on Clipboard", - "updatedAt" : "2023-07-03T21:06:13+00:00" + "updatedAt" : "2023-07-03T21:06:13Z" } ], "subGroups" : [ @@ -1152,7 +1180,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Open in guest profile", - "updatedAt" : "2022-10-31T11:55:21+00:00" + "updatedAt" : "2022-10-31T11:55:21Z" }, { "authors" : [ @@ -1217,7 +1245,7 @@ "url" : "https:\/\/github.com\/thomaspaulmann" } ], - "createdAt" : "2020-11-09T17:16:09+00:00", + "createdAt" : "2020-11-09T17:16:09Z", "currentDirectoryPath" : null, "description" : "Shorten the URL in your Clipboard with Tiny URL.", "filename" : "shorten-url.sh", @@ -1226,7 +1254,7 @@ "dark" : null, "light" : "🔗" }, - "identifier" : "3ace97396b27d3677bdd47488bb7c31e", + "identifier" : "87e7fd07ae15344a2c3bbdfa528403ab", "isTemplate" : false, "language" : "bash", "mode" : "silent", @@ -1488,7 +1516,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Youtube Shorts in video player", - "updatedAt" : "2023-07-25T16:29:37+00:00" + "updatedAt" : "2023-07-25T16:29:37Z" }, { "authors" : [ @@ -1544,7 +1572,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Copy Current Page URL", - "updatedAt" : "2022-02-22T10:00:48+00:00" + "updatedAt" : "2022-02-22T10:00:48Z" }, { "authors" : [ @@ -1713,7 +1741,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Open Finder", - "updatedAt" : "2021-05-31T10:08:39+00:00" + "updatedAt" : "2021-05-31T10:08:39Z" }, { "authors" : [ @@ -1741,7 +1769,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Search in Devdocs", - "updatedAt" : "2021-01-05T12:30:16+00:00" + "updatedAt" : "2021-01-05T12:30:16Z" }, { "authors" : null, @@ -1764,7 +1792,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Open Applications", - "updatedAt" : "2020-12-08T15:56:35+00:00" + "updatedAt" : "2020-12-08T15:56:35Z" }, { "authors" : null, @@ -1787,7 +1815,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Open URL From Clipboard", - "updatedAt" : "2020-12-08T15:56:35+00:00" + "updatedAt" : "2020-12-08T15:56:35Z" }, { "authors" : [ @@ -1927,7 +1955,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Search in Dash", - "updatedAt" : "2021-01-05T12:30:16+00:00" + "updatedAt" : "2021-01-05T12:30:16Z" }, { "authors" : [ @@ -2001,7 +2029,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Open Last Downloaded", - "updatedAt" : "2022-03-30T20:25:55+00:00" + "updatedAt" : "2022-03-30T20:25:55Z" }, { "authors" : null, @@ -2075,7 +2103,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Open Clipboard URL on Desktop", - "updatedAt" : "2020-12-08T15:56:35+00:00" + "updatedAt" : "2020-12-08T15:56:35Z" }, { "authors" : null, @@ -2162,7 +2190,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Power Off", - "updatedAt" : "2022-02-09T10:16:51+00:00" + "updatedAt" : "2022-02-09T10:16:51Z" }, { "authors" : [ @@ -2190,7 +2218,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Configure", - "updatedAt" : "2022-02-09T10:16:51+00:00" + "updatedAt" : "2022-02-09T10:16:51Z" }, { "authors" : [ @@ -2218,7 +2246,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Volume Up", - "updatedAt" : "2022-02-09T10:16:51+00:00" + "updatedAt" : "2022-02-09T10:16:51Z" }, { "authors" : [ @@ -2246,7 +2274,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Volume Down", - "updatedAt" : "2022-02-09T10:16:51+00:00" + "updatedAt" : "2022-02-09T10:16:51Z" }, { "authors" : [ @@ -2274,7 +2302,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Power On", - "updatedAt" : "2022-02-09T10:16:51+00:00" + "updatedAt" : "2022-02-09T10:16:51Z" } ] }, @@ -2315,7 +2343,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Switch to DP", - "updatedAt" : "2022-02-24T08:21:35+00:00" + "updatedAt" : "2022-02-24T08:21:35Z" }, { "authors" : [ @@ -2343,7 +2371,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Switch to HDMI", - "updatedAt" : "2022-02-24T08:21:35+00:00" + "updatedAt" : "2022-02-24T08:21:35Z" } ] }, @@ -2377,7 +2405,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Switch to DP", - "updatedAt" : "2022-02-24T08:21:35+00:00" + "updatedAt" : "2022-02-24T08:21:35Z" }, { "authors" : [ @@ -2405,7 +2433,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Switch to HDMI", - "updatedAt" : "2022-02-24T08:21:35+00:00" + "updatedAt" : "2022-02-24T08:21:35Z" } ] } @@ -2442,7 +2470,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Turn Off TV", - "updatedAt" : "2021-08-23T10:12:10+00:00" + "updatedAt" : "2021-08-23T10:12:10Z" }, { "authors" : [ @@ -2470,7 +2498,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Turn On TV", - "updatedAt" : "2021-08-23T10:12:10+00:00" + "updatedAt" : "2021-08-23T10:12:10Z" } ] }, @@ -3838,7 +3866,7 @@ "url" : "https:\/\/github.com\/pitnikola" } ], - "createdAt" : "2021-02-05T13:43:54+00:00", + "createdAt" : "2021-02-05T13:43:54Z", "currentDirectoryPath" : null, "description" : "Calculate percentage increase between \"from\" and \"to\" values.", "filename" : "calculate-growth.sh", @@ -3847,7 +3875,7 @@ "dark" : null, "light" : "📈" }, - "identifier" : "43e4892095abfafb6a7ad5bb50c3c602", + "identifier" : "a733748a4340860d44b583174bed4aa8", "isTemplate" : false, "language" : "bash", "mode" : "compact", @@ -3857,7 +3885,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Calculate Growth %", - "updatedAt" : "2021-02-05T13:43:54+00:00" + "updatedAt" : "2021-02-05T13:43:54Z" }, { "authors" : [ @@ -3885,7 +3913,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Wolfram Alpha", - "updatedAt" : "2021-04-28T20:59:27+00:00" + "updatedAt" : "2021-04-28T20:59:27Z" }, { "authors" : [ @@ -3941,7 +3969,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "LaTeX Calculator", - "updatedAt" : "2022-02-04T10:14:08+00:00" + "updatedAt" : "2022-02-04T10:14:08Z" }, { "authors" : [ @@ -4124,7 +4152,7 @@ "url" : "https:\/\/github.com\/thomaspaulmann" } ], - "createdAt" : "2021-01-27T23:15:56+00:00", + "createdAt" : "2021-01-27T23:15:56Z", "currentDirectoryPath" : null, "description" : "Shows the followers, favorites and friends count of your Twitter account.", "filename" : "twitter-statistics.template.rb", @@ -4133,7 +4161,7 @@ "dark" : null, "light" : "images\/twitter.png" }, - "identifier" : "f1a519a4eafaa91bf8e2179e20acc1f0", + "identifier" : "1bde64c963c2cc5e3ffc510d7568f210", "isTemplate" : true, "language" : "ruby", "mode" : "inline", @@ -4250,7 +4278,7 @@ "refreshTime" : "5m", "schemaVersion" : 1, "title" : "Crypto", - "updatedAt" : "2021-03-01T16:54:23+00:00" + "updatedAt" : "2021-03-01T16:54:23Z" }, { "authors" : [ @@ -4334,7 +4362,7 @@ "refreshTime" : "1h", "schemaVersion" : 1, "title" : "NextDNS Status", - "updatedAt" : "2021-01-26T14:46:55+00:00" + "updatedAt" : "2021-01-26T14:46:55Z" }, { "authors" : [ @@ -4362,7 +4390,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Tesla", - "updatedAt" : "2023-02-06T08:49:49+00:00" + "updatedAt" : "2023-02-06T08:49:49Z" }, { "authors" : [ @@ -4371,7 +4399,7 @@ "url" : "https:\/\/github.com\/thomaspaulmann" } ], - "createdAt" : "2020-12-01T15:19:07+00:00", + "createdAt" : "2020-12-01T15:19:07Z", "currentDirectoryPath" : null, "description" : "See the year progress on your desktop.", "filename" : "year-progress.sh", @@ -4380,7 +4408,7 @@ "dark" : null, "light" : "⏱" }, - "identifier" : "b2f18259bc9ceb6889bd3f3c6a6022e1", + "identifier" : "f91b94065511ac6266f5b2499368af3a", "isTemplate" : false, "language" : "bash", "mode" : "inline", @@ -4418,7 +4446,7 @@ "refreshTime" : "1h", "schemaVersion" : 1, "title" : "YouTube Statistics", - "updatedAt" : "2021-11-09T09:49:02+00:00" + "updatedAt" : "2021-11-09T09:49:02Z" }, { "authors" : [ @@ -4427,7 +4455,7 @@ "url" : "https:\/\/github.com\/thomaspaulmann" } ], - "createdAt" : "2021-02-15T15:57:43+00:00", + "createdAt" : "2021-02-15T15:57:43Z", "currentDirectoryPath" : null, "description" : "Keep track of your stock portfolio.", "filename" : "stock-portfolio.rb", @@ -4436,7 +4464,7 @@ "dark" : null, "light" : "📈" }, - "identifier" : "29df612d786611c3379557e77fdcc787", + "identifier" : "116c44f780e379c97aaa32826ff6dbb8", "isTemplate" : false, "language" : "ruby", "mode" : "inline", @@ -4446,7 +4474,7 @@ "refreshTime" : "1h", "schemaVersion" : 1, "title" : "Stocks", - "updatedAt" : "2021-02-15T16:05:12+00:00" + "updatedAt" : "2021-02-15T16:05:12Z" }, { "authors" : [ @@ -4455,7 +4483,7 @@ "url" : "https:\/\/github.com\/jesse-c" } ], - "createdAt" : "2021-01-16T14:01:54+00:00", + "createdAt" : "2021-01-16T14:01:54Z", "currentDirectoryPath" : null, "description" : "Show the time from elsewhere in the world", "filename" : "world-time.sh", @@ -4464,7 +4492,7 @@ "dark" : null, "light" : "🕐" }, - "identifier" : "488cb8d0c156cff41b04f10b76d16696", + "identifier" : "0fe9fe7b1ee089f32c2d6fc739e8364b", "isTemplate" : false, "language" : "bash", "mode" : "inline", @@ -4688,7 +4716,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Get Authorization Token", - "updatedAt" : "2022-12-30T17:11:26+00:00" + "updatedAt" : "2022-12-30T17:11:26Z" } ] }, @@ -4926,7 +4954,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Dismiss Notifications", - "updatedAt" : "2023-05-08T06:42:50+00:00" + "updatedAt" : "2023-05-08T06:42:50Z" }, { "authors" : [ @@ -4991,7 +5019,7 @@ "url" : "https:\/\/github.com\/jesse-c" } ], - "createdAt" : "2020-12-18T16:52:19+00:00", + "createdAt" : "2020-12-18T16:52:19Z", "currentDirectoryPath" : null, "description" : "Sample a color from anywhere on your screen.", "filename" : "sample-color.swift", @@ -5000,7 +5028,7 @@ "dark" : null, "light" : "🎨" }, - "identifier" : "3fa985727c54b02c6d0b8d526c4b79ee", + "identifier" : "4600a7cb879326d93a1fa82615819092", "isTemplate" : false, "language" : "swift", "mode" : "silent", @@ -5229,7 +5257,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Add Spacer to Dock", - "updatedAt" : "2021-03-08T00:46:38+00:00" + "updatedAt" : "2021-03-08T00:46:38Z" }, { "authors" : [ @@ -5537,7 +5565,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Move Desktop to Trash", - "updatedAt" : "2021-07-06T15:39:42+00:00" + "updatedAt" : "2021-07-06T15:39:42Z" }, { "authors" : [ @@ -5565,7 +5593,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Kill AirDrop Processes", - "updatedAt" : "2021-04-06T23:07:39+00:00" + "updatedAt" : "2021-04-06T23:07:39Z" }, { "authors" : [ @@ -5705,7 +5733,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Toggle Desktop Widgets", - "updatedAt" : "2024-01-22T22:39:53+00:00" + "updatedAt" : "2024-01-22T22:39:53Z" }, { "authors" : [ @@ -6203,7 +6231,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Open Last Download", - "updatedAt" : "2020-12-08T15:56:35+00:00" + "updatedAt" : "2020-12-08T15:56:35Z" }, { "authors" : [ @@ -6277,7 +6305,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Eject All Disks", - "updatedAt" : "2020-12-08T15:56:35+00:00" + "updatedAt" : "2020-12-08T15:56:35Z" }, { "authors" : [ @@ -6305,7 +6333,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Disk Free", - "updatedAt" : "2021-09-28T06:22:27+00:00" + "updatedAt" : "2021-09-28T06:22:27Z" }, { "authors" : [ @@ -6333,7 +6361,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Copy Wi-Fi Password", - "updatedAt" : "2021-11-03T20:29:35+00:00" + "updatedAt" : "2021-11-03T20:29:35Z" }, { "authors" : [ @@ -6370,7 +6398,7 @@ "url" : "https:\/\/github.com\/jesse-c" } ], - "createdAt" : "2021-04-27T06:02:41+00:00", + "createdAt" : "2021-04-27T06:02:41Z", "currentDirectoryPath" : null, "description" : "Show disk usage for \/ (root)", "filename" : "disk-usage.sh", @@ -6379,7 +6407,7 @@ "dark" : null, "light" : "💿" }, - "identifier" : "8058594c23e845822eadac4bb4c818ab", + "identifier" : "aadf056d506a2abb91cef252e2e7a1f6", "isTemplate" : false, "language" : "bash", "mode" : "inline", @@ -6389,7 +6417,7 @@ "refreshTime" : "1m", "schemaVersion" : 1, "title" : "Disk Usage", - "updatedAt" : "2021-04-27T06:02:41+00:00" + "updatedAt" : "2021-04-27T06:02:41Z" }, { "authors" : [ @@ -6501,7 +6529,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Create Email", - "updatedAt" : "2021-02-25T10:47:45+00:00" + "updatedAt" : "2021-02-25T10:47:45Z" }, { "authors" : [ @@ -6557,7 +6585,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Reset Launchpad", - "updatedAt" : "2023-12-22T14:21:54+00:00" + "updatedAt" : "2023-12-22T14:21:54Z" }, { "authors" : [ @@ -6585,7 +6613,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Network Info", - "updatedAt" : "2023-07-04T10:01:20+00:00" + "updatedAt" : "2023-07-04T10:01:20Z" }, { "authors" : [ @@ -6613,7 +6641,7 @@ "refreshTime" : "10s", "schemaVersion" : 1, "title" : "CPU Usage", - "updatedAt" : "2024-04-22T06:25:56+00:00" + "updatedAt" : "2024-04-22T06:25:56Z" }, { "authors" : [ @@ -6701,7 +6729,7 @@ }, { "authors" : null, - "createdAt" : "2020-11-05T19:09:05+00:00", + "createdAt" : "2020-11-05T19:09:05Z", "currentDirectoryPath" : null, "description" : "Copy the last downloaded file to the clipboard.", "filename" : "copy-last-download.swift", @@ -6710,7 +6738,7 @@ "dark" : null, "light" : "💁" }, - "identifier" : "0ec1db6ff6f6f56e7daba5d6fbd03c75", + "identifier" : "19d49b55a44b69e9229b63c27724c02f", "isTemplate" : false, "language" : "swift", "mode" : "silent", @@ -6720,11 +6748,11 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Copy Last Download", - "updatedAt" : "2020-12-08T15:56:35+00:00" + "updatedAt" : "2020-12-08T15:56:35Z" }, { "authors" : null, - "createdAt" : "2020-11-05T19:08:41+00:00", + "createdAt" : "2020-11-05T19:08:41Z", "currentDirectoryPath" : null, "description" : "Copies the calendar availability of today.", "filename" : "copy-availability.swift", @@ -6733,7 +6761,7 @@ "dark" : null, "light" : "📅" }, - "identifier" : "c54475a390bfef23ea03f2d5e69be018", + "identifier" : "7f78eb54a08af1d516202dd647999a27", "isTemplate" : false, "language" : "swift", "mode" : "silent", @@ -6799,7 +6827,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Low Power Mode", - "updatedAt" : "2023-07-03T21:06:13+00:00" + "updatedAt" : "2023-07-03T21:06:13Z" }, { "authors" : null, @@ -6822,7 +6850,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Copy Last Screenshot", - "updatedAt" : "2020-12-08T15:56:35+00:00" + "updatedAt" : "2020-12-08T15:56:35Z" }, { "authors" : [ @@ -6877,7 +6905,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Restart", - "updatedAt" : "2020-12-08T15:56:35+00:00" + "updatedAt" : "2020-12-08T15:56:35Z" }, { "authors" : [ @@ -6984,7 +7012,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Shut Down", - "updatedAt" : "2020-12-08T15:56:35+00:00" + "updatedAt" : "2020-12-08T15:56:35Z" }, { "authors" : [ @@ -7012,7 +7040,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Toggle Battery Charging", - "updatedAt" : "2022-08-18T12:53:36+00:00" + "updatedAt" : "2022-08-18T12:53:36Z" }, { "authors" : null, @@ -7035,7 +7063,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Sleep", - "updatedAt" : "2020-12-08T15:56:35+00:00" + "updatedAt" : "2020-12-08T15:56:35Z" }, { "authors" : [ @@ -7417,7 +7445,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Headphones Battery Level", - "updatedAt" : "2023-02-03T07:51:37+00:00" + "updatedAt" : "2023-02-03T07:51:37Z" }, { "authors" : [ @@ -7501,7 +7529,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Toggle Mute Notifcation Sounds", - "updatedAt" : "2024-02-01T16:53:25+00:00" + "updatedAt" : "2024-02-01T16:53:25Z" }, { "authors" : [ @@ -7594,7 +7622,7 @@ "url" : "https:\/\/github.com\/matthewmorek" } ], - "createdAt" : "2021-02-18T12:31:04+00:00", + "createdAt" : "2021-02-18T12:31:04Z", "currentDirectoryPath" : null, "description" : "Toggles microphone.", "filename" : "toggle-mic.applescript", @@ -7603,7 +7631,7 @@ "dark" : null, "light" : "🎙" }, - "identifier" : "43754d5c0731006f9670e4d26e696fbd", + "identifier" : "f429f9a5cb87014a029d0a64cc5ce0f5", "isTemplate" : false, "language" : "applescript", "mode" : "silent", @@ -7649,7 +7677,7 @@ "refreshTime" : "1h", "schemaVersion" : 1, "title" : "Speed Test", - "updatedAt" : "2024-04-11T07:23:05+00:00" + "updatedAt" : "2024-04-11T07:23:05Z" } ] }, @@ -7678,7 +7706,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Escape String for Shell", - "updatedAt" : "2020-12-09T22:19:19+00:00" + "updatedAt" : "2020-12-09T22:19:19Z" }, { "authors" : [ @@ -7734,7 +7762,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Count Characters Bash", - "updatedAt" : "2021-06-23T07:27:53+00:00" + "updatedAt" : "2021-06-23T07:27:53Z" }, { "authors" : [ @@ -7790,7 +7818,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Transform Case", - "updatedAt" : "2021-01-24T20:18:06+00:00" + "updatedAt" : "2021-01-24T20:18:06Z" }, { "authors" : [ @@ -7864,7 +7892,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Encode Base64", - "updatedAt" : "2020-12-08T15:56:35+00:00" + "updatedAt" : "2020-12-08T15:56:35Z" }, { "authors" : null, @@ -7887,7 +7915,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Decode JWT", - "updatedAt" : "2020-12-08T15:56:35+00:00" + "updatedAt" : "2020-12-08T15:56:35Z" }, { "authors" : [ @@ -7924,7 +7952,7 @@ "url" : "https:\/\/github.com\/jesse-c" } ], - "createdAt" : "2021-01-04T23:05:52+00:00", + "createdAt" : "2021-01-04T23:05:52Z", "currentDirectoryPath" : null, "description" : "Check if a website is up", "filename" : "is-it-up.sh", @@ -7933,7 +7961,7 @@ "dark" : null, "light" : "🌐" }, - "identifier" : "eb23a85cca77120f511f36bba2ff520b", + "identifier" : "2889ef24ae8d92015ae9500dfc3e704a", "isTemplate" : false, "language" : "bash", "mode" : "compact", @@ -8143,7 +8171,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Flutter Create Project", - "updatedAt" : "2021-08-17T16:40:16+00:00" + "updatedAt" : "2021-08-17T16:40:16Z" }, { "authors" : [ @@ -8455,7 +8483,7 @@ "url" : "https:\/\/github.com\/doktor500" } ], - "createdAt" : "2021-12-20T12:46:48+00:00", + "createdAt" : "2021-12-20T12:46:48Z", "currentDirectoryPath" : null, "description" : "Generates a ULID and copies it to the clipboard.", "filename" : "generate-ulid.sh", @@ -8464,7 +8492,7 @@ "dark" : null, "light" : "💻" }, - "identifier" : "c3621c704381ac57b354d23166b7b287", + "identifier" : "17aae21d1f94cccc5275cb681e873b28", "isTemplate" : false, "language" : "bash", "mode" : "silent", @@ -8474,7 +8502,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Generate ULID", - "updatedAt" : "2021-12-20T12:48:58+00:00" + "updatedAt" : "2021-12-20T12:48:58Z" }, { "authors" : [ @@ -8525,7 +8553,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Generate UUID", - "updatedAt" : "2020-12-08T15:56:35+00:00" + "updatedAt" : "2020-12-08T15:56:35Z" }, { "authors" : [ @@ -8562,7 +8590,7 @@ "url" : "https:\/\/github.com\/thomaspaulmann" } ], - "createdAt" : "2021-02-16T22:31:57+00:00", + "createdAt" : "2021-02-16T22:31:57Z", "currentDirectoryPath" : null, "description" : "Create beautiful images of your code with https:\/\/ray.so", "filename" : "create-image-from-code.sh", @@ -8571,7 +8599,7 @@ "dark" : null, "light" : ".\/images\/ray-so.png" }, - "identifier" : "8ddb848532c729215e01d0d3fa1aeb6a", + "identifier" : "88ae1869a8a7487db63e8ff43fb3db43", "isTemplate" : false, "language" : "bash", "mode" : "silent", @@ -8660,7 +8688,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Copy Lorem Ipsum", - "updatedAt" : "2020-12-08T15:56:35+00:00" + "updatedAt" : "2020-12-08T15:56:35Z" }, { "authors" : [ @@ -8688,7 +8716,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Print TLDR doc", - "updatedAt" : "2021-03-16T06:39:37+00:00" + "updatedAt" : "2021-03-16T06:39:37Z" }, { "authors" : [ @@ -8744,7 +8772,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Error Info", - "updatedAt" : "2021-03-01T16:54:23+00:00" + "updatedAt" : "2021-03-01T16:54:23Z" }, { "authors" : [ @@ -8772,7 +8800,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Join Clipboard Lines by Delimiter", - "updatedAt" : "2023-09-05T15:24:46+00:00" + "updatedAt" : "2023-09-05T15:24:46Z" }, { "authors" : [ @@ -8828,7 +8856,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Delete Current Line", - "updatedAt" : "2024-01-26T09:21:48+00:00" + "updatedAt" : "2024-01-26T09:21:48Z" }, { "authors" : [ @@ -8856,7 +8884,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Strong Password Generator", - "updatedAt" : "2021-01-24T20:15:25+00:00" + "updatedAt" : "2021-01-24T20:15:25Z" }, { "authors" : null, @@ -8879,7 +8907,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Decode Base64", - "updatedAt" : "2020-12-08T15:56:35+00:00" + "updatedAt" : "2020-12-08T15:56:35Z" }, { "authors" : [ @@ -8935,7 +8963,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Copy Current Epoch Unix Timestamp", - "updatedAt" : "2021-07-29T11:41:55+00:00" + "updatedAt" : "2021-07-29T11:41:55Z" }, { "authors" : [ @@ -9014,7 +9042,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Prettify JSON", - "updatedAt" : "2020-12-08T15:56:35+00:00" + "updatedAt" : "2020-12-08T15:56:35Z" }, { "authors" : [ @@ -9042,7 +9070,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Open Deep Link", - "updatedAt" : "2021-09-01T13:11:06+00:00" + "updatedAt" : "2021-09-01T13:11:06Z" }, { "authors" : [ @@ -9093,7 +9121,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Clear Derived Data", - "updatedAt" : "2020-12-08T15:56:35+00:00" + "updatedAt" : "2020-12-08T15:56:35Z" }, { "authors" : [ @@ -9177,7 +9205,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Trim Git Commit Hash", - "updatedAt" : "2021-07-19T14:40:00+00:00" + "updatedAt" : "2021-07-19T14:40:00Z" }, { "authors" : [ @@ -9441,7 +9469,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Clean", - "updatedAt" : "2021-06-12T17:33:18+00:00" + "updatedAt" : "2021-06-12T17:33:18Z" }, { "authors" : [ @@ -9947,7 +9975,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Doctor", - "updatedAt" : "2021-02-25T00:34:23+00:00" + "updatedAt" : "2021-02-25T00:34:23Z" }, { "authors" : [ @@ -9975,7 +10003,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Outdated List", - "updatedAt" : "2021-02-25T00:34:23+00:00" + "updatedAt" : "2021-02-25T00:34:23Z" }, { "authors" : [ @@ -10031,7 +10059,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Start Service", - "updatedAt" : "2021-02-25T00:34:23+00:00" + "updatedAt" : "2021-02-25T00:34:23Z" }, { "authors" : [ @@ -10059,7 +10087,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "List", - "updatedAt" : "2021-03-19T16:42:53+00:00" + "updatedAt" : "2021-03-19T16:42:53Z" }, { "authors" : [ @@ -10087,7 +10115,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Upgrade", - "updatedAt" : "2021-02-25T00:34:23+00:00" + "updatedAt" : "2021-02-25T00:34:23Z" }, { "authors" : [ @@ -10115,7 +10143,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Stop Service", - "updatedAt" : "2021-02-25T00:34:23+00:00" + "updatedAt" : "2021-02-25T00:34:23Z" }, { "authors" : [ @@ -10143,7 +10171,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Update", - "updatedAt" : "2021-03-19T16:42:53+00:00" + "updatedAt" : "2021-03-19T16:42:53Z" }, { "authors" : [ @@ -10171,7 +10199,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Restart Service", - "updatedAt" : "2021-09-07T10:00:18+00:00" + "updatedAt" : "2021-09-07T10:00:18Z" }, { "authors" : [ @@ -10227,7 +10255,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Services List", - "updatedAt" : "2021-02-25T00:34:23+00:00" + "updatedAt" : "2021-02-25T00:34:23Z" } ] }, @@ -10270,7 +10298,7 @@ "url" : "https:\/\/github.com\/thomaspaulmann" } ], - "createdAt" : "2020-11-27T10:40:24+00:00", + "createdAt" : "2020-11-27T10:40:24Z", "currentDirectoryPath" : null, "description" : "Show statistics of your GitHub repository.", "filename" : "github-repository-stars.template.rb", @@ -10279,7 +10307,7 @@ "dark" : null, "light" : "⭐️" }, - "identifier" : "f7f43950b26ed37ae90938e7f4a0e0ad", + "identifier" : "bda99211bf65f1b5219db20e1b8f1b3d", "isTemplate" : true, "language" : "ruby", "mode" : "inline", @@ -10289,7 +10317,7 @@ "refreshTime" : "1h", "schemaVersion" : 1, "title" : "Repository Statistics", - "updatedAt" : "2020-11-27T10:40:24+00:00" + "updatedAt" : "2020-11-27T10:40:24Z" }, { "authors" : [ @@ -10345,7 +10373,7 @@ "refreshTime" : "1h", "schemaVersion" : 1, "title" : "Repository Statistics", - "updatedAt" : "2023-07-25T00:17:33+00:00" + "updatedAt" : "2023-07-25T00:17:33Z" }, { "authors" : [ @@ -10382,7 +10410,7 @@ "url" : "https:\/\/github.com\/FSipiano" } ], - "createdAt" : "2021-03-17T17:31:38+00:00", + "createdAt" : "2021-03-17T17:31:38Z", "currentDirectoryPath" : null, "description" : "Display number of open pull requests", "filename" : "github-open-pull-requests.template.rb", @@ -10391,7 +10419,7 @@ "dark" : "images\/github-logo-iconDark.png", "light" : "images\/github-logo.png" }, - "identifier" : "94eaf509839a2abb4c0f38fe84dac1fb", + "identifier" : "07da15e048906bd7b5ee0275044649f8", "isTemplate" : true, "language" : "ruby", "mode" : "inline", @@ -10401,7 +10429,7 @@ "refreshTime" : "5m", "schemaVersion" : 1, "title" : "Open Pull Requests", - "updatedAt" : "2021-03-18T11:30:06+00:00" + "updatedAt" : "2021-03-18T11:30:06Z" }, { "authors" : [ @@ -10410,7 +10438,7 @@ "url" : "https:\/\/github.com\/FSipiano" } ], - "createdAt" : "2021-03-17T17:31:38+00:00", + "createdAt" : "2021-03-17T17:31:38Z", "currentDirectoryPath" : null, "description" : "Display (detailed) GitHub pull requests", "filename" : "github-open-pull-requests-details.template.rb", @@ -10419,7 +10447,7 @@ "dark" : "images\/github-logo-iconDark.png", "light" : "images\/github-logo.png" }, - "identifier" : "02e903f7524e97478f2c5c31ee143834", + "identifier" : "d01e8e7a75307d40d48797d8ec6041b8", "isTemplate" : true, "language" : "ruby", "mode" : "fullOutput", @@ -10438,7 +10466,7 @@ "url" : "https:\/\/github.com\/FSipiano" } ], - "createdAt" : "2021-03-17T17:31:38+00:00", + "createdAt" : "2021-03-17T17:31:38Z", "currentDirectoryPath" : null, "description" : "Open your GitHub pull requests page", "filename" : "github-open-pull-requests-page.sh", @@ -10447,7 +10475,7 @@ "dark" : "images\/github-logo-iconDark.png", "light" : "images\/github-logo.png" }, - "identifier" : "063d1b26dd9a78237a832b439845c4c0", + "identifier" : "1568c128b1e4e3897c8f2a65bb14d551", "isTemplate" : false, "language" : "bash", "mode" : "silent", @@ -10457,7 +10485,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Open Pull Requests page", - "updatedAt" : "2021-03-18T11:30:06+00:00" + "updatedAt" : "2021-03-18T11:30:06Z" }, { "authors" : [ @@ -10466,7 +10494,7 @@ "url" : "https:\/\/github.com\/vpicone" } ], - "createdAt" : "2021-03-17T17:31:38+00:00", + "createdAt" : "2021-03-17T17:31:38Z", "currentDirectoryPath" : null, "description" : "Display number of Pull Requests requesting your review", "filename" : "github-review-requests.template.rb", @@ -10475,7 +10503,7 @@ "dark" : "images\/github-logo-iconDark.png", "light" : "images\/github-logo.png" }, - "identifier" : "61586867ab7b6b2efa596bce302ed064", + "identifier" : "d1fc531c2aa8d1bac53ac6f630c1ca90", "isTemplate" : true, "language" : "ruby", "mode" : "inline", @@ -10575,7 +10603,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Single Sign-On", - "updatedAt" : "2021-12-19T15:22:29+00:00" + "updatedAt" : "2021-12-19T15:22:29Z" }, { "authors" : [ @@ -10603,7 +10631,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Find AWS Region by IP", - "updatedAt" : "2021-01-04T13:34:28+00:00" + "updatedAt" : "2021-01-04T13:34:28Z" } ] }, @@ -10618,7 +10646,7 @@ "url" : "https:\/\/github.com\/thomaspaulmann" } ], - "createdAt" : "2020-12-02T09:13:05+00:00", + "createdAt" : "2020-12-02T09:13:05Z", "currentDirectoryPath" : null, "description" : "Show unresolved issues of the last 24 hours from Sentry.", "filename" : "sentry-unresolved-issues.template.py", @@ -10627,7 +10655,7 @@ "dark" : "images\/sentry-dark.png", "light" : "images\/sentry.png" }, - "identifier" : "ad03c85a59ef25bccd103067f7034697", + "identifier" : "d965f2571912eb46a116071bd5a25111", "isTemplate" : true, "language" : "python", "mode" : "inline", @@ -10637,7 +10665,7 @@ "refreshTime" : "1h", "schemaVersion" : 1, "title" : "Unresolved Issues", - "updatedAt" : "2020-12-02T09:13:05+00:00" + "updatedAt" : "2020-12-02T09:13:05Z" }, { "authors" : [ @@ -10650,7 +10678,7 @@ "url" : "https:\/\/github.com\/thomaspaulmann" } ], - "createdAt" : "2020-12-02T09:13:05+00:00", + "createdAt" : "2020-12-02T09:13:05Z", "currentDirectoryPath" : null, "description" : "Show unresolved issues in the last 24 hours (by project) from Sentry.", "filename" : "sentry-unresolved-issues-by-project.template.py", @@ -10659,7 +10687,7 @@ "dark" : "images\/sentry-dark.png", "light" : "images\/sentry.png" }, - "identifier" : "0b50b081414f73ef7e75e1f061bf9bd2", + "identifier" : "cd9dc8603b5433fe83c15dd43785add6", "isTemplate" : true, "language" : "python", "mode" : "fullOutput", @@ -11123,7 +11151,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Let Me Google That", - "updatedAt" : "2023-06-27T09:57:07+00:00" + "updatedAt" : "2023-06-27T09:57:07Z" }, { "authors" : [ @@ -11188,7 +11216,7 @@ "url" : "https:\/\/github.com\/PitNikola" } ], - "createdAt" : "2021-03-14T20:36:28+00:00", + "createdAt" : "2021-03-14T20:36:28Z", "currentDirectoryPath" : null, "description" : "Share secret securely using https:\/\/share.doppler.com\/.", "filename" : "share-secret-doppler.py", @@ -11197,7 +11225,7 @@ "dark" : null, "light" : "images\/doppler-logo.png" }, - "identifier" : "7083bf08edba754d9457b2d289de18be", + "identifier" : "348009c977b2cf35d589b7723f89b8ed", "isTemplate" : false, "language" : "python", "mode" : "silent", @@ -11207,7 +11235,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Share Secret from Clipboard", - "updatedAt" : "2021-03-14T20:36:28+00:00" + "updatedAt" : "2021-03-14T20:36:28Z" }, { "authors" : [ @@ -11307,7 +11335,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Open Most Recent Email", - "updatedAt" : "2023-02-03T00:48:14+00:00" + "updatedAt" : "2023-02-03T00:48:14Z" } ] }, @@ -11438,7 +11466,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Leave Meeting", - "updatedAt" : "2021-05-03T09:54:17+00:00" + "updatedAt" : "2021-05-03T09:54:17Z" }, { "authors" : [ @@ -11466,7 +11494,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Rename Profile", - "updatedAt" : "2023-03-31T03:48:28+00:00" + "updatedAt" : "2023-03-31T03:48:28Z" }, { "authors" : [ @@ -11601,7 +11629,7 @@ "url" : "https:\/\/github.com\/samching" } ], - "createdAt" : "2020-11-26T13:39:55+00:00", + "createdAt" : "2020-11-26T13:39:55Z", "currentDirectoryPath" : null, "description" : "Clear DND Status in Slack", "filename" : "clear-slack-DND-status.sh", @@ -11610,7 +11638,7 @@ "dark" : null, "light" : "images\/slack-logo.png" }, - "identifier" : "560ddd5136e037faafb5fbef3ecc1e10", + "identifier" : "05872fc3bb67f93dd979fe0f25b06545", "isTemplate" : false, "language" : "bash", "mode" : "silent", @@ -11629,7 +11657,7 @@ "url" : "https:\/\/github.com\/zebapy" } ], - "createdAt" : "2020-11-26T13:39:55+00:00", + "createdAt" : "2020-11-26T13:39:55Z", "currentDirectoryPath" : null, "description" : "Create a Slack reminder", "filename" : "add-slack-reminder.template.sh", @@ -11638,7 +11666,7 @@ "dark" : null, "light" : "⏰" }, - "identifier" : "d320c2d35cc64553ce1a2db1ab80937c", + "identifier" : "8f2bf69938e8df32b08bf016b259d993", "isTemplate" : true, "language" : "bash", "mode" : "silent", @@ -11648,7 +11676,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Add Reminder", - "updatedAt" : "2022-01-15T18:23:42+00:00" + "updatedAt" : "2022-01-15T18:23:42Z" }, { "authors" : [ @@ -11685,7 +11713,7 @@ "url" : "https:\/\/github.com\/thomaspaulmann" } ], - "createdAt" : "2020-11-26T13:39:55+00:00", + "createdAt" : "2020-11-26T13:39:55Z", "currentDirectoryPath" : null, "description" : "Clear your status in Slack.", "filename" : "clear-slack-status.template.sh", @@ -11694,7 +11722,7 @@ "dark" : null, "light" : "🧼" }, - "identifier" : "42d6bf1b6d5ba4c4cf4d3dbfbd11f120", + "identifier" : "17d4ffd95aaa50ac53208639c1807969", "isTemplate" : true, "language" : "bash", "mode" : "silent", @@ -11704,7 +11732,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Clear Status", - "updatedAt" : "2020-11-26T13:44:17+00:00" + "updatedAt" : "2020-11-26T13:44:17Z" }, { "authors" : [ @@ -11788,7 +11816,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Send Message in Channel", - "updatedAt" : "2021-05-03T14:30:44+00:00" + "updatedAt" : "2021-05-03T14:30:44Z" }, { "authors" : [ @@ -11797,7 +11825,7 @@ "url" : "https:\/\/github.com\/thomaspaulmann" } ], - "createdAt" : "2020-11-26T13:39:55+00:00", + "createdAt" : "2020-11-26T13:39:55Z", "currentDirectoryPath" : null, "description" : "Set your status in Slack.", "filename" : "set-slack-status.template.sh", @@ -11806,7 +11834,7 @@ "dark" : null, "light" : "☕️" }, - "identifier" : "a9c185aec50f521d19ed1d47aab578a5", + "identifier" : "57e23350fff64274696cfe28cce9d8ee", "isTemplate" : true, "language" : "bash", "mode" : "silent", @@ -11816,7 +11844,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Set Status to Coffee", - "updatedAt" : "2020-11-26T18:24:36+00:00" + "updatedAt" : "2020-11-26T18:24:36Z" }, { "authors" : [ @@ -11872,7 +11900,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Launch Dev Mode", - "updatedAt" : "2024-03-10T21:12:02+00:00" + "updatedAt" : "2024-03-10T21:12:02Z" } ] }, @@ -12058,7 +12086,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Gmail", - "updatedAt" : "2020-12-07T20:12:02+00:00" + "updatedAt" : "2020-12-07T20:12:02Z" } ] } @@ -12122,7 +12150,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Search in Bilibili", - "updatedAt" : "2021-01-05T12:30:16+00:00" + "updatedAt" : "2021-01-05T12:30:16Z" }, { "authors" : [ @@ -12159,7 +12187,7 @@ "url" : "https:\/\/github.com\/andreiborisov" } ], - "createdAt" : "2020-11-19T15:07:52+00:00", + "createdAt" : "2020-11-19T15:07:52Z", "currentDirectoryPath" : null, "description" : null, "filename" : "kinopoisk.sh", @@ -12168,7 +12196,7 @@ "dark" : null, "light" : "images\/kinopoisk.png" }, - "identifier" : "b9765abdca2e2f4913f25f68e9d1cb34", + "identifier" : "3035530c75101abbeb24a0a27b0ed685", "isTemplate" : false, "language" : "bash", "mode" : "silent", @@ -12215,7 +12243,7 @@ "url" : "https:\/\/zander.wtf" } ], - "createdAt" : "2020-11-24T21:18:01+00:00", + "createdAt" : "2020-11-24T21:18:01Z", "currentDirectoryPath" : null, "description" : null, "filename" : "giphy.sh", @@ -12224,7 +12252,7 @@ "dark" : null, "light" : "images\/giphy.png" }, - "identifier" : "27a2493face41bf1d80793deb1771797", + "identifier" : "3613b602176200bab2cb81cf3e3a31fc", "isTemplate" : false, "language" : "bash", "mode" : "silent", @@ -12238,7 +12266,7 @@ }, { "authors" : null, - "createdAt" : "2020-11-19T15:07:52+00:00", + "createdAt" : "2020-11-19T15:07:52Z", "currentDirectoryPath" : null, "description" : null, "filename" : "yandex-search.sh", @@ -12247,7 +12275,7 @@ "dark" : null, "light" : "images\/yandex.png" }, - "identifier" : "f938027f6f3f823928e80d4527804d25", + "identifier" : "14ac258936b541c8b080afd875c888e9", "isTemplate" : false, "language" : "bash", "mode" : "silent", @@ -12378,7 +12406,7 @@ "url" : "https:\/\/zander.wtf" } ], - "createdAt" : "2020-11-24T21:18:01+00:00", + "createdAt" : "2020-11-24T21:18:01Z", "currentDirectoryPath" : null, "description" : null, "filename" : "njt.sh", @@ -12387,7 +12415,7 @@ "dark" : null, "light" : "🐸" }, - "identifier" : "7b80efcaecafbf7092d3bd0292112021", + "identifier" : "bf292fd5c6a6daeb7cb500aed47c97ce", "isTemplate" : false, "language" : "bash", "mode" : "silent", @@ -12401,7 +12429,7 @@ }, { "authors" : null, - "createdAt" : "2020-11-19T21:13:15+00:00", + "createdAt" : "2020-11-19T21:13:15Z", "currentDirectoryPath" : null, "description" : null, "filename" : "npmjs.sh", @@ -12410,7 +12438,7 @@ "dark" : null, "light" : "images\/npmjs.png" }, - "identifier" : "b8c51cd5f736849629df290dcf48e627", + "identifier" : "1c60d434bfa470adfa9e5c4fad31a29a", "isTemplate" : false, "language" : "bash", "mode" : "silent", @@ -12448,7 +12476,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Search Go Package Documentation", - "updatedAt" : "2021-01-18T16:44:26+00:00" + "updatedAt" : "2021-01-18T16:44:26Z" }, { "authors" : [ @@ -12457,7 +12485,7 @@ "url" : "https:\/\/zander.wtf" } ], - "createdAt" : "2020-11-19T21:13:15+00:00", + "createdAt" : "2020-11-19T21:13:15Z", "currentDirectoryPath" : null, "description" : null, "filename" : "repo.sh", @@ -12466,7 +12494,7 @@ "dark" : null, "light" : "📦" }, - "identifier" : "327dff4d0f970f6709bed4f17955b925", + "identifier" : "fd304aeeb3b07086af4d259dc6bd8a44", "isTemplate" : false, "language" : "bash", "mode" : "silent", @@ -12504,7 +12532,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Search in Baidu", - "updatedAt" : "2021-01-05T12:30:16+00:00" + "updatedAt" : "2021-01-05T12:30:16Z" }, { "authors" : [ @@ -12536,7 +12564,7 @@ }, { "authors" : null, - "createdAt" : "2020-11-19T15:07:52+00:00", + "createdAt" : "2020-11-19T15:07:52Z", "currentDirectoryPath" : null, "description" : null, "filename" : "twitter-search.sh", @@ -12545,7 +12573,7 @@ "dark" : null, "light" : "images\/twitter.png" }, - "identifier" : "c87cc4be86c046f70f68ca1cd2223258", + "identifier" : "5325fd3de931054a254082b1ce061ec9", "isTemplate" : false, "language" : "bash", "mode" : "silent", @@ -12583,7 +12611,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Search in Zhihu", - "updatedAt" : "2021-01-05T12:30:16+00:00" + "updatedAt" : "2021-01-05T12:30:16Z" }, { "authors" : [ @@ -12667,7 +12695,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Pub.dev Search", - "updatedAt" : "2021-05-31T09:21:31+00:00" + "updatedAt" : "2021-05-31T09:21:31Z" }, { "authors" : [ @@ -12699,7 +12727,7 @@ }, { "authors" : null, - "createdAt" : "2020-11-19T15:07:52+00:00", + "createdAt" : "2020-11-19T15:07:52Z", "currentDirectoryPath" : null, "description" : null, "filename" : "amazon.sh", @@ -12708,7 +12736,7 @@ "dark" : null, "light" : "images\/amazon.png" }, - "identifier" : "cc7830e2a1dfe295301d9b835e584cdf", + "identifier" : "7ca50f13f43b953f6d587c52f61005a9", "isTemplate" : false, "language" : "bash", "mode" : "silent", @@ -12783,7 +12811,7 @@ "url" : "https:\/\/zander.wtf" } ], - "createdAt" : "2020-11-24T21:18:01+00:00", + "createdAt" : "2020-11-24T21:18:01Z", "currentDirectoryPath" : null, "description" : null, "filename" : "unfurl.sh", @@ -12792,7 +12820,7 @@ "dark" : null, "light" : "🔗" }, - "identifier" : "ee82cecb96af85116fdc9b7208b77767", + "identifier" : "19f9cd5c3c78c5008f84417d01f14dee", "isTemplate" : false, "language" : "bash", "mode" : "silent", @@ -12830,7 +12858,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Search in Wikipedia", - "updatedAt" : "2021-02-16T16:00:45+00:00" + "updatedAt" : "2021-02-16T16:00:45Z" }, { "authors" : [ @@ -12914,7 +12942,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Search OpenSecrets.org", - "updatedAt" : "2023-04-24T06:57:26+00:00" + "updatedAt" : "2023-04-24T06:57:26Z" }, { "authors" : [ @@ -12951,7 +12979,7 @@ "url" : "https:\/\/zander.wtf" } ], - "createdAt" : "2020-11-24T21:18:01+00:00", + "createdAt" : "2020-11-24T21:18:01Z", "currentDirectoryPath" : null, "description" : null, "filename" : "caniuse.sh", @@ -12960,7 +12988,7 @@ "dark" : null, "light" : "❓" }, - "identifier" : "7c4f744b2140f5b80f7e15e0ebe6a6dd", + "identifier" : "d57b60f7bec95ebaf6ecd985d539eb33", "isTemplate" : false, "language" : "bash", "mode" : "silent", @@ -13035,7 +13063,7 @@ "url" : "https:\/\/zander.wtf" } ], - "createdAt" : "2020-11-19T21:13:15+00:00", + "createdAt" : "2020-11-19T21:13:15Z", "currentDirectoryPath" : null, "description" : null, "filename" : "npms.sh", @@ -13044,7 +13072,7 @@ "dark" : null, "light" : "images\/npms.png" }, - "identifier" : "190c26fa07258eca73549fde0318804f", + "identifier" : "c50c4272f0b39efd127d169968b96a9c", "isTemplate" : false, "language" : "bash", "mode" : "silent", @@ -13114,7 +13142,7 @@ }, { "authors" : null, - "createdAt" : "2020-11-19T15:07:52+00:00", + "createdAt" : "2020-11-19T15:07:52Z", "currentDirectoryPath" : null, "description" : null, "filename" : "grep-app-search.sh", @@ -13123,7 +13151,7 @@ "dark" : null, "light" : "https:\/\/grep.app\/favicon.ico" }, - "identifier" : "b5ca621aeb52f48ffe1ffe30a8bb9373", + "identifier" : "3c1b4b1b7f98114881247bd9e9c44166", "isTemplate" : false, "language" : "bash", "mode" : "silent", @@ -13249,7 +13277,7 @@ }, { "authors" : null, - "createdAt" : "2021-02-26T19:18:23+00:00", + "createdAt" : "2021-02-26T19:18:23Z", "currentDirectoryPath" : null, "description" : null, "filename" : "search-swift-github.sh", @@ -13258,7 +13286,7 @@ "dark" : null, "light" : ".\/images\/swift.png" }, - "identifier" : "819a4731b5656b3636b32652c241a507", + "identifier" : "ded067c8f231e019897a58bd2b5bb30c", "isTemplate" : false, "language" : "bash", "mode" : "silent", @@ -13268,7 +13296,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Search Swift Code", - "updatedAt" : "2021-02-26T19:18:23+00:00" + "updatedAt" : "2021-02-26T19:18:23Z" }, { "authors" : [ @@ -13300,7 +13328,7 @@ }, { "authors" : null, - "createdAt" : "2020-11-19T15:07:52+00:00", + "createdAt" : "2020-11-19T15:07:52Z", "currentDirectoryPath" : null, "description" : null, "filename" : "duck-duck-go.sh", @@ -13309,7 +13337,7 @@ "dark" : null, "light" : "images\/duck-duck-go.png" }, - "identifier" : "e780f29955995de21a5ed8d42a7dc669", + "identifier" : "137568a154ee81cb2a1ca68aa4bbfd0d", "isTemplate" : false, "language" : "bash", "mode" : "silent", @@ -13319,7 +13347,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Search in DuckDuckGo", - "updatedAt" : "2021-01-05T12:30:16+00:00" + "updatedAt" : "2021-01-05T12:30:16Z" }, { "authors" : [ @@ -13375,11 +13403,11 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Search IMDB", - "updatedAt" : "2021-02-21T22:06:55+00:00" + "updatedAt" : "2021-02-21T22:06:55Z" }, { "authors" : null, - "createdAt" : "2020-11-19T15:07:52+00:00", + "createdAt" : "2020-11-19T15:07:52Z", "currentDirectoryPath" : null, "description" : null, "filename" : "youtube.sh", @@ -13388,7 +13416,7 @@ "dark" : null, "light" : "images\/youtube.png" }, - "identifier" : "5e89e0c4d9ffddf0b3eea566f14773ca", + "identifier" : "aed6056723b8ff63788a8cec2fdfa88a", "isTemplate" : false, "language" : "bash", "mode" : "silent", @@ -13398,7 +13426,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Search in YouTube", - "updatedAt" : "2021-01-05T12:30:16+00:00" + "updatedAt" : "2021-01-05T12:30:16Z" }, { "authors" : [ @@ -13407,7 +13435,7 @@ "url" : "https:\/\/zander.wtf" } ], - "createdAt" : "2020-11-19T21:13:15+00:00", + "createdAt" : "2020-11-19T21:13:15Z", "currentDirectoryPath" : null, "description" : null, "filename" : "bundlephobia.sh", @@ -13416,7 +13444,7 @@ "dark" : null, "light" : "📦" }, - "identifier" : "0b092bce570e52328d6bcbe0163ae216", + "identifier" : "be1cdb15aaca06deb525512db504e89a", "isTemplate" : false, "language" : "bash", "mode" : "silent", @@ -13458,7 +13486,7 @@ }, { "authors" : null, - "createdAt" : "2020-11-19T15:07:52+00:00", + "createdAt" : "2020-11-19T15:07:52Z", "currentDirectoryPath" : null, "description" : null, "filename" : "crunchbase.sh", @@ -13467,7 +13495,7 @@ "dark" : null, "light" : "images\/crunchbase.png" }, - "identifier" : "0f4669c88378d536451227114c6c6173", + "identifier" : "31c55bcec6408a3702a8f834a2b6457e", "isTemplate" : false, "language" : "bash", "mode" : "silent", @@ -13481,7 +13509,7 @@ }, { "authors" : null, - "createdAt" : "2020-11-19T15:07:52+00:00", + "createdAt" : "2020-11-19T15:07:52Z", "currentDirectoryPath" : null, "description" : null, "filename" : "google-search.sh", @@ -13490,7 +13518,7 @@ "dark" : null, "light" : "images\/google.png" }, - "identifier" : "57aaa2728f3a23af892dfd7364e122d9", + "identifier" : "892301cd7b236406f6efc128ae07c4e3", "isTemplate" : false, "language" : "bash", "mode" : "silent", @@ -13500,7 +13528,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Search in Google", - "updatedAt" : "2021-01-05T12:30:16+00:00" + "updatedAt" : "2021-01-05T12:30:16Z" }, { "authors" : [ @@ -13509,7 +13537,7 @@ "url" : "https:\/\/zander.wtf" } ], - "createdAt" : "2020-11-24T21:18:01+00:00", + "createdAt" : "2020-11-24T21:18:01Z", "currentDirectoryPath" : null, "description" : null, "filename" : "wayback-machine.sh", @@ -13518,7 +13546,7 @@ "dark" : null, "light" : "images\/ia-logo.jpg" }, - "identifier" : "0dfb3e1ec84b397ccfec9f4a1c0a808d", + "identifier" : "3438cbb2bcc47a029bd463eb8229b673", "isTemplate" : false, "language" : "bash", "mode" : "silent", @@ -13584,11 +13612,11 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Find Email Address With Hunter", - "updatedAt" : "2021-04-09T11:25:34+00:00" + "updatedAt" : "2021-04-09T11:25:34Z" }, { "authors" : null, - "createdAt" : "2021-02-19T09:10:21+00:00", + "createdAt" : "2021-02-19T09:10:21Z", "currentDirectoryPath" : null, "description" : null, "filename" : "google-maps.sh", @@ -13597,7 +13625,7 @@ "dark" : null, "light" : "images\/google-map.png" }, - "identifier" : "43ab852f28e3b03e0e66fe5309f259b1", + "identifier" : "8a71bb6b31307d65cf23a94c619c9971", "isTemplate" : false, "language" : "bash", "mode" : "silent", @@ -13691,7 +13719,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Search Genre in Chosic", - "updatedAt" : "2021-02-12T11:28:52+00:00" + "updatedAt" : "2021-02-12T11:28:52Z" }, { "authors" : [ @@ -13700,7 +13728,7 @@ "url" : "https:\/\/github.com\/traynham" } ], - "createdAt" : "2020-12-07T19:59:12+00:00", + "createdAt" : "2020-12-07T19:59:12Z", "currentDirectoryPath" : null, "description" : "Search in MDN (Mozilla) Docs by topic", "filename" : "mdn.sh", @@ -13709,7 +13737,7 @@ "dark" : "images\/mdn_dark.png", "light" : "images\/mdn_light.png" }, - "identifier" : "cf35df9256be2997e18dc4e853f14213", + "identifier" : "991511e9548f80fc5f5dfa70172df0c9", "isTemplate" : false, "language" : "bash", "mode" : "silent", @@ -13747,7 +13775,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Search LinkedIn", - "updatedAt" : "2021-01-24T20:18:06+00:00" + "updatedAt" : "2021-01-24T20:18:06Z" }, { "authors" : [ @@ -13775,7 +13803,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Search in Taobao", - "updatedAt" : "2021-01-05T12:30:16+00:00" + "updatedAt" : "2021-01-05T12:30:16Z" }, { "authors" : [ @@ -14187,7 +14215,7 @@ "url" : "https:\/\/twitter.com\/CleanShot_app" } ], - "createdAt" : "2021-03-01T16:53:29+00:00", + "createdAt" : "2021-03-01T16:53:29Z", "currentDirectoryPath" : null, "description" : "Opens a new Quick Access Overlay with the specified image or video.", "filename" : "cleanshot-add-quick-access-overlay.sh", @@ -14196,7 +14224,7 @@ "dark" : null, "light" : ".\/images\/add-quick-access-overlay.png" }, - "identifier" : "91b80377dfa8efe298d18c230eaef6f2", + "identifier" : "7239456521bcd7c3373cf8870936d3a7", "isTemplate" : false, "language" : "bash", "mode" : "silent", @@ -14215,7 +14243,7 @@ "url" : "https:\/\/twitter.com\/CleanShot_app" } ], - "createdAt" : "2021-03-01T16:53:29+00:00", + "createdAt" : "2021-03-01T16:53:29Z", "currentDirectoryPath" : null, "description" : "Opens Text Recognition (OCR) tool or extracts text from the specified file.", "filename" : "cleanshot-capture-text.sh", @@ -14224,7 +14252,7 @@ "dark" : null, "light" : ".\/images\/capture-text.png" }, - "identifier" : "bc13ec469b1f9315254a99c339f94c46", + "identifier" : "7fe6d44fdbe6d9bb201ff65b756d860f", "isTemplate" : false, "language" : "bash", "mode" : "silent", @@ -14243,7 +14271,7 @@ "url" : "https:\/\/twitter.com\/CleanShot_app" } ], - "createdAt" : "2021-03-01T16:53:29+00:00", + "createdAt" : "2021-03-01T16:53:29Z", "currentDirectoryPath" : null, "description" : "Take a screenshot of a window.", "filename" : "cleanshot-capture-window.sh", @@ -14252,7 +14280,7 @@ "dark" : null, "light" : ".\/images\/capture-window.png" }, - "identifier" : "930cc5847d3e98f97448af63c9f6ce70", + "identifier" : "3d218b4cbed21f7454562678b6a0b8ee", "isTemplate" : false, "language" : "bash", "mode" : "silent", @@ -14271,7 +14299,7 @@ "url" : "https:\/\/twitter.com\/CleanShot_app" } ], - "createdAt" : "2021-03-01T16:53:29+00:00", + "createdAt" : "2021-03-01T16:53:29Z", "currentDirectoryPath" : null, "description" : "Take a screenshot of the previously specified area of your screen.", "filename" : "cleanshot-capture-previous-area.sh", @@ -14280,7 +14308,7 @@ "dark" : null, "light" : ".\/images\/capture-previous-area.png" }, - "identifier" : "5b66ca80099c0df6a6f6b76b72f30e77", + "identifier" : "43f62174fe500ba2f6cb4661195f3ebb", "isTemplate" : false, "language" : "bash", "mode" : "silent", @@ -14299,7 +14327,7 @@ "url" : "https:\/\/twitter.com\/CleanShot_app" } ], - "createdAt" : "2021-03-01T16:53:29+00:00", + "createdAt" : "2021-03-01T16:53:29Z", "currentDirectoryPath" : null, "description" : "Restore the recently closed file.", "filename" : "cleanshot-restore.sh", @@ -14308,7 +14336,7 @@ "dark" : null, "light" : ".\/images\/restore.png" }, - "identifier" : "178ae73a00cf095f273899ff011ac7ae", + "identifier" : "775af547f54533d780759eea34761aeb", "isTemplate" : false, "language" : "bash", "mode" : "silent", @@ -14327,7 +14355,7 @@ "url" : "https:\/\/twitter.com\/CleanShot_app" } ], - "createdAt" : "2021-03-01T16:53:29+00:00", + "createdAt" : "2021-03-01T16:53:29Z", "currentDirectoryPath" : null, "description" : "Pin a screenshot to the screen.", "filename" : "cleanshot-pin.sh", @@ -14336,7 +14364,7 @@ "dark" : null, "light" : ".\/images\/pin.png" }, - "identifier" : "7b43135688cf93a57980e243831f842d", + "identifier" : "938d3ce2be34e29a9f58d9099996e9ef", "isTemplate" : false, "language" : "bash", "mode" : "silent", @@ -14355,7 +14383,7 @@ "url" : "https:\/\/twitter.com\/CleanShot_app" } ], - "createdAt" : "2021-03-01T16:53:29+00:00", + "createdAt" : "2021-03-01T16:53:29Z", "currentDirectoryPath" : null, "description" : "Opens specified file in Annotate.", "filename" : "cleanshot-annotate.sh", @@ -14364,7 +14392,7 @@ "dark" : null, "light" : ".\/images\/annotate.png" }, - "identifier" : "e59fa63eb6231b9ade5ac4c903255949", + "identifier" : "ca28647e99a4bbdea940fed93e688236", "isTemplate" : false, "language" : "bash", "mode" : "silent", @@ -14383,7 +14411,7 @@ "url" : "https:\/\/twitter.com\/CleanShot_app" } ], - "createdAt" : "2021-03-01T16:53:29+00:00", + "createdAt" : "2021-03-01T16:53:29Z", "currentDirectoryPath" : null, "description" : "Take a screenshot of a specific area on your screen.", "filename" : "cleanshot-capture-area.sh", @@ -14392,7 +14420,7 @@ "dark" : null, "light" : ".\/images\/capture-area.png" }, - "identifier" : "7a465271a40d40df33a4f809a9008da6", + "identifier" : "f0cd821e3dea3225012f1ee24e0ee2a6", "isTemplate" : false, "language" : "bash", "mode" : "silent", @@ -14411,7 +14439,7 @@ "url" : "https:\/\/twitter.com\/CleanShot_app" } ], - "createdAt" : "2021-03-01T16:53:29+00:00", + "createdAt" : "2021-03-01T16:53:29Z", "currentDirectoryPath" : null, "description" : "Open screenshot that is currently in the clipboard.", "filename" : "cleanshot-open-from-clipboard.sh", @@ -14420,7 +14448,7 @@ "dark" : null, "light" : ".\/images\/clipboard.png" }, - "identifier" : "6695f028dbfc306af7f80b7143ae2f11", + "identifier" : "6c834b826f74f76d659ee54377d73e9e", "isTemplate" : false, "language" : "bash", "mode" : "silent", @@ -14439,7 +14467,7 @@ "url" : "https:\/\/twitter.com\/CleanShot_app" } ], - "createdAt" : "2021-03-01T16:53:29+00:00", + "createdAt" : "2021-03-01T16:53:29Z", "currentDirectoryPath" : null, "description" : "Take a screenshot of your screen.", "filename" : "cleanshot-capture-fullscreen.sh", @@ -14448,7 +14476,7 @@ "dark" : null, "light" : ".\/images\/capture-fullscreen.png" }, - "identifier" : "38409278bff8b4b2a6b1f4a1c414467f", + "identifier" : "b4bdb548dc357d8483d2c7afda0fa2ad", "isTemplate" : false, "language" : "bash", "mode" : "silent", @@ -14495,7 +14523,7 @@ "url" : "https:\/\/twitter.com\/CleanShot_app" } ], - "createdAt" : "2021-03-01T16:53:29+00:00", + "createdAt" : "2021-03-01T16:53:29Z", "currentDirectoryPath" : null, "description" : "Take a screenshot after a specified delay to capture the perfect moment.", "filename" : "cleanshot-self-timer.sh", @@ -14504,7 +14532,7 @@ "dark" : null, "light" : ".\/images\/self-timer.png" }, - "identifier" : "6a02485725c953ebabb634d2171d69d4", + "identifier" : "7ff128b4069f95b91a61d2a920748340", "isTemplate" : false, "language" : "bash", "mode" : "silent", @@ -14523,7 +14551,7 @@ "url" : "https:\/\/twitter.com\/CleanShot_app" } ], - "createdAt" : "2021-03-01T16:53:29+00:00", + "createdAt" : "2021-03-01T16:53:29Z", "currentDirectoryPath" : null, "description" : "Capture any scrollable content.", "filename" : "cleanshot-scrolling-capture.sh", @@ -14532,7 +14560,7 @@ "dark" : null, "light" : ".\/images\/scrolling-capture.png" }, - "identifier" : "95d0ae887d4bd4de79313e67e919ce1c", + "identifier" : "66f040a60fe27b26e31f2dfea19a9200", "isTemplate" : false, "language" : "bash", "mode" : "silent", @@ -14551,7 +14579,7 @@ "url" : "https:\/\/twitter.com\/CleanShot_app" } ], - "createdAt" : "2021-03-01T16:53:29+00:00", + "createdAt" : "2021-03-01T16:53:29Z", "currentDirectoryPath" : null, "description" : "Start a screen recording and save it as a video or an optimized GIF file.", "filename" : "cleanshot-record-screen.sh", @@ -14560,7 +14588,7 @@ "dark" : null, "light" : ".\/images\/record-screen.png" }, - "identifier" : "2797e2984ea9fc0d309081f7cf08e034", + "identifier" : "745e006488dbf13262100b0d9992bd06", "isTemplate" : false, "language" : "bash", "mode" : "silent", @@ -14579,7 +14607,7 @@ "url" : "https:\/\/twitter.com\/CleanShot_app" } ], - "createdAt" : "2021-03-01T16:53:29+00:00", + "createdAt" : "2021-03-01T16:53:29Z", "currentDirectoryPath" : null, "description" : "Hide clutter on your Desktop.", "filename" : "cleanshot-toggle-desktop-icons.sh", @@ -14588,7 +14616,7 @@ "dark" : null, "light" : ".\/images\/toggle-desktop-icons.png" }, - "identifier" : "1ccf43b5679b65859cf4867a0713ea57", + "identifier" : "12f891f99170ce75263600efdf9819e7", "isTemplate" : false, "language" : "bash", "mode" : "silent", @@ -15020,7 +15048,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Create Event\/Task", - "updatedAt" : "2024-02-06T08:36:45+00:00" + "updatedAt" : "2024-02-06T08:36:45Z" } ] }, @@ -15054,7 +15082,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "New Floating Sticky Note", - "updatedAt" : "2024-01-26T09:21:48+00:00" + "updatedAt" : "2024-01-26T09:21:48Z" } ] }, @@ -16040,7 +16068,7 @@ "url" : "https:\/\/github.com\/thomaspaulmann" } ], - "createdAt" : "2021-01-24T20:19:30+00:00", + "createdAt" : "2021-01-24T20:19:30Z", "currentDirectoryPath" : null, "description" : "Set dimming intensity of background windows.", "filename" : "hazeover-set-intensity.applescript", @@ -16049,7 +16077,7 @@ "dark" : null, "light" : "images\/hazeover.png" }, - "identifier" : "fadd9020bfac9652d455ccefd757fcc2", + "identifier" : "f26557a194748a37e12e64003b1f2c6f", "isTemplate" : false, "language" : "applescript", "mode" : "silent", @@ -16068,7 +16096,7 @@ "url" : "https:\/\/github.com\/thomaspaulmann" } ], - "createdAt" : "2021-01-24T20:19:30+00:00", + "createdAt" : "2021-01-24T20:19:30Z", "currentDirectoryPath" : null, "description" : "Toggle dimming of all background windows.", "filename" : "hazeover-toggle-dimming.applescript", @@ -16077,7 +16105,7 @@ "dark" : null, "light" : "images\/hazeover.png" }, - "identifier" : "c77e9fa4315c2beba15ab0321d833ae5", + "identifier" : "5368be37ae49d353930157085116709f", "isTemplate" : false, "language" : "applescript", "mode" : "silent", @@ -16741,7 +16769,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Disconnect", - "updatedAt" : "2021-03-25T22:10:33+00:00" + "updatedAt" : "2021-03-25T22:10:33Z" }, { "authors" : [ @@ -16769,7 +16797,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Connect to Location", - "updatedAt" : "2022-08-25T19:51:18+00:00" + "updatedAt" : "2022-08-25T19:51:18Z" }, { "authors" : [ @@ -16797,7 +16825,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Search Countries, Cities, and Hostnames", - "updatedAt" : "2021-03-25T22:10:33+00:00" + "updatedAt" : "2021-03-25T22:10:33Z" }, { "authors" : [ @@ -16825,7 +16853,7 @@ "refreshTime" : "5m", "schemaVersion" : 1, "title" : "Mullvad Status", - "updatedAt" : "2022-08-25T19:51:18+00:00" + "updatedAt" : "2022-08-25T19:51:18Z" }, { "authors" : [ @@ -16853,7 +16881,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Reconnect", - "updatedAt" : "2022-08-25T19:51:18+00:00" + "updatedAt" : "2022-08-25T19:51:18Z" }, { "authors" : [ @@ -16881,7 +16909,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Connect", - "updatedAt" : "2022-08-25T19:51:18+00:00" + "updatedAt" : "2022-08-25T19:51:18Z" } ] }, @@ -17095,7 +17123,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Get Tasks", - "updatedAt" : "2021-05-04T10:14:48+00:00" + "updatedAt" : "2021-05-04T10:14:48Z" } ] }, @@ -17129,7 +17157,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Open", - "updatedAt" : "2022-01-27T12:07:09+00:00" + "updatedAt" : "2022-01-27T12:07:09Z" } ] }, @@ -17618,7 +17646,7 @@ "url" : "https:\/\/github.com\/thomaspaulmann" } ], - "createdAt" : "2021-03-09T15:09:02+00:00", + "createdAt" : "2021-03-09T15:09:02Z", "currentDirectoryPath" : null, "description" : "Close all tabs besides the currently active tab.", "filename" : "safari-close-other-tabs.applescript", @@ -17627,7 +17655,7 @@ "dark" : null, "light" : "images\/safari.png" }, - "identifier" : "4c466c382386183b6393383afe1a0b26", + "identifier" : "38cc0dc04da036a099b3e37fd711ef8d", "isTemplate" : false, "language" : "applescript", "mode" : "silent", @@ -17637,7 +17665,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Close Other Tabs", - "updatedAt" : "2021-03-09T15:09:02+00:00" + "updatedAt" : "2021-03-09T15:09:02Z" }, { "authors" : [ @@ -17702,7 +17730,7 @@ "url" : "https:\/\/github.com\/thomaspaulmann" } ], - "createdAt" : "2021-03-09T15:09:02+00:00", + "createdAt" : "2021-03-09T15:09:02Z", "currentDirectoryPath" : null, "description" : "Add a new Reading List item with the given URL. Allows a custom title to be specified.", "filename" : "safari-create-reading-list-item.applescript", @@ -17711,7 +17739,7 @@ "dark" : null, "light" : "images\/safari.png" }, - "identifier" : "b63421c14664c46305244e65fe16553f", + "identifier" : "77a2ff3bf579994aa3624feb9aca64a4", "isTemplate" : false, "language" : "applescript", "mode" : "fullOutput", @@ -17721,7 +17749,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Add Item to Reading List", - "updatedAt" : "2021-03-09T15:09:02+00:00" + "updatedAt" : "2021-03-09T15:09:02Z" }, { "authors" : [ @@ -17730,7 +17758,7 @@ "url" : "https:\/\/github.com\/thomaspaulmann" } ], - "createdAt" : "2021-03-09T15:09:02+00:00", + "createdAt" : "2021-03-09T15:09:02Z", "currentDirectoryPath" : null, "description" : "Close tabs with the same URL.", "filename" : "safari-close-duplicated-tabs.applescript", @@ -17739,7 +17767,7 @@ "dark" : null, "light" : "images\/safari.png" }, - "identifier" : "800d9f6cf20b6b1c2f5ffe4e76b84b4b", + "identifier" : "3910bc8358dde77be0359ef115f703a6", "isTemplate" : false, "language" : "applescript", "mode" : "silent", @@ -17749,7 +17777,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Close Duplicated Tabs", - "updatedAt" : "2021-03-09T15:11:52+00:00" + "updatedAt" : "2021-03-09T15:11:52Z" }, { "authors" : [ @@ -17758,7 +17786,7 @@ "url" : "https:\/\/github.com\/thomaspaulmann" } ], - "createdAt" : "2021-03-09T15:09:02+00:00", + "createdAt" : "2021-03-09T15:09:02Z", "currentDirectoryPath" : null, "description" : "Close all tabs to the right side of the currently active tab.", "filename" : "safari-close-tabs-right.applescript", @@ -17767,7 +17795,7 @@ "dark" : null, "light" : "images\/safari.png" }, - "identifier" : "723f7798053edadfeb982265f283b4c2", + "identifier" : "779e79e3334dca627507dc1737a1cf27", "isTemplate" : false, "language" : "applescript", "mode" : "silent", @@ -17777,7 +17805,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Close Tabs to the Right", - "updatedAt" : "2021-03-09T15:09:02+00:00" + "updatedAt" : "2021-03-09T15:09:02Z" }, { "authors" : [ @@ -17786,7 +17814,7 @@ "url" : "https:\/\/github.com\/thomaspaulmann" } ], - "createdAt" : "2021-03-09T15:09:02+00:00", + "createdAt" : "2021-03-09T15:09:02Z", "currentDirectoryPath" : null, "description" : "Close all tabs to the left side of the currently active tab.", "filename" : "safari-close-tabs-left.applescript", @@ -17795,7 +17823,7 @@ "dark" : null, "light" : "images\/safari.png" }, - "identifier" : "6d6cf490c73838f02f2054fcfb4d3786", + "identifier" : "98ee4a51212c322cf544c0e756ca3383", "isTemplate" : false, "language" : "applescript", "mode" : "silent", @@ -17805,7 +17833,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Close Tabs to the Left", - "updatedAt" : "2021-03-09T15:09:02+00:00" + "updatedAt" : "2021-03-09T15:09:02Z" }, { "authors" : [ @@ -17814,7 +17842,7 @@ "url" : "https:\/\/github.com\/thomaspaulmann" } ], - "createdAt" : "2021-03-09T15:09:02+00:00", + "createdAt" : "2021-03-09T15:09:02Z", "currentDirectoryPath" : null, "description" : "Duplicates and opens the currently active tab.", "filename" : "safari-duplicate-tab.applescript", @@ -17823,7 +17851,7 @@ "dark" : null, "light" : "images\/safari.png" }, - "identifier" : "e0be5f0e55412e5eaab09144dfb2aa6e", + "identifier" : "6727e9a045a860d1a726af83df1b9df3", "isTemplate" : false, "language" : "applescript", "mode" : "silent", @@ -17833,7 +17861,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Duplicate Tab", - "updatedAt" : "2021-03-09T15:09:02+00:00" + "updatedAt" : "2021-03-09T15:09:02Z" }, { "authors" : [ @@ -17842,7 +17870,7 @@ "url" : "https:\/\/github.com\/thomaspaulmann" } ], - "createdAt" : "2021-03-09T15:09:02+00:00", + "createdAt" : "2021-03-09T15:09:02Z", "currentDirectoryPath" : null, "description" : "Close all tabs in the frontmost window", "filename" : "safari-close-all-tabs.applescript", @@ -17851,7 +17879,7 @@ "dark" : null, "light" : "images\/safari.png" }, - "identifier" : "abb41453f8b816095fb4bada2a14927a", + "identifier" : "1cd7846276f766bc2b17a7a99bed645a", "isTemplate" : false, "language" : "applescript", "mode" : "silent", @@ -17861,7 +17889,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Close All Tabs", - "updatedAt" : "2021-03-09T15:09:02+00:00" + "updatedAt" : "2021-03-09T15:09:02Z" }, { "authors" : [ @@ -18869,7 +18897,7 @@ "url" : "https:\/\/twitter.com\/culturedcode\/" } ], - "createdAt" : "2021-03-03T19:17:44+00:00", + "createdAt" : "2021-03-03T19:17:44Z", "currentDirectoryPath" : null, "description" : "Get an overview of your completed tasks for today.", "filename" : "things-today.applescript", @@ -18878,7 +18906,7 @@ "dark" : null, "light" : "images\/things.png" }, - "identifier" : "9684467fd87bbb68d852c1ef118e4322", + "identifier" : "f5c008fbbafb56d3dd35483b209357f5", "isTemplate" : false, "language" : "applescript", "mode" : "inline", @@ -18888,7 +18916,7 @@ "refreshTime" : "1m", "schemaVersion" : 1, "title" : "Today", - "updatedAt" : "2021-03-03T19:17:44+00:00" + "updatedAt" : "2021-03-03T19:17:44Z" }, { "authors" : [ @@ -18897,7 +18925,7 @@ "url" : "https:\/\/twitter.com\/culturedcode\/" } ], - "createdAt" : "2021-03-03T19:17:44+00:00", + "createdAt" : "2021-03-03T19:17:44Z", "currentDirectoryPath" : null, "description" : "Search To-Dos with a query.", "filename" : "things-search-to-dos.sh", @@ -18906,7 +18934,7 @@ "dark" : null, "light" : "images\/things.png" }, - "identifier" : "8194ae91b888f4b868d50bade0f9c6af", + "identifier" : "81182c169dbbf72ba9dfbbfea713275b", "isTemplate" : false, "language" : "bash", "mode" : "silent", @@ -18916,7 +18944,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Search To-Dos", - "updatedAt" : "2021-03-03T19:17:44+00:00" + "updatedAt" : "2021-03-03T19:17:44Z" }, { "authors" : [ @@ -18925,7 +18953,7 @@ "url" : "https:\/\/twitter.com\/culturedcode\/" } ], - "createdAt" : "2021-03-03T19:17:44+00:00", + "createdAt" : "2021-03-03T19:17:44Z", "currentDirectoryPath" : null, "description" : "Create a new To-Do with title and optional deadline.", "filename" : "things-create-todo.sh", @@ -18934,7 +18962,7 @@ "dark" : null, "light" : "images\/things.png" }, - "identifier" : "5ac2c380166460ade602f0c1e96df290", + "identifier" : "f5ae3372a366a985c4a630f8f3412f83", "isTemplate" : false, "language" : "bash", "mode" : "silent", @@ -18953,7 +18981,7 @@ "url" : "https:\/\/twitter.com\/culturedcode\/" } ], - "createdAt" : "2021-03-03T19:17:44+00:00", + "createdAt" : "2021-03-03T19:17:44Z", "currentDirectoryPath" : null, "description" : "Show your current To-Do to stay focused.", "filename" : "things-current-todo.applescript", @@ -18962,7 +18990,7 @@ "dark" : null, "light" : "images\/things.png" }, - "identifier" : "5ce51f66aa4c3798e7dcd06dd8199c12", + "identifier" : "7a61aa9d34f92172b970cf9ff88113af", "isTemplate" : false, "language" : "applescript", "mode" : "inline", @@ -18972,7 +19000,7 @@ "refreshTime" : "1m", "schemaVersion" : 1, "title" : "Current To-Do", - "updatedAt" : "2021-03-03T19:17:44+00:00" + "updatedAt" : "2021-03-03T19:17:44Z" } ] }, @@ -19006,7 +19034,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "chatgpt", - "updatedAt" : "2023-06-05T07:04:09+00:00" + "updatedAt" : "2023-06-05T07:04:09Z" } ] }, @@ -19040,7 +19068,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Create Card", - "updatedAt" : "2021-08-12T07:51:38+00:00" + "updatedAt" : "2021-08-12T07:51:38Z" } ] }, @@ -19469,7 +19497,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Add Reminder", - "updatedAt" : "2022-02-07T02:10:02+00:00" + "updatedAt" : "2022-02-07T02:10:02Z" } ] }, @@ -20461,7 +20489,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Enable Espanso", - "updatedAt" : "2021-05-14T16:44:53+00:00" + "updatedAt" : "2021-05-14T16:44:53Z" }, { "authors" : [ @@ -20517,7 +20545,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Start Espanso", - "updatedAt" : "2021-05-14T16:44:53+00:00" + "updatedAt" : "2021-05-14T16:44:53Z" }, { "authors" : [ @@ -20545,7 +20573,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Disable Espanso", - "updatedAt" : "2021-05-14T16:44:53+00:00" + "updatedAt" : "2021-05-14T16:44:53Z" }, { "authors" : [ @@ -20573,7 +20601,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Restart Espanso", - "updatedAt" : "2021-05-14T16:44:53+00:00" + "updatedAt" : "2021-05-14T16:44:53Z" }, { "authors" : [ @@ -20601,7 +20629,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Stop Espanso", - "updatedAt" : "2021-05-14T16:44:53+00:00" + "updatedAt" : "2021-05-14T16:44:53Z" } ] }, @@ -21958,7 +21986,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Set Volume", - "updatedAt" : "2020-12-11T00:15:58+00:00" + "updatedAt" : "2020-12-11T00:15:58Z" }, { "authors" : [ @@ -22051,7 +22079,7 @@ "url" : "https:\/\/github.com\/mmerle" } ], - "createdAt" : "2020-11-30T12:52:41+00:00", + "createdAt" : "2020-11-30T12:52:41Z", "currentDirectoryPath" : null, "description" : "Show currently playing track in Music.", "filename" : "apple-music-current-track.applescript", @@ -22060,7 +22088,7 @@ "dark" : null, "light" : "images\/apple-music-logo.png" }, - "identifier" : "1ce69e81108a71dc7ebdbe58cb8892eb", + "identifier" : "41db4193526a667ad73d8742fc72d7de", "isTemplate" : false, "language" : "applescript", "mode" : "inline", @@ -22867,7 +22895,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Next Track", - "updatedAt" : "2020-12-08T15:56:35+00:00" + "updatedAt" : "2020-12-08T15:56:35Z" }, { "authors" : null, @@ -22890,7 +22918,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Toggle Play\/Pause", - "updatedAt" : "2020-12-08T15:56:35+00:00" + "updatedAt" : "2020-12-08T15:56:35Z" }, { "authors" : [ @@ -22955,7 +22983,7 @@ "url" : "https:\/\/github.com\/thomaspaulmann" } ], - "createdAt" : "2021-01-26T20:54:37+00:00", + "createdAt" : "2021-01-26T20:54:37Z", "currentDirectoryPath" : null, "description" : "Play playlist or track in Spotify.", "filename" : "spotify-play-playlist.template.applescript", @@ -22964,7 +22992,7 @@ "dark" : null, "light" : "images\/spotify-logo.png" }, - "identifier" : "faad4bf6558229aa4c10be54368a4c18", + "identifier" : "8e28e54269f27849b00b363c8a0271be", "isTemplate" : true, "language" : "applescript", "mode" : "silent", @@ -22974,7 +23002,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Play Track or Playlist", - "updatedAt" : "2021-01-26T20:55:11+00:00" + "updatedAt" : "2021-01-26T20:55:11Z" }, { "authors" : null, @@ -22997,7 +23025,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Play", - "updatedAt" : "2020-12-08T15:56:35+00:00" + "updatedAt" : "2020-12-08T15:56:35Z" }, { "authors" : [ @@ -23006,7 +23034,7 @@ "url" : "https:\/\/github.com\/thomaspaulmann" } ], - "createdAt" : "2020-11-30T12:52:41+00:00", + "createdAt" : "2020-11-30T12:52:41Z", "currentDirectoryPath" : null, "description" : "Show currently playing track in Spotify.", "filename" : "spotify-current-track.applescript", @@ -23015,7 +23043,7 @@ "dark" : null, "light" : "images\/spotify-logo.png" }, - "identifier" : "94fcb3923a4b45346a924803c2b36f3f", + "identifier" : "2eb202dd044979361f9d435198280920", "isTemplate" : false, "language" : "applescript", "mode" : "inline", @@ -23025,7 +23053,7 @@ "refreshTime" : "30s", "schemaVersion" : 1, "title" : "Current Track", - "updatedAt" : "2020-11-30T12:52:41+00:00" + "updatedAt" : "2020-11-30T12:52:41Z" }, { "authors" : null, @@ -23048,7 +23076,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Previous Track", - "updatedAt" : "2020-12-08T15:56:35+00:00" + "updatedAt" : "2020-12-08T15:56:35Z" }, { "authors" : null, @@ -23071,7 +23099,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Pause", - "updatedAt" : "2020-12-08T15:56:35+00:00" + "updatedAt" : "2020-12-08T15:56:35Z" } ] }, @@ -23195,7 +23223,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Set Volume", - "updatedAt" : "2020-12-11T00:16:06+00:00" + "updatedAt" : "2020-12-11T00:16:06Z" }, { "authors" : [ @@ -23441,7 +23469,7 @@ "url" : "https:\/\/github.com\/charlesharries" } ], - "createdAt" : "2022-02-01T13:37:24+00:00", + "createdAt" : "2022-02-01T13:37:24Z", "currentDirectoryPath" : null, "description" : "Play the current track in Tidal.", "filename" : "tidal-play.applescript", @@ -23450,7 +23478,7 @@ "dark" : null, "light" : "images\/tidal-logo.png" }, - "identifier" : "370fa0d9f88c538e191fa5c4df615aed", + "identifier" : "2ea9c044515312cbf87dac8fb5e0c92a", "isTemplate" : false, "language" : "applescript", "mode" : "silent", @@ -23460,7 +23488,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Play", - "updatedAt" : "2022-02-01T13:37:24+00:00" + "updatedAt" : "2022-02-01T13:37:24Z" }, { "authors" : [ @@ -23469,7 +23497,7 @@ "url" : "https:\/\/github.com\/charlesharries" } ], - "createdAt" : "2022-02-01T13:37:24+00:00", + "createdAt" : "2022-02-01T13:37:24Z", "currentDirectoryPath" : null, "description" : "Skip to the next track in Tidal.", "filename" : "tidal-next-track.applescript", @@ -23478,7 +23506,7 @@ "dark" : null, "light" : "images\/tidal-logo.png" }, - "identifier" : "9206bc623c13a1861d1ea4f872c8fbee", + "identifier" : "aac66a366cec215c8594f02cf425bcb0", "isTemplate" : false, "language" : "applescript", "mode" : "silent", @@ -23488,7 +23516,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Next Track", - "updatedAt" : "2022-02-01T14:38:40+00:00" + "updatedAt" : "2022-02-01T14:38:40Z" }, { "authors" : [ @@ -23497,7 +23525,7 @@ "url" : "https:\/\/github.com\/charlesharries" } ], - "createdAt" : "2022-02-01T13:37:24+00:00", + "createdAt" : "2022-02-01T13:37:24Z", "currentDirectoryPath" : null, "description" : "Pause the current track in Tidal.", "filename" : "tidal-pause.applescript", @@ -23506,7 +23534,7 @@ "dark" : null, "light" : "images\/tidal-logo.png" }, - "identifier" : "1e045340ac4a21b2cf81a4bf59b3984e", + "identifier" : "58a1d13baec2c61c0a7ee815126b4fd9", "isTemplate" : false, "language" : "applescript", "mode" : "silent", @@ -23516,7 +23544,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Pause", - "updatedAt" : "2022-02-01T13:37:24+00:00" + "updatedAt" : "2022-02-01T13:37:24Z" }, { "authors" : [ @@ -23525,7 +23553,7 @@ "url" : "https:\/\/github.com\/charlesharries" } ], - "createdAt" : "2022-02-01T13:37:24+00:00", + "createdAt" : "2022-02-01T13:37:24Z", "currentDirectoryPath" : null, "description" : "Skip back to the previous track in Tidal.", "filename" : "tidal-previous-track.applescript", @@ -23534,7 +23562,7 @@ "dark" : null, "light" : "images\/tidal-logo.png" }, - "identifier" : "756f25af8641456ee9d6c6b14146f1dd", + "identifier" : "2a30f2daec4a4df68c4f0dae82c0e6ba", "isTemplate" : false, "language" : "applescript", "mode" : "silent", @@ -23544,7 +23572,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Previous Track", - "updatedAt" : "2022-02-01T14:38:40+00:00" + "updatedAt" : "2022-02-01T14:38:40Z" }, { "authors" : [ @@ -23572,7 +23600,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Toggle Play\/Pause", - "updatedAt" : "2022-09-13T08:16:43+00:00" + "updatedAt" : "2022-09-13T08:16:43Z" } ] } @@ -23580,40 +23608,40 @@ } ], "languages" : [ - { - "displayName" : "Swift", - "icon" : "icon-swift.png", - "name" : "swift" - }, - { - "displayName" : "Ruby", - "icon" : "icon-ruby.png", - "name" : "ruby" - }, { "displayName" : "Node", "icon" : "icon-nodejs.png", "name" : "node" }, - { - "displayName" : "AppleScript", - "icon" : "icon-applescript.png", - "name" : "applescript" - }, { "displayName" : "Python", "icon" : "icon-python.png", "name" : "python" }, + { + "displayName" : "Ruby", + "icon" : "icon-ruby.png", + "name" : "ruby" + }, { "displayName" : "Bash", "icon" : "icon-bash.png", "name" : "bash" + }, + { + "displayName" : "Swift", + "icon" : "icon-swift.png", + "name" : "swift" + }, + { + "displayName" : "AppleScript", + "icon" : "icon-applescript.png", + "name" : "applescript" } ], "metadata" : [ ], - "totalScriptCommands" : 820, - "updatedAt" : "2024-04-26T16:12:33Z" + "totalScriptCommands" : 821, + "updatedAt" : "2024-05-21T08:24:56Z" } \ No newline at end of file From ce3821962544cce0b255cf4b9e217279b424ce22 Mon Sep 17 00:00:00 2001 From: X Chen Date: Thu, 23 May 2024 03:31:30 -0400 Subject: [PATCH 052/146] Script for open a iterm window with a specific profile (#938) * Create iterm-open-profile-in-new-window.applescript * Update title/packageName --- ...erm-open-profile-in-new-window.applescript | 34 +++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 commands/apps/iterm/iterm-open-profile-in-new-window.applescript diff --git a/commands/apps/iterm/iterm-open-profile-in-new-window.applescript b/commands/apps/iterm/iterm-open-profile-in-new-window.applescript new file mode 100644 index 000000000..6ef8fd3b7 --- /dev/null +++ b/commands/apps/iterm/iterm-open-profile-in-new-window.applescript @@ -0,0 +1,34 @@ +#!/usr/bin/osascript + +# Dependency: requires iTerm (https://iterm2.com) +# Install via Homebrew: `brew install --cask iterm2` + +# Required parameters: +# @raycast.schemaVersion 1 +# @raycast.title Open profile +# @raycast.packageName iTerm +# @raycast.mode silent + +# Optional parameters: +# @raycast.icon 🤖 +# @raycast.argument1 { "type": "text", "placeholder": "Placeholder" } + +# Documentation: +# @raycast.author sunrisewestern +# @raycast.authorURL https://github.com/sunrisewestern + +on is_running(appName) + tell application "System Events" to (name of processes) contains appName +end is_running + +on run {argv} + set iTermRunning to is_running("iTerm2") + tell application "iTerm" + activate + if not (iTermRunning) then + delay 0.5 + close the current window + end if + create window with profile argv + end tell +end run From 04ab6fce187a7376b886044489754902d5d4b340 Mon Sep 17 00:00:00 2001 From: Raycast Bot Date: Thu, 23 May 2024 07:33:06 +0000 Subject: [PATCH 053/146] Set scripts as executable --- commands/apps/iterm/iterm-open-profile-in-new-window.applescript | 0 1 file changed, 0 insertions(+), 0 deletions(-) mode change 100644 => 100755 commands/apps/iterm/iterm-open-profile-in-new-window.applescript diff --git a/commands/apps/iterm/iterm-open-profile-in-new-window.applescript b/commands/apps/iterm/iterm-open-profile-in-new-window.applescript old mode 100644 new mode 100755 From f659757fd1e32e238a6fad3bb9bf8eba1d9df5aa Mon Sep 17 00:00:00 2001 From: Raycast Bot Date: Thu, 23 May 2024 07:34:00 +0000 Subject: [PATCH 054/146] Update Script Commands documentation --- commands/README.md | 1 + commands/extensions.json | 48 +++++++++++++++++++++++++++++++--------- 2 files changed, 39 insertions(+), 10 deletions(-) diff --git a/commands/README.md b/commands/README.md index 7c9232439..3bddfda97 100644 --- a/commands/README.md +++ b/commands/README.md @@ -711,6 +711,7 @@ This repository contains sample commands and documentation to write your own one | Icon | Title | Description | Author | Args | Templ | Lang | | :--: | ----- | ----------- | :----: | :--: | :---: | :--: | + | 🤖 | [Open profile](apps/iterm/iterm-open-profile-in-new-window.applescript) | N/A | [sunrisewestern](https://github.com/sunrisewestern) | ✅ | | | | | [Run Shell Command](apps/iterm/iterm-run-shell-command.applescript) | N/A | [Andrei Borisov](https://github.com/andreiborisov) | ✅ | | | #### iconsur diff --git a/commands/extensions.json b/commands/extensions.json index ad8b0366e..86c81f55f 100644 --- a/commands/extensions.json +++ b/commands/extensions.json @@ -14201,6 +14201,34 @@ "schemaVersion" : 1, "title" : "Run Shell Command", "updatedAt" : "2021-02-02T11:58:56+03:00" + }, + { + "authors" : [ + { + "name" : "sunrisewestern", + "url" : "https:\/\/github.com\/sunrisewestern" + } + ], + "createdAt" : "2024-05-23T03:31:30-04:00", + "currentDirectoryPath" : null, + "description" : null, + "filename" : "iterm-open-profile-in-new-window.applescript", + "hasArguments" : true, + "icon" : { + "dark" : null, + "light" : "🤖" + }, + "identifier" : "c3e9bc8ec6236fd9d214785417f4c420", + "isTemplate" : false, + "language" : "applescript", + "mode" : "silent", + "needsConfirmation" : null, + "packageName" : "iTerm", + "path" : "apps\/iterm\/", + "refreshTime" : null, + "schemaVersion" : 1, + "title" : "Open profile", + "updatedAt" : "2024-05-23T07:33:06Z" } ] }, @@ -23619,29 +23647,29 @@ "name" : "python" }, { - "displayName" : "Ruby", - "icon" : "icon-ruby.png", - "name" : "ruby" + "displayName" : "Swift", + "icon" : "icon-swift.png", + "name" : "swift" }, { "displayName" : "Bash", "icon" : "icon-bash.png", "name" : "bash" }, - { - "displayName" : "Swift", - "icon" : "icon-swift.png", - "name" : "swift" - }, { "displayName" : "AppleScript", "icon" : "icon-applescript.png", "name" : "applescript" + }, + { + "displayName" : "Ruby", + "icon" : "icon-ruby.png", + "name" : "ruby" } ], "metadata" : [ ], - "totalScriptCommands" : 821, - "updatedAt" : "2024-05-21T08:24:56Z" + "totalScriptCommands" : 822, + "updatedAt" : "2024-05-23T07:33:06Z" } \ No newline at end of file From 572f55391d456d0411e9b11b1e35a09f5049a000 Mon Sep 17 00:00:00 2001 From: Chris Date: Fri, 14 Jun 2024 14:31:44 +0200 Subject: [PATCH 055/146] [script] amazon s3 download script (#942) * amazon s3 download script * check exit code directly * add image --- .../developer-utils/aws/amazon-s3-download.sh | 89 ++++++++++++++++++ .../developer-utils/aws/images/amazon-s3.png | Bin 0 -> 2770 bytes 2 files changed, 89 insertions(+) create mode 100644 commands/developer-utils/aws/amazon-s3-download.sh create mode 100644 commands/developer-utils/aws/images/amazon-s3.png diff --git a/commands/developer-utils/aws/amazon-s3-download.sh b/commands/developer-utils/aws/amazon-s3-download.sh new file mode 100644 index 000000000..502a9529c --- /dev/null +++ b/commands/developer-utils/aws/amazon-s3-download.sh @@ -0,0 +1,89 @@ +#!/bin/bash + +# Required parameters: +# @raycast.schemaVersion 1 +# @raycast.title S3 Download +# @raycast.mode fullOutput + +# Optional parameters: +# @raycast.icon images/amazon-s3.png +# @raycast.packageName AWS + +# Documentation: +# @raycast.description Download from Amazon S3 via URL +# @raycast.argument1 { "type": "text", "placeholder": "S3 URL" } +# @raycast.author Chris Cook +# @raycast.authorURL https://github.com/zirkelc + +URL=$1 + +# Ensure AWS CLI is installed +if ! command -v aws &> /dev/null; then + echo "AWS CLI not found. Please install AWS CLI." + echo "Installation instructions: https://docs.aws.amazon.com/cli/latest/userguide/install-cliv2.html" + exit 1 +fi + +# Try matching different S3 URL patterns +# https://dev.to/aws-builders/format-and-parse-amazon-s3-url-5e10 +if [[ $URL =~ ^https?://s3\.([a-z0-9-]+)\.amazonaws\.com/([^/]+)/(.*)$ ]]; then + # Regional hostname with path-style + BUCKET="${BASH_REMATCH[2]}" + KEY="${BASH_REMATCH[3]}" +elif [[ $URL =~ ^https?://([^/]+)\.s3\.([a-z0-9-]+)\.amazonaws\.com/(.*)$ ]]; then + # Regional hostname with virtual-hosted-style + BUCKET="${BASH_REMATCH[1]}" + KEY="${BASH_REMATCH[3]}" +elif [[ $URL =~ ^https?://s3\.amazonaws\.com/([^/]+)/(.*)$ ]]; then + # Legacy hostname with path-style + BUCKET="${BASH_REMATCH[1]}" + KEY="${BASH_REMATCH[2]}" +elif [[ $URL =~ ^https?://([^/]+)\.s3\.amazonaws\.com/(.*)$ ]]; then + # Legacy hostname with virtual-hosted-style + BUCKET="${BASH_REMATCH[1]}" + KEY="${BASH_REMATCH[2]}" +elif [[ $URL =~ ^s3://([^/]+)/(.*)$ ]]; then + # S3 URI + BUCKET="${BASH_REMATCH[1]}" + KEY="${BASH_REMATCH[2]}" +else + echo "Invalid URL: $URL" + echo "URL must match recognized S3 patterns." + exit 1 +fi + +# Check for empty bucket or key +if [[ -z "$BUCKET" || -z "$KEY" ]]; then + echo "Error extracting bucket and key from URL: $URL" + exit 1 +fi + +# Remove trailing slash if present and set recursive download flag +RECURSIVE="" +if [[ "$KEY" =~ .*/$ ]]; then + KEY="${KEY%/}" # Remove trailing slash for directory key + RECURSIVE="--recursive" +fi + +# Set download path +DOWNLOAD_FOLDER="$HOME/Downloads" +DOWNLOAD_PATH="$DOWNLOAD_FOLDER/$KEY" + +if [[ -n "$RECURSIVE" ]]; then + echo "Downloading directory $URL to $DOWNLOAD_PATH..." +else + echo "Downloading file $URL to $DOWNLOAD_PATH..." +fi + +# Print bucket and key +echo "Bucket: $BUCKET" +echo "Key: $KEY" + +# Use recursive if necessary +if aws s3 cp "s3://$BUCKET/$KEY" "$DOWNLOAD_PATH" $RECURSIVE; then + echo "Downloaded successfully." + open "$DOWNLOAD_FOLDER" +else + echo "Download failed." + exit 1 +fi diff --git a/commands/developer-utils/aws/images/amazon-s3.png b/commands/developer-utils/aws/images/amazon-s3.png new file mode 100644 index 0000000000000000000000000000000000000000..1dbadf37acaf479a4a38587b45736f6c74a3355f GIT binary patch literal 2770 zcmV;@3N7`CP)Px#L}ge>W=%~1DgXcg2mk?xX#fNO00031000^Q000001E2u_0{{R30RRC20H6W@ z1ONa40RR91P@n?<1ONa40RR91Pyhe`05RZ9PXGW4JV``BRCodHTYF5K*A)kB1Aag7 zgQv~=O~{K9XtFHL(w4MAZPIP6v}J44r>5+|)!=bYa?=ic+Um*k%v z(jQ!ldspg|32=(D14$xyKsrI}HnCu0V0BN~bJQ z$#T^)qgtA$lI2O#)Tu&=NGM4aibVpkP>>c_nD;Mud;yO?Fy{-*&CSo)UBff(;ThME z-8C{b+w1Y!V=fpW7#qM@>ME1IK3BIjPrEfkQJ9>R99>)ykPF3eHkUc5H`nmoybX=Z z%Je|7P%o4WRRi=lS57Z$)G zLHd@WZ|+=H$J~!vufh(Qg@`f`9CNgrVMm(^o>WP5 z(G&J^`pO#@ZvL5#BL!fkB>U?-|4@+G2(E*cw$`qrH-=kyDl-by6+c1k6?u<7Sosn* z3;Z-N(fW^b-gc=N|M%>Snq2Kxl{DwN z`4kl+u7O8s&O@Mk;_S=wekT=!_2>*4APFcFsi;_R1?=|PKo=f}iu(F>t~54*IFX8q z3s=B4*C6ON*S}F;_FXCl>(Lo9G}r$Ml&75owDdUxb`F9x0tRrx?p2oaHCj$F=?}i( z4jCW`2-@fYa}6zR%Ya9xzk~;dV>rC`Z`eGp4W7iF5r;i2Q(akQdc4Nej3^yA;r|hS zXKQM#j$5?z$QAJPGGM32a6Qkyhaz(m6t@_ai%qaC#=YM^1N|PxXzR zApur~yb!+@9t6*L@HJCY1w9yb+jF$FYMBYaNhrqVB0yl^y*BtSlv;I)5+orgT{o0J-%x%eSG(nz-R~fZIN$xw#opt0Eimv|z>tb-iH88l z$*48y9~ie?8?>}Xgml+N;KABMM2%-)vbC-Ij}FfS;%9g}7Z&M=0^QO?(rVKI9CY-JpFxzm7QEH%bbzs4Z7KQ&v~;=u#A;eRT9%Mqp~8+5 zHx{!_S&Z}p2{0-f(sV6M!0nw55r3%mN65)P>-dd9RhFr)sx3G;IC&oFRH#Gr7dpU6 zNlT3tFQ%jjzUX>8I$gG3;Rw1%K7ySi8i&!s&Q1Ed9c9l}8y^>^DS_PUcQ$Q*9VyDO zkDtbZ&(c(7X{xJCk97|H+vA(%!julM&+pn@^8@Jl?DaQS8ygpXT>8M6v8&;1p=ab{ z~jbP8ll6e%$gDC4_XGY?|OoUo!f53yV z28@+=ZXz)ArX5HYFvIamI3sGn7`#!-nEwKX@GO8gYNICgeZoClX;kklfHzpf^ap6+ zGr|ry{u}j%ne>Ke7>8ISykjdzhm_2s;oECimLH-LhZlu33$ZlLw~!?9VaEa(fh*$m z^i&0Ijq>45HTJeW^IO2+$O0I{;=fVHWC61Sj{h>&@HkHjHzh_56TtD@sI|9`{Mpk6 z0-GOTMN#YxrHlj>8 z4cxo=$K>|T^ml;>P$mJ!Ue=h9Wk_gw9MEFMlp#*g) zxx^qB8?XiHRb_f*S%?$};(q<5zT@pZe_}f;4B-sD@C8f=A@0l0s4dTXIA33%t=WW_ zB*cK>1!s%F+e(&p9OwWr1BECvFB=k)p=h}gV72hI~vl!L3obw=DKM2#-Wou!BZaBqwa;BbBb59h(( ze}vPF;X9*SilGE?CY1mj=LwHHyM%`0KIL&{n9y*XCp_-#5*m*Cl*gH2Lc?*M@VK-4 YAH-jdjoM;>MgRZ+07*qoM6N<$f?;$QMF0Q* literal 0 HcmV?d00001 From de305ec9389ab7f9f5d5d0c9e9926863d98466a3 Mon Sep 17 00:00:00 2001 From: Raycast Bot Date: Fri, 14 Jun 2024 12:34:01 +0000 Subject: [PATCH 056/146] Set scripts as executable --- commands/developer-utils/aws/amazon-s3-download.sh | 0 1 file changed, 0 insertions(+), 0 deletions(-) mode change 100644 => 100755 commands/developer-utils/aws/amazon-s3-download.sh diff --git a/commands/developer-utils/aws/amazon-s3-download.sh b/commands/developer-utils/aws/amazon-s3-download.sh old mode 100644 new mode 100755 From 40ebc89587d824c87ee47a7767494322ce7236da Mon Sep 17 00:00:00 2001 From: Raycast Bot Date: Fri, 14 Jun 2024 12:35:15 +0000 Subject: [PATCH 057/146] Update Script Commands documentation --- commands/README.md | 1 + commands/extensions.json | 60 +++++++++++++++++++++++++++++----------- 2 files changed, 45 insertions(+), 16 deletions(-) diff --git a/commands/README.md b/commands/README.md index 3bddfda97..d3975184f 100644 --- a/commands/README.md +++ b/commands/README.md @@ -1000,6 +1000,7 @@ This repository contains sample commands and documentation to write your own one | Icon | Title | Description | Author | Args | Templ | Lang | | :--: | ----- | ----------- | :----: | :--: | :---: | :--: | | 🤖 | [Find AWS Region by IP](developer-utils/aws/whatismyregion.sh) | Copies the AWS IPv4 to the clipboard. | [Oğuzhan Yılmaz](https://github.com/c1982) | | | | + | | [S3 Download](developer-utils/aws/amazon-s3-download.sh) | Download from Amazon S3 via URL | [Chris Cook](https://github.com/zirkelc) | ✅ | | | | | [Single Sign-On](developer-utils/aws/aws-sso-util.sh) | Login to AWS using aws-sso-util | [David Molinero](https://github.com/doktor500) | | | | #### Brew diff --git a/commands/extensions.json b/commands/extensions.json index 86c81f55f..416dd2f39 100644 --- a/commands/extensions.json +++ b/commands/extensions.json @@ -10577,6 +10577,34 @@ "name" : "Aws", "path" : "aws", "scriptCommands" : [ + { + "authors" : [ + { + "name" : "Chris Cook", + "url" : "https:\/\/github.com\/zirkelc" + } + ], + "createdAt" : "2024-06-14T14:31:44+02:00", + "currentDirectoryPath" : null, + "description" : "Download from Amazon S3 via URL", + "filename" : "amazon-s3-download.sh", + "hasArguments" : true, + "icon" : { + "dark" : null, + "light" : "images\/amazon-s3.png" + }, + "identifier" : "b4dd5f3fe1c6dd1b9b44fc9f0fe88364", + "isTemplate" : false, + "language" : "bash", + "mode" : "fullOutput", + "needsConfirmation" : null, + "packageName" : "AWS", + "path" : "developer-utils\/aws\/", + "refreshTime" : null, + "schemaVersion" : 1, + "title" : "S3 Download", + "updatedAt" : "2024-06-14T12:34:01Z" + }, { "authors" : [ { @@ -23637,39 +23665,39 @@ ], "languages" : [ { - "displayName" : "Node", - "icon" : "icon-nodejs.png", - "name" : "node" + "displayName" : "Ruby", + "icon" : "icon-ruby.png", + "name" : "ruby" }, { - "displayName" : "Python", - "icon" : "icon-python.png", - "name" : "python" + "displayName" : "Bash", + "icon" : "icon-bash.png", + "name" : "bash" }, { "displayName" : "Swift", "icon" : "icon-swift.png", "name" : "swift" }, - { - "displayName" : "Bash", - "icon" : "icon-bash.png", - "name" : "bash" - }, { "displayName" : "AppleScript", "icon" : "icon-applescript.png", "name" : "applescript" }, { - "displayName" : "Ruby", - "icon" : "icon-ruby.png", - "name" : "ruby" + "displayName" : "Node", + "icon" : "icon-nodejs.png", + "name" : "node" + }, + { + "displayName" : "Python", + "icon" : "icon-python.png", + "name" : "python" } ], "metadata" : [ ], - "totalScriptCommands" : 822, - "updatedAt" : "2024-05-23T07:33:06Z" + "totalScriptCommands" : 823, + "updatedAt" : "2024-06-14T12:34:01Z" } \ No newline at end of file From 58b1f657fa0d19b65f4dad0c33f11e0f4206aa9c Mon Sep 17 00:00:00 2001 From: siva Date: Sat, 22 Jun 2024 16:19:22 +0900 Subject: [PATCH 058/146] Fix: ocr command by updating recognitionlangues params MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit To recognize traditional and simplified Chinese, specify zh-Hant and zh-Hans as the first elements in the request’s recognitionLanguages property. English is the only other language that you can pair with Chinese. https://developer.apple.com/documentation/vision/original_objective-c_and_swift_api/recognizing_text_in_images --- commands/system/ocr.swift | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/commands/system/ocr.swift b/commands/system/ocr.swift index 2b8d37df4..cb22349e7 100755 --- a/commands/system/ocr.swift +++ b/commands/system/ocr.swift @@ -21,7 +21,7 @@ import Cocoa import Vision let screenCapturePath = "/tmp/ocr.png" -let recognitionLanguages = ["en-US", "zh-CN"] +let recognitionLanguages = ["zh-Hans", "en-US"] let joiner = " " @discardableResult From 2a01cbdf76b86b209c660d33d5a0d7e2b2418d43 Mon Sep 17 00:00:00 2001 From: Danny Date: Sat, 22 Jun 2024 16:34:40 -0700 Subject: [PATCH 059/146] Remove superfluous period from all script template renaming instructions --- templates/script-command.template.applescript | 2 +- templates/script-command.template.php | 2 +- templates/script-command.template.py | 2 +- templates/script-command.template.rb | 2 +- templates/script-command.template.sh | 2 +- templates/script-command.template.swift | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) diff --git a/templates/script-command.template.applescript b/templates/script-command.template.applescript index 392ac4f61..fe98b9c3a 100644 --- a/templates/script-command.template.applescript +++ b/templates/script-command.template.applescript @@ -2,7 +2,7 @@ # Raycast Script Command Template # -# Duplicate this file and remove ".template." from the filename to get started. +# Duplicate this file and remove ".template" from the filename to get started. # See full documentation here: https://github.com/raycast/script-commands # # Required parameters: diff --git a/templates/script-command.template.php b/templates/script-command.template.php index 99e524e0a..7d946f971 100644 --- a/templates/script-command.template.php +++ b/templates/script-command.template.php @@ -5,7 +5,7 @@ # Dependency: This script requires PHP # Install PHP: http://www.https://www.php.net/ # -# Duplicate this file and remove ".template." from the filename to get started. +# Duplicate this file and remove ".template" from the filename to get started. # See full documentation here: https://github.com/raycast/script-commands # # Required parameters: diff --git a/templates/script-command.template.py b/templates/script-command.template.py index 5b2ad7760..e91e99e6d 100755 --- a/templates/script-command.template.py +++ b/templates/script-command.template.py @@ -5,7 +5,7 @@ # Dependency: This script requires Python 3 # Install Python 3: https://www.python.org/downloads/release # -# Duplicate this file and remove ".template." from the filename to get started. +# Duplicate this file and remove ".template" from the filename to get started. # See full documentation here: https://github.com/raycast/script-commands # # Required parameters: diff --git a/templates/script-command.template.rb b/templates/script-command.template.rb index 125f8ac70..8638b88f1 100755 --- a/templates/script-command.template.rb +++ b/templates/script-command.template.rb @@ -5,7 +5,7 @@ # Dependency: This script requires Ruby # Install Ruby: http://www.ruby-lang.org/ # -# Duplicate this file and remove ".template." from the filename to get started. +# Duplicate this file and remove ".template" from the filename to get started. # See full documentation here: https://github.com/raycast/script-commands # # Required parameters: diff --git a/templates/script-command.template.sh b/templates/script-command.template.sh index e9b58a871..14be6c7ba 100755 --- a/templates/script-command.template.sh +++ b/templates/script-command.template.sh @@ -2,7 +2,7 @@ # Raycast Script Command Template # -# Duplicate this file and remove ".template." from the filename to get started. +# Duplicate this file and remove ".template" from the filename to get started. # See full documentation here: https://github.com/raycast/script-commands # # Required parameters: diff --git a/templates/script-command.template.swift b/templates/script-command.template.swift index 013aabb7a..ece06d55b 100755 --- a/templates/script-command.template.swift +++ b/templates/script-command.template.swift @@ -2,7 +2,7 @@ // Raycast Script Command Template // -// Duplicate this file and remove ".template." from the filename to get started. +// Duplicate this file and remove ".template" from the filename to get started. // See full documentation here: https://github.com/raycast/script-commands // // Required parameters: From 71e08d94bcb1bc6c380658762f5a3b09e91035ea Mon Sep 17 00:00:00 2001 From: WangEdward <73746306+WangEdward@users.noreply.github.com> Date: Sun, 14 Jul 2024 22:23:53 +0800 Subject: [PATCH 060/146] fix(duckduckgo-email-protection): address parsing DuckDuckGo has modified its generated email addresses, and they will now follow the format three-word-addresses@duck.com instead of the previous fixed-length format (e.g. vcb35uk3@duck.com). --- .../generate-unique-email-address.applescript | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/commands/communication/duckduckgo-email-protection/generate-unique-email-address.applescript b/commands/communication/duckduckgo-email-protection/generate-unique-email-address.applescript index 9374dbe87..ccdc7c4dd 100755 --- a/commands/communication/duckduckgo-email-protection/generate-unique-email-address.applescript +++ b/commands/communication/duckduckgo-email-protection/generate-unique-email-address.applescript @@ -17,7 +17,7 @@ on run set prefix to do shell script "curl -X POST https://quack.duckduckgo.com/api/email/addresses --header 'Authorization: Bearer " & getAuthorizationID() & "'" if text 3 through 9 of prefix is "address" then - set uniqueAddress to text 13 through 20 of prefix & "@duck.com" + set uniqueAddress to text 13 through -3 of prefix & "@duck.com" set the clipboard to uniqueAddress return uniqueAddress & " copied to clipboard!" else From 09b8bc3e09c7189052fd4fb225806b94caf68dbc Mon Sep 17 00:00:00 2001 From: Emircan ERKUL Date: Sat, 20 Jul 2024 15:38:18 +0300 Subject: [PATCH 061/146] Update and rename prayer-times-diyanet.sh to prayer-times.sh Replace source of the API with more stable and comprehensive one. --- ...rayer-times-diyanet.sh => prayer-times.sh} | 21 +++++++++---------- 1 file changed, 10 insertions(+), 11 deletions(-) rename commands/culture/{prayer-times-diyanet.sh => prayer-times.sh} (71%) diff --git a/commands/culture/prayer-times-diyanet.sh b/commands/culture/prayer-times.sh similarity index 71% rename from commands/culture/prayer-times-diyanet.sh rename to commands/culture/prayer-times.sh index d1e608120..09655832e 100755 --- a/commands/culture/prayer-times-diyanet.sh +++ b/commands/culture/prayer-times.sh @@ -7,7 +7,7 @@ # Required parameters: # @raycast.schemaVersion 1 -# @raycast.title Prayer Times (Diyanet) +# @raycast.title Prayer Times # @raycast.mode inline # @raycast.packageName Culture @@ -17,16 +17,16 @@ # Documentation # @raycast.author Emircan Erkul # @raycast.authorURL https://emircanerkul.com -# @raycast.description Prayer Times grabbed from the Diyanet's Official Website for people located in Türkiye. +# @raycast.description Prayer Times grabbed from the aladhan.com. -data=$(curl -s https://namazvakitleri.diyanet.gov.tr/tr-TR/9654/kocaeli-icin-namaz-vakti) - -imsak=$(echo "$data" | pcregrep -o1 '_imsakTime = "(.*)"') -gunes=$(echo "$data" | pcregrep -o1 '_gunesTime = "(.*)"') -ogle=$(echo "$data" | pcregrep -o1 '_ogleTime = "(.*)"') -ikindi=$(echo "$data" | pcregrep -o1 '_ikindiTime = "(.*)"') -aksam=$(echo "$data" | pcregrep -o1 '_aksamTime = "(.*)"') -yatsi=$(echo "$data" | pcregrep -o1 '_yatsiTime = "(.*)"') +data=$(curl -s -L 'http://api.aladhan.com/v1/timingsByCity?city=derince&country=turkey&method=13') + +imsak=$(echo "$data" | jq --raw-output '.data.timings.Imsak') +gunes=$(echo $data | jq --raw-output '.data.timings.Sunrise') +ogle=$(echo "$data" | jq --raw-output '.data.timings.Dhuhr') +ikindi=$(echo "$data" | jq --raw-output '.data.timings.Asr') +aksam=$(echo "$data" | jq --raw-output '.data.timings.Maghrib') +yatsi=$(echo "$data" | jq --raw-output '.data.timings.Isha') NOW=$(gdate +%s) @@ -59,5 +59,4 @@ fi output="$REMANINING $imsak ⚙︎ $gunes ⚙︎ $ogle ⚙︎ $ikindi ⚙︎ $aksam ⚙︎ $yatsi" -echo $output | tr -d '\n' | LANG=tr_TR.UTF-8 pbcopy echo $output From 361149296d29f8cf80dc12edbc3c367b0be6f959 Mon Sep 17 00:00:00 2001 From: Raycast Bot Date: Mon, 22 Jul 2024 13:11:33 +0000 Subject: [PATCH 062/146] Update Script Commands documentation --- commands/README.md | 2 +- commands/extensions.json | 32 ++++++++++++++++---------------- 2 files changed, 17 insertions(+), 17 deletions(-) diff --git a/commands/README.md b/commands/README.md index d3975184f..a07ac5159 100644 --- a/commands/README.md +++ b/commands/README.md @@ -871,7 +871,7 @@ This repository contains sample commands and documentation to write your own one | Icon | Title | Description | Author | Args | Templ | Lang | | :--: | ----- | ----------- | :----: | :--: | :---: | :--: | - | 🕌 | [Prayer Times (Diyanet)](culture/prayer-times-diyanet.sh) | Prayer Times grabbed from the Diyanet's Official Website for people located in Türkiye. | [Emircan Erkul](https://emircanerkul.com) | | | | + | 🕌 | [Prayer Times](culture/prayer-times.sh) | Prayer Times grabbed from the aladhan.com. | [Emircan Erkul](https://emircanerkul.com) | | | | ## Dashboard diff --git a/commands/extensions.json b/commands/extensions.json index 416dd2f39..cad528df8 100644 --- a/commands/extensions.json +++ b/commands/extensions.json @@ -5924,7 +5924,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "OCR", - "updatedAt" : "2022-07-22T17:53:33+08:00" + "updatedAt" : "2024-06-22T16:19:22+09:00" }, { "authors" : [ @@ -11426,7 +11426,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Generate Unique Address", - "updatedAt" : "2022-02-10T09:48:48+01:00" + "updatedAt" : "2024-07-14T22:23:53+08:00" } ] }, @@ -20918,14 +20918,14 @@ ], "createdAt" : "2022-11-17T12:22:40+03:00", "currentDirectoryPath" : null, - "description" : "Prayer Times grabbed from the Diyanet's Official Website for people located in Türkiye.", - "filename" : "prayer-times-diyanet.sh", + "description" : "Prayer Times grabbed from the aladhan.com.", + "filename" : "prayer-times.sh", "hasArguments" : false, "icon" : { "dark" : null, "light" : "🕌" }, - "identifier" : "64f8434e9317a2cfd699e4dfd8d4be86", + "identifier" : "ebda5e51cd4760fb9dbce650e41a9142", "isTemplate" : false, "language" : "bash", "mode" : "inline", @@ -20934,8 +20934,8 @@ "path" : "culture\/", "refreshTime" : null, "schemaVersion" : 1, - "title" : "Prayer Times (Diyanet)", - "updatedAt" : "2022-11-17T13:23:15+03:00" + "title" : "Prayer Times", + "updatedAt" : "2024-07-20T15:38:18+03:00" } ] }, @@ -23664,16 +23664,16 @@ } ], "languages" : [ - { - "displayName" : "Ruby", - "icon" : "icon-ruby.png", - "name" : "ruby" - }, { "displayName" : "Bash", "icon" : "icon-bash.png", "name" : "bash" }, + { + "displayName" : "Node", + "icon" : "icon-nodejs.png", + "name" : "node" + }, { "displayName" : "Swift", "icon" : "icon-swift.png", @@ -23685,9 +23685,9 @@ "name" : "applescript" }, { - "displayName" : "Node", - "icon" : "icon-nodejs.png", - "name" : "node" + "displayName" : "Ruby", + "icon" : "icon-ruby.png", + "name" : "ruby" }, { "displayName" : "Python", @@ -23699,5 +23699,5 @@ ], "totalScriptCommands" : 823, - "updatedAt" : "2024-06-14T12:34:01Z" + "updatedAt" : "2024-07-22T13:10:34Z" } \ No newline at end of file From c767229c9778191ec23ceeea92742586e3989293 Mon Sep 17 00:00:00 2001 From: Michael Bianco Date: Mon, 5 Aug 2024 09:48:29 -0600 Subject: [PATCH 063/146] system: copy selected finder file(s) to clipboard (#952) * system: copy selected finder file(s) to clipboard * update comments --- .../copy-selection-to-clipboard.applescript | 43 +++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100755 commands/system/copy-selection-to-clipboard.applescript diff --git a/commands/system/copy-selection-to-clipboard.applescript b/commands/system/copy-selection-to-clipboard.applescript new file mode 100755 index 000000000..6a5031e2a --- /dev/null +++ b/commands/system/copy-selection-to-clipboard.applescript @@ -0,0 +1,43 @@ +#!/usr/bin/osascript + +# Required parameters: +# @raycast.schemaVersion 1 +# @raycast.title Copy Finder Selection to Clipboard +# @raycast.mode silent +# @raycast.packageName System +# +# Optional parameters: +# @raycast.icon ?? +# +# Documentation: +# @raycast.description Copy contents of selected items in Finder to the clipboard. If there's more than one file selected, they will be combined and added to the clipboard. +# @raycast.author Felipe Turcheti +# @raycast.authorURL https://felipeturcheti.com + +on run + log "Copying contents of the selected items to the clipboard..." + + tell application "Finder" + -- get Finder selected items + set theItems to selection + end tell + + -- create a list to store contents of all selected items + set allContents to "" + + -- for each item in the Finder selection + repeat with itemRef in theItems + -- get the item path + set theItem to POSIX path of (itemRef as string) + -- read the content of the item + set fileDescriptor to open for access (POSIX file theItem) + set fileContent to read fileDescriptor for (get eof fileDescriptor) + close access fileDescriptor + -- add the content to the list + set allContents to allContents & fileContent & " +" + end repeat + + -- set the clipboard to the combined contents + set the clipboard to allContents +end run From c50cc847bb41465e5833912fb51dd214611bb750 Mon Sep 17 00:00:00 2001 From: Raycast Bot Date: Mon, 5 Aug 2024 15:51:35 +0000 Subject: [PATCH 064/146] Update Script Commands documentation --- commands/README.md | 1 + commands/extensions.json | 42 +++++++++++++++++++++++++++++++++------- 2 files changed, 36 insertions(+), 7 deletions(-) diff --git a/commands/README.md b/commands/README.md index a07ac5159..30762c431 100644 --- a/commands/README.md +++ b/commands/README.md @@ -1459,6 +1459,7 @@ This repository contains sample commands and documentation to write your own one | 💻 | [Capture Screen Selection to Desktop](system/capture-screen-selection-to-desktop.sh) | This script screenshots the selected area and saves it to the desktop. | [Aaron Miller](https://github.com/aaronhmiller) | | | | | 🔪 | [Close All Finder Windows](system/close-finder-windows.applescript) | Close all open Finder windows. | [Alexander Steffen](https://github.com/alexjsteffen) | | | | | 📅 | [Copy Availability](system/copy-availability.swift) | Copies the calendar availability of today. | Raycast | ✅ | | | + | | [Copy Finder Selection to Clipboard](system/copy-selection-to-clipboard.applescript) | Copy contents of selected items in Finder to the clipboard. If there's more than one file selected, they will be combined and added to the clipboard. | [Felipe Turcheti](https://felipeturcheti.com) | | | | | 💁 | [Copy Last Download](system/copy-last-download.swift) | Copy the last downloaded file to the clipboard. | Raycast | | | | | 📸 | [Copy Last Screenshot](system/copy-last-screenshot.swift) | Copies the last screenshot to the clipboard. | Raycast | | | | | 📟 | [Copy Wi-Fi Password](system/wifi-password.sh) | Copy Wi-Fi password from current session | [Astrit Malsia](https://github.com/astrit) | | | | diff --git a/commands/extensions.json b/commands/extensions.json index cad528df8..823fc5313 100644 --- a/commands/extensions.json +++ b/commands/extensions.json @@ -6852,6 +6852,34 @@ "title" : "Copy Last Screenshot", "updatedAt" : "2020-12-08T15:56:35Z" }, + { + "authors" : [ + { + "name" : "Felipe Turcheti", + "url" : "https:\/\/felipeturcheti.com" + } + ], + "createdAt" : "2024-08-05T09:48:29-06:00", + "currentDirectoryPath" : null, + "description" : "Copy contents of selected items in Finder to the clipboard. If there's more than one file selected, they will be combined and added to the clipboard.", + "filename" : "copy-selection-to-clipboard.applescript", + "hasArguments" : false, + "icon" : { + "dark" : null, + "light" : "??" + }, + "identifier" : "c76e2bb24d45b402577be451771a6171", + "isTemplate" : false, + "language" : "applescript", + "mode" : "silent", + "needsConfirmation" : null, + "packageName" : "System", + "path" : "system\/", + "refreshTime" : null, + "schemaVersion" : 1, + "title" : "Copy Finder Selection to Clipboard", + "updatedAt" : "2024-08-05T09:48:29-06:00" + }, { "authors" : [ { @@ -23669,11 +23697,6 @@ "icon" : "icon-bash.png", "name" : "bash" }, - { - "displayName" : "Node", - "icon" : "icon-nodejs.png", - "name" : "node" - }, { "displayName" : "Swift", "icon" : "icon-swift.png", @@ -23684,6 +23707,11 @@ "icon" : "icon-applescript.png", "name" : "applescript" }, + { + "displayName" : "Node", + "icon" : "icon-nodejs.png", + "name" : "node" + }, { "displayName" : "Ruby", "icon" : "icon-ruby.png", @@ -23698,6 +23726,6 @@ "metadata" : [ ], - "totalScriptCommands" : 823, - "updatedAt" : "2024-07-22T13:10:34Z" + "totalScriptCommands" : 824, + "updatedAt" : "2024-08-05T15:50:30Z" } \ No newline at end of file From 7fe72018a2ff00e9f14a186d0b4614ff77302ee9 Mon Sep 17 00:00:00 2001 From: Nimo Beeren Date: Wed, 7 Aug 2024 21:01:27 +0200 Subject: [PATCH 065/146] Add script to open Claude and submit prompt --- commands/apps/claude/claude.js | 120 +++++++++++++++++++++++++++++++++ 1 file changed, 120 insertions(+) create mode 100644 commands/apps/claude/claude.js diff --git a/commands/apps/claude/claude.js b/commands/apps/claude/claude.js new file mode 100644 index 000000000..f19870b4f --- /dev/null +++ b/commands/apps/claude/claude.js @@ -0,0 +1,120 @@ +#!/usr/bin/env node + +// Dependency: This script requires `chrome-cli` installed: https://github.com/prasmussen/chrome-cli +// Install via homebrew: `brew install chrome-cli` + +// Required parameters: +// @raycast.schemaVersion 1 +// @raycast.title Prompt Claude +// @raycast.mode silent +// @raycast.packageName Claude + +// Optional parameters: +// @raycast.icon 🧠 +// @raycast.argument1 { "type": "text", "placeholder": "prompt"} + +// Documentation: +// @raycast.description Open Claude in Chrome browser and submit a prompt +// @raycast.author Nimo Beeren +// @raycast.authorURL https://github.com/nimobeeren + +const { execSync } = require("child_process"); + +const prompt = process.argv[2]; + +process.env.OUTPUT_FORMAT = "json"; + +/** Escape a string so that it can be used in JavaScript code when wrapped in double quotes. */ +function escapeJsString(str) { + return str.replaceAll(`\\`, `\\\\`).replaceAll(`"`, `\\"`); +} + +/** Escape a string so that it can be used in a shell command when wrapped in single quotes. */ +function escapeShellString(str) { + return str.replaceAll(`'`, `'"'"'`); +} + +try { + execSync("which chrome-cli"); +} catch { + console.error( + "chrome-cli is required to run this script (https://github.com/prasmussen/chrome-cli)" + ); + process.exit(1); +} + +// Find the Claude tab if one is already open +let tabs = JSON.parse(execSync("chrome-cli list tabs")).tabs; +let claudeTab = tabs.find((tab) => tab.url.startsWith("https://claude.ai/")); + +// If there is a Claude tab open, get its info. Otherwise, open Claude in a new +// window. +let claudeTabInfo; +if (claudeTab) { + // Open a new Claude session in the existing tab and focus it + execSync(`chrome-cli open 'https://claude.ai/new' -t ${claudeTab.id}`); + // Get tab info + claudeTabInfo = JSON.parse(execSync(`chrome-cli info -t ${claudeTab.id}`)); +} else { + // Open a Claude session in a new window, focus it and return the tab info + claudeTabInfo = JSON.parse( + execSync("chrome-cli open 'https://claude.ai/new' -n") + ); +} + +// Wait for the tab to be loaded, then execute the script +let interval = setInterval(() => { + if (claudeTabInfo.loading) { + claudeTabInfo = JSON.parse( + execSync(`chrome-cli info -t ${claudeTabInfo.id}`) + ); + } else { + clearInterval(interval); + executeScript(); + } +}, 100); + +function executeScript() { + const script = async function (prompt) { + // Wait for prompt element to be on the page + let promptElement; + await new Promise((resolve) => { + let interval = setInterval(() => { + promptElement = document.querySelector( + '[aria-label="Write your prompt to Claude"] > div' + ); + if (promptElement) { + clearInterval(interval); + resolve(); + } + }, 100); + }); + + // Set the prompt + const p = document.createElement("p"); + p.textContent = prompt; + promptElement.replaceChildren(p); + + // Wait for submit button to be on the page + let submitButton; + await new Promise((resolve) => { + let interval = setInterval(() => { + submitButton = document.querySelector('[aria-label="Send Message"]'); + if (submitButton) { + clearInterval(interval); + resolve(); + } + }, 100); + }); + + // Submit the prompt + submitButton.click(); + }; + + const functionString = escapeShellString(script.toString()); + const promptString = escapeShellString(escapeJsString(prompt)); + + execSync( + `chrome-cli execute '(${functionString})("${promptString}")' -t ${claudeTabInfo.id}` + ); +} From d15c3fd4ff29dc03475e45581532c072c7a2075a Mon Sep 17 00:00:00 2001 From: Chris Bailey Date: Tue, 13 Aug 2024 00:40:38 -0400 Subject: [PATCH 066/146] Hide Application --- .../navigation/hide-application.applescript | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100755 commands/navigation/hide-application.applescript diff --git a/commands/navigation/hide-application.applescript b/commands/navigation/hide-application.applescript new file mode 100755 index 000000000..f9574a4fd --- /dev/null +++ b/commands/navigation/hide-application.applescript @@ -0,0 +1,18 @@ +#!/usr/bin/osascript + +# @raycast.schemaVersion 1 +# @raycast.author Chris Bailey +# @raycast.authorURL https://raycast.com/that70schris +# @raycast.description Easily hide your foremost application +# @raycast.packageName Navigation +# @raycast.title Hide Current Application +# @raycast.mode silent +# @raycast.icon 🫥 + +tell application "System Events" + tell (first process whose frontmost is true) + set _name to displayed name + end tell + + set visible of application process _name to false +end tell From 0024090793d3fa3b21d034aaccbd1771c5744c6b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Sch=C3=B6mer?= Date: Fri, 16 Aug 2024 15:41:33 +0200 Subject: [PATCH 067/146] [script] Tailscale Switch: Make it switch account without logout Update script tailscale-switch.sh to switch to another Tailscale account without logging out of the current account. With two logged-in Tailscale accounts, the updated script allows switching between the two accounts without any re-authentication (as far as tested for the duration of ~17 hours after login to my accounts). The script uses `tailscale switch --list` to list the available accounts. It takes the first not-connected account, and switches to this account with `tailscale switch ID`. ```console $ tailscale switch --list ID Tailnet Account e163 tailnet-a account-a@tailnet-a.example 2b13 tailnet-b account-b@tailnet-b.example ``` ```console $ tailscale switch 2b13 Switching to account "2b13" Success. ``` --- commands/apps/tailscale/tailscale-switch.sh | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/commands/apps/tailscale/tailscale-switch.sh b/commands/apps/tailscale/tailscale-switch.sh index ad40265e9..15b9e4ddb 100755 --- a/commands/apps/tailscale/tailscale-switch.sh +++ b/commands/apps/tailscale/tailscale-switch.sh @@ -29,12 +29,11 @@ else exit 1 fi -$ts logout -$ts up - -if command -v jq &> /dev/null; then - account=$($ts status --json | jq -r '.User[(.Self.UserID | tostring)].LoginName') - echo "Connected as $account" -else - echo "Connected" -fi +"${ts}" switch --list | # List all Tailscale accounts " " +grep -vF -e 'ID' -e '*' | # Omit the header line and the current account marked with "*" +awk '{ print $1 }' | # Print only the account ID of not-connected accounts +head -n1 | # Print only the first not-connected account +xargs -r -n1 "${ts}" switch # Switch to the selected account + +tailnet="$("${ts}" switch --list | awk '/\*/ { print $2 }')" +echo "Switched to ${tailnet}" From fab19ab7413fcd850e22d0028d1f6a77dde154ab Mon Sep 17 00:00:00 2001 From: Nimo Beeren Date: Fri, 16 Aug 2024 19:51:07 +0200 Subject: [PATCH 068/146] change title "Prompt Claude" -> "Ask Claude" Co-authored-by: Thiago Holanda --- commands/apps/claude/claude.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/commands/apps/claude/claude.js b/commands/apps/claude/claude.js index f19870b4f..84372d571 100644 --- a/commands/apps/claude/claude.js +++ b/commands/apps/claude/claude.js @@ -5,7 +5,7 @@ // Required parameters: // @raycast.schemaVersion 1 -// @raycast.title Prompt Claude +// @raycast.title Ask Claude // @raycast.mode silent // @raycast.packageName Claude From 35c0ac677669f1f07abc9abb9e9faa275bbb5300 Mon Sep 17 00:00:00 2001 From: Nimo Beeren Date: Fri, 16 Aug 2024 19:52:01 +0200 Subject: [PATCH 069/146] change placeholder "prompt" -> "Prompt" Co-authored-by: Thiago Holanda --- commands/apps/claude/claude.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/commands/apps/claude/claude.js b/commands/apps/claude/claude.js index 84372d571..ee27d42c5 100644 --- a/commands/apps/claude/claude.js +++ b/commands/apps/claude/claude.js @@ -11,7 +11,7 @@ // Optional parameters: // @raycast.icon 🧠 -// @raycast.argument1 { "type": "text", "placeholder": "prompt"} +// @raycast.argument1 { "type": "text", "placeholder": "Prompt"} // Documentation: // @raycast.description Open Claude in Chrome browser and submit a prompt From 3ed48c09f3efc78e388a5541ceba461bbd851529 Mon Sep 17 00:00:00 2001 From: Nimo Beeren Date: Fri, 16 Aug 2024 20:18:41 +0200 Subject: [PATCH 070/146] open in new tab instead of new window --- commands/apps/claude/claude.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/commands/apps/claude/claude.js b/commands/apps/claude/claude.js index ee27d42c5..f21969b80 100644 --- a/commands/apps/claude/claude.js +++ b/commands/apps/claude/claude.js @@ -56,9 +56,9 @@ if (claudeTab) { // Get tab info claudeTabInfo = JSON.parse(execSync(`chrome-cli info -t ${claudeTab.id}`)); } else { - // Open a Claude session in a new window, focus it and return the tab info + // Open a Claude session in a new tab, focus it and return the tab info claudeTabInfo = JSON.parse( - execSync("chrome-cli open 'https://claude.ai/new' -n") + execSync("chrome-cli open 'https://claude.ai/new'") ); } From 1a72d32f812009175c121fe11224fb99e0ce7aa0 Mon Sep 17 00:00:00 2001 From: Nimo Beeren Date: Fri, 16 Aug 2024 20:19:03 +0200 Subject: [PATCH 071/146] =?UTF-8?q?change=20icon=20=F0=9F=A7=A0=20->=20?= =?UTF-8?q?=E2=9C=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- commands/apps/claude/claude.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/commands/apps/claude/claude.js b/commands/apps/claude/claude.js index f21969b80..762eccee8 100644 --- a/commands/apps/claude/claude.js +++ b/commands/apps/claude/claude.js @@ -10,7 +10,7 @@ // @raycast.packageName Claude // Optional parameters: -// @raycast.icon 🧠 +// @raycast.icon ✨ // @raycast.argument1 { "type": "text", "placeholder": "Prompt"} // Documentation: From e3bc37160c714a3807abd064e15623b3fb79f773 Mon Sep 17 00:00:00 2001 From: Nimo Beeren Date: Fri, 16 Aug 2024 20:19:16 +0200 Subject: [PATCH 072/146] list node as dependency --- commands/apps/claude/claude.js | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/commands/apps/claude/claude.js b/commands/apps/claude/claude.js index 762eccee8..55c7a0e36 100644 --- a/commands/apps/claude/claude.js +++ b/commands/apps/claude/claude.js @@ -1,7 +1,10 @@ #!/usr/bin/env node -// Dependency: This script requires `chrome-cli` installed: https://github.com/prasmussen/chrome-cli -// Install via homebrew: `brew install chrome-cli` +// Dependencies: +// This script requires the following software to be installed: +// - `node` https://nodejs.org +// - `chrome-cli` https://github.com/prasmussen/chrome-cli +// Install via homebrew: `brew install node chrome-cli` // Required parameters: // @raycast.schemaVersion 1 From 045d7dae7e9c074b98eefac22e662e8eb4e216ee Mon Sep 17 00:00:00 2001 From: Nimo Beeren Date: Fri, 16 Aug 2024 20:19:57 +0200 Subject: [PATCH 073/146] add note to tell the user to enable JS from apple events --- commands/apps/claude/claude.js | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/commands/apps/claude/claude.js b/commands/apps/claude/claude.js index 55c7a0e36..f9adb66c8 100644 --- a/commands/apps/claude/claude.js +++ b/commands/apps/claude/claude.js @@ -6,6 +6,10 @@ // - `chrome-cli` https://github.com/prasmussen/chrome-cli // Install via homebrew: `brew install node chrome-cli` +// This script needs to run JavaScript in your browser, which requires your permission. +// To do so, open Chrome and find the menu bar item: +// View > Developer > Allow JavaScript from Apple Events + // Required parameters: // @raycast.schemaVersion 1 // @raycast.title Ask Claude From 1d6845ddc163f27e4e2a65c18f5fce3d007ff033 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Sch=C3=B6mer?= Date: Mon, 19 Aug 2024 14:49:32 +0200 Subject: [PATCH 074/146] [script] Tailscale Switch: Add myself as contributor --- commands/apps/tailscale/tailscale-switch.sh | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/commands/apps/tailscale/tailscale-switch.sh b/commands/apps/tailscale/tailscale-switch.sh index 15b9e4ddb..e174480c8 100755 --- a/commands/apps/tailscale/tailscale-switch.sh +++ b/commands/apps/tailscale/tailscale-switch.sh @@ -15,9 +15,15 @@ # @Documentation: # @raycast.description Switches Tailscale networks + +# Original author # @raycast.author Ross Zurowski # @raycast.authorURL https://github.com/rosszurowski +# Contributor +# @raycast.author Daniel Schoemer +# @raycast.authorURL https://github.com/quatauta + ts="" if command -v tailscale &> /dev/null; then From 30675f7899ff0220c0666c51655cbbe10954b559 Mon Sep 17 00:00:00 2001 From: Michael Bianco Date: Wed, 21 Aug 2024 08:30:36 -0600 Subject: [PATCH 075/146] download current safari url doing this is non-obvious in safari --- .../safari/safari-download-url.applescript | 28 +++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 commands/apps/safari/safari-download-url.applescript diff --git a/commands/apps/safari/safari-download-url.applescript b/commands/apps/safari/safari-download-url.applescript new file mode 100644 index 000000000..8fd9a716a --- /dev/null +++ b/commands/apps/safari/safari-download-url.applescript @@ -0,0 +1,28 @@ +#!/usr/bin/osascript + +# Required parameters: +# @raycast.schemaVersion 1 +# @raycast.title Download Current URL +# @raycast.mode silent + +# Optional parameters: +# @raycast.packageName Safari +# @raycast.icon images/safari.png + +# @Documentation: +# @raycast.author Michael Bianco +# @raycast.authorURL https://github.com/iloveitaly +# @raycast.description Download the currently active tab's URL. + +tell application "Safari" + activate + set currentTab to current tab of window 1 + set theURL to URL of currentTab +end tell + +-- Simulate pressing Option key and clicking the link +tell application "System Events" + keystroke "l" using {command down} -- Select the address bar (Cmd + L) + delay 0.5 + keystroke return using {option down} -- Press Option + Return to download the file +end tell From f8979d86a42f4aeae9b959d201c672be88e1a32b Mon Sep 17 00:00:00 2001 From: Jianing Wang Date: Wed, 28 Aug 2024 20:37:53 +0800 Subject: [PATCH 076/146] fix(rich-text-clipboard-to-markdown.sh): execution error --- commands/conversions/rich-text-clipboard-to-markdown.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/commands/conversions/rich-text-clipboard-to-markdown.sh b/commands/conversions/rich-text-clipboard-to-markdown.sh index 7cde8493f..5bf7d5d1d 100755 --- a/commands/conversions/rich-text-clipboard-to-markdown.sh +++ b/commands/conversions/rich-text-clipboard-to-markdown.sh @@ -20,4 +20,4 @@ if ! command -v pandoc &> /dev/null; then fi export LC_CTYPE=UTF-8 -osascript -e 'the clipboard as "HTML"'| perl -ne 'print chr foreach unpack("C*",pack("H*",substr($_,11,-3)))' | pandoc --from=html --to=gfm | pbcopy +osascript -e 'the clipboard as «class RTF »' | perl -ne 'print chr foreach unpack("C*",pack("H*",substr($_,11,-3)))' | pandoc --from=rtf --to=gfm | pbcopy From 44323077131953394bd4172d1e845dd0e54e03fa Mon Sep 17 00:00:00 2001 From: ystknsh Date: Thu, 29 Aug 2024 16:26:42 +0900 Subject: [PATCH 077/146] add sh file, commands/browsing/open-multiple-websites-on-safari.sh --- .../open-multiple-websites-on-safari.sh | 55 +++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100644 commands/browsing/open-multiple-websites-on-safari.sh diff --git a/commands/browsing/open-multiple-websites-on-safari.sh b/commands/browsing/open-multiple-websites-on-safari.sh new file mode 100644 index 000000000..0f16d29fe --- /dev/null +++ b/commands/browsing/open-multiple-websites-on-safari.sh @@ -0,0 +1,55 @@ +#!/bin/bash + +# Required parameters: +# @raycast.schemaVersion 1 +# @raycast.title Open Multiple Websites on Safari +# @raycast.mode silent + +# Optional parameters: +# @raycast.icon 📚 +# @raycast.packageName Browsing + +# Documentation: +# @raycast.description Open multiple websites on Safari using list of URLs +# @raycast.author Yasutaka Nishii +# @raycast.authorURL https://github.com/ystknsh + +# Set list of URLs +urls=( + "https://example.com/" + "https://example.org/" + "https://example.net/" + "https://example.jp/" + "https://example.io/" + "https://example.ai/" +) + +# Make AppleScript commands +applescript_command="tell application \"Safari\" + make new document with properties {URL:\"${urls[0]}\"} + tell window 1" + +for ((i=1; i<${#urls[@]}; i++)); do + applescript_command+=" + make new tab with properties {URL:\"${urls[$i]}\"}" +done + +applescript_command+=" + end tell +end tell" + +# Execute AppleScript +osascript -e "$applescript_command" + +# Set Safari window to front(Optional) +osascript < Date: Thu, 29 Aug 2024 19:10:22 +0300 Subject: [PATCH 078/146] Fix typo "ANSII" --- documentation/OUTPUTMODES.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/documentation/OUTPUTMODES.md b/documentation/OUTPUTMODES.md index cd98677fb..b4f2f0ca2 100644 --- a/documentation/OUTPUTMODES.md +++ b/documentation/OUTPUTMODES.md @@ -23,7 +23,7 @@ In `inline` mode, the first line of output will be directly shown in the command Please note that long-running tasks generating a lot of partial data are not supported for `compact`, `silent`, and `inline` modes. For example, the `zip` command generates a lot of partial logs when compressing folders with many files. Scripts using `zip` won't work on `compact`, `silent`, and `inline`; but they will work in `fullOutput`. To make it work in the other modes you need to use the `zip -q` flag. -# ANSII Supported Colors 🎨 +# ANSI Supported Colors 🎨 We support colors for `inline` and `fullOutput` mode scripts for you to customize generated output by changing its background and foreground color. From 307d6709a0f055d1d88b6d0ccf5aecaaf4cebbcd Mon Sep 17 00:00:00 2001 From: Raycast Bot Date: Fri, 30 Aug 2024 13:02:53 +0000 Subject: [PATCH 079/146] Set scripts as executable --- commands/apps/safari/safari-download-url.applescript | 0 1 file changed, 0 insertions(+), 0 deletions(-) mode change 100644 => 100755 commands/apps/safari/safari-download-url.applescript diff --git a/commands/apps/safari/safari-download-url.applescript b/commands/apps/safari/safari-download-url.applescript old mode 100644 new mode 100755 From 282b3bd76521bab9ceefb1d805e17e2563449ed3 Mon Sep 17 00:00:00 2001 From: Raycast Bot Date: Fri, 30 Aug 2024 13:04:06 +0000 Subject: [PATCH 080/146] Update Script Commands documentation --- commands/README.md | 1 + commands/extensions.json | 62 +++++++++++++++++++++++++++++----------- 2 files changed, 46 insertions(+), 17 deletions(-) diff --git a/commands/README.md b/commands/README.md index 30762c431..171b8aea9 100644 --- a/commands/README.md +++ b/commands/README.md @@ -555,6 +555,7 @@ This repository contains sample commands and documentation to write your own one | | [Close Other Tabs](apps/safari/safari-close-other-tabs.applescript) | Close all tabs besides the currently active tab. | [Thomas Paul Mann](https://github.com/thomaspaulmann) | | | | | | [Close Tabs to the Left](apps/safari/safari-close-tabs-left.applescript) | Close all tabs to the left side of the currently active tab. | [Thomas Paul Mann](https://github.com/thomaspaulmann) | | | | | | [Close Tabs to the Right](apps/safari/safari-close-tabs-right.applescript) | Close all tabs to the right side of the currently active tab. | [Thomas Paul Mann](https://github.com/thomaspaulmann) | | | | + | | [Download Current URL](apps/safari/safari-download-url.applescript) | Download the currently active tab's URL. | [Michael Bianco](https://github.com/iloveitaly) | | | | | | [Duplicate Tab](apps/safari/safari-duplicate-tab.applescript) | Duplicates and opens the currently active tab. | [Thomas Paul Mann](https://github.com/thomaspaulmann) | | | | | | [Open Bing with Edge User-Agent](apps/safari/safari-bing-edge-user-agent.applescript) | Open Bing in Safari with Edge User-Agent | [smxl](https://github.com/smxl) | | | | | | [Open Safari URL in Chrome](apps/safari/safari-current-page-url-in-chrome.applescript) | Open current Safari URL in new tab in Chrome | [Dave Lehman](https://github.com/dlehman) | | | | diff --git a/commands/extensions.json b/commands/extensions.json index 823fc5313..e014903a1 100644 --- a/commands/extensions.json +++ b/commands/extensions.json @@ -331,7 +331,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Rich Text to Markdown", - "updatedAt" : "2021-07-23T17:21:58-04:00" + "updatedAt" : "2024-08-28T20:37:53+08:00" }, { "authors" : null, @@ -17835,6 +17835,34 @@ "title" : "Add Item to Reading List", "updatedAt" : "2021-03-09T15:09:02Z" }, + { + "authors" : [ + { + "name" : "Michael Bianco", + "url" : "https:\/\/github.com\/iloveitaly" + } + ], + "createdAt" : "2024-08-21T08:30:36-06:00", + "currentDirectoryPath" : null, + "description" : "Download the currently active tab's URL.", + "filename" : "safari-download-url.applescript", + "hasArguments" : false, + "icon" : { + "dark" : null, + "light" : "images\/safari.png" + }, + "identifier" : "3fe3287d74734aa1adaf454aa6be4dce", + "isTemplate" : false, + "language" : "applescript", + "mode" : "silent", + "needsConfirmation" : null, + "packageName" : "Safari", + "path" : "apps\/safari\/", + "refreshTime" : null, + "schemaVersion" : 1, + "title" : "Download Current URL", + "updatedAt" : "2024-08-30T13:02:53Z" + }, { "authors" : [ { @@ -23692,20 +23720,25 @@ } ], "languages" : [ + { + "displayName" : "AppleScript", + "icon" : "icon-applescript.png", + "name" : "applescript" + }, { "displayName" : "Bash", "icon" : "icon-bash.png", "name" : "bash" }, { - "displayName" : "Swift", - "icon" : "icon-swift.png", - "name" : "swift" + "displayName" : "Python", + "icon" : "icon-python.png", + "name" : "python" }, { - "displayName" : "AppleScript", - "icon" : "icon-applescript.png", - "name" : "applescript" + "displayName" : "Ruby", + "icon" : "icon-ruby.png", + "name" : "ruby" }, { "displayName" : "Node", @@ -23713,19 +23746,14 @@ "name" : "node" }, { - "displayName" : "Ruby", - "icon" : "icon-ruby.png", - "name" : "ruby" - }, - { - "displayName" : "Python", - "icon" : "icon-python.png", - "name" : "python" + "displayName" : "Swift", + "icon" : "icon-swift.png", + "name" : "swift" } ], "metadata" : [ ], - "totalScriptCommands" : 824, - "updatedAt" : "2024-08-05T15:50:30Z" + "totalScriptCommands" : 825, + "updatedAt" : "2024-08-30T13:02:53Z" } \ No newline at end of file From a99cebc22d4190d168fe9467e51a34e9d727cdde Mon Sep 17 00:00:00 2001 From: Raycast Bot Date: Fri, 30 Aug 2024 13:09:27 +0000 Subject: [PATCH 081/146] Set scripts as executable --- commands/apps/claude/claude.js | 0 1 file changed, 0 insertions(+), 0 deletions(-) mode change 100644 => 100755 commands/apps/claude/claude.js diff --git a/commands/apps/claude/claude.js b/commands/apps/claude/claude.js old mode 100644 new mode 100755 From b38d4a7ade3ad0dcb28e762341399f73c68ebb4e Mon Sep 17 00:00:00 2001 From: Raycast Bot Date: Fri, 30 Aug 2024 13:10:35 +0000 Subject: [PATCH 082/146] Update Script Commands documentation --- commands/README.md | 9 ++++++- commands/extensions.json | 56 +++++++++++++++++++++++++++++++++------- 2 files changed, 55 insertions(+), 10 deletions(-) diff --git a/commands/README.md b/commands/README.md index 171b8aea9..7de66d68b 100644 --- a/commands/README.md +++ b/commands/README.md @@ -33,6 +33,7 @@ This repository contains sample commands and documentation to write your own one - [Bear](#bear) - [BusyCal](#busycal) - [Chatgpt](#chatgpt) + - [Claude](#claude) - [Cleanshot](#cleanshot) - [Craft](#craft) - [DND Me](#dnd-me) @@ -218,6 +219,12 @@ This repository contains sample commands and documentation to write your own one | :--: | ----- | ----------- | :----: | :--: | :---: | :--: | | | [chatgpt](apps/chatgpt/chatgpt-open-safari.applescript) | Open chatgpt in safari | [gintonyc](https://raycast.com/gintonyc) | | | | +#### Claude + +| Icon | Title | Description | Author | Args | Templ | Lang | +| :--: | ----- | ----------- | :----: | :--: | :---: | :--: | + | ✨ | [Ask Claude](apps/claude/claude.js) | Open Claude in Chrome browser and submit a prompt | [Nimo Beeren](https://github.com/nimobeeren) | ✅ | | | + #### Cleanshot | Icon | Title | Description | Author | Args | Templ | Lang | @@ -613,7 +620,7 @@ This repository contains sample commands and documentation to write your own one | | [Connect](apps/tailscale/tailscale-connect.sh) | Connects to Tailscale | [Ross Zurowski](https://github.com/rosszurowski) | | | | | | [Disconnect](apps/tailscale/tailscale-disconnect.sh) | Disconnects from Tailscale | [Ross Zurowski](https://github.com/rosszurowski) | | | | | | [Get IP](apps/tailscale/tailscale-ip.sh) | Gets your private Tailscale IP | [Ross Zurowski](https://github.com/rosszurowski) | | | | - | | [Switch Account](apps/tailscale/tailscale-switch.sh) | Switches Tailscale networks | [Ross Zurowski](https://github.com/rosszurowski) | | | | + | | [Switch Account](apps/tailscale/tailscale-switch.sh) | Switches Tailscale networks | [Ross Zurowski](https://github.com/rosszurowski) and [Daniel Schoemer](https://github.com/quatauta) | | | | #### Terminal Translate diff --git a/commands/extensions.json b/commands/extensions.json index e014903a1..d0630eae4 100644 --- a/commands/extensions.json +++ b/commands/extensions.json @@ -15781,6 +15781,40 @@ } ] }, + { + "name" : "Claude", + "path" : "claude", + "scriptCommands" : [ + { + "authors" : [ + { + "name" : "Nimo Beeren", + "url" : "https:\/\/github.com\/nimobeeren" + } + ], + "createdAt" : "2024-08-07T21:01:27+02:00", + "currentDirectoryPath" : null, + "description" : "Open Claude in Chrome browser and submit a prompt", + "filename" : "claude.js", + "hasArguments" : true, + "icon" : { + "dark" : null, + "light" : "✨" + }, + "identifier" : "cd9356ee79829cf478bdcd127c673a0c", + "isTemplate" : false, + "language" : "node", + "mode" : "silent", + "needsConfirmation" : null, + "packageName" : "Claude", + "path" : "apps\/claude\/", + "refreshTime" : null, + "schemaVersion" : 1, + "title" : "Ask Claude", + "updatedAt" : "2024-08-30T13:09:27Z" + } + ] + }, { "name" : "TunnelBlick", "path" : "tunnelblick", @@ -18375,6 +18409,10 @@ { "name" : "Ross Zurowski", "url" : "https:\/\/github.com\/rosszurowski" + }, + { + "name" : "Daniel Schoemer", + "url" : "https:\/\/github.com\/quatauta" } ], "createdAt" : "2021-06-14T15:33:18-04:00", @@ -18396,7 +18434,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Switch Account", - "updatedAt" : "2021-06-14T15:33:18-04:00" + "updatedAt" : "2024-08-19T14:49:32+02:00" } ] }, @@ -23726,9 +23764,9 @@ "name" : "applescript" }, { - "displayName" : "Bash", - "icon" : "icon-bash.png", - "name" : "bash" + "displayName" : "Node", + "icon" : "icon-nodejs.png", + "name" : "node" }, { "displayName" : "Python", @@ -23741,9 +23779,9 @@ "name" : "ruby" }, { - "displayName" : "Node", - "icon" : "icon-nodejs.png", - "name" : "node" + "displayName" : "Bash", + "icon" : "icon-bash.png", + "name" : "bash" }, { "displayName" : "Swift", @@ -23754,6 +23792,6 @@ "metadata" : [ ], - "totalScriptCommands" : 825, - "updatedAt" : "2024-08-30T13:02:53Z" + "totalScriptCommands" : 826, + "updatedAt" : "2024-08-30T13:09:27Z" } \ No newline at end of file From f379cbfef86406fa5cc225f5d7dfa56f0cd7ddc9 Mon Sep 17 00:00:00 2001 From: ystknsh Date: Fri, 30 Aug 2024 23:50:56 +0900 Subject: [PATCH 083/146] Rename open-multiple-websites-on-safari.sh to include .template suffix --- ...-on-safari.sh => open-multiple-websites-on-safari.template.sh} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename commands/browsing/{open-multiple-websites-on-safari.sh => open-multiple-websites-on-safari.template.sh} (100%) diff --git a/commands/browsing/open-multiple-websites-on-safari.sh b/commands/browsing/open-multiple-websites-on-safari.template.sh similarity index 100% rename from commands/browsing/open-multiple-websites-on-safari.sh rename to commands/browsing/open-multiple-websites-on-safari.template.sh From 45873505b470f1c7590bae82caaf8d82326ec082 Mon Sep 17 00:00:00 2001 From: Raycast Bot Date: Tue, 3 Sep 2024 11:24:41 +0000 Subject: [PATCH 084/146] Set scripts as executable --- commands/browsing/open-multiple-websites-on-safari.template.sh | 0 1 file changed, 0 insertions(+), 0 deletions(-) mode change 100644 => 100755 commands/browsing/open-multiple-websites-on-safari.template.sh diff --git a/commands/browsing/open-multiple-websites-on-safari.template.sh b/commands/browsing/open-multiple-websites-on-safari.template.sh old mode 100644 new mode 100755 From ce1a19b09ce4914914e16c4db4a85abc3bf75625 Mon Sep 17 00:00:00 2001 From: Raycast Bot Date: Tue, 3 Sep 2024 11:25:55 +0000 Subject: [PATCH 085/146] Update Script Commands documentation --- commands/README.md | 2 ++ commands/extensions.json | 70 ++++++++++++++++++++++++++++++++++++---- 2 files changed, 65 insertions(+), 7 deletions(-) diff --git a/commands/README.md b/commands/README.md index 7de66d68b..139e092b3 100644 --- a/commands/README.md +++ b/commands/README.md @@ -740,6 +740,7 @@ This repository contains sample commands and documentation to write your own one | 🥽 | [Current Website to Private Browser](browsing/to-private-browsing.sh) | Open the current site in a private browser | [raulanatol](https://github.com/raulanatol) | | | | | | [Go to Outline](browsing/go-to-outine.sh) | Open the website at Outline | [Ronan Rodrigo Nunes](https://ronanrodrigo.dev) | ✅ | | | | 🌐 | [New Browser Window](browsing/new-browser-window.sh) | Open new window in default browser | [Levi Nelson](https://github.com/LeviticusNelson) | | | | + | 📚 | [Open Multiple Websites on Safari](browsing/open-multiple-websites-on-safari.template.sh) | Open multiple websites on Safari using list of URLs | [Yasutaka Nishii](https://github.com/ystknsh) | | ✅ | | | 🤖 | [Open in guest profile](browsing/open-in-guest-profile.sh) | Open current website in guest profile/mode | [JD Solanki](https://github.com/jd-solanki) | | | | | | [Open without CORS](browsing/open-chrome-without-cors.sh) | Open chrome with web security option disabled. | [Tahsin Yazkan](https://github.com/thsnyzkn) | | | | | | [Peek a link](browsing/peekalink.template.sh) | Use [Peekalink.io](https://peekalink.io) API to peek specified URL. | [Caleb Stauffer](https://github.com/crstauf) | ✅ | ✅ | | @@ -1280,6 +1281,7 @@ This repository contains sample commands and documentation to write your own one | Icon | Title | Description | Author | Args | Templ | Lang | | :--: | ----- | ----------- | :----: | :--: | :---: | :--: | + | 🫥 | [Hide Current Application](navigation/hide-application.applescript) | Easily hide your foremost application | [Chris Bailey](https://raycast.com/that70schris) | | | | | | [JustFocus](navigation/justfocus.applescript) | N/A | Jax0rz | ✅ | | | | 📂 | [Open Applications](navigation/open-applications.sh) | Opens the Applications folder in the Finder. | Raycast | | | | | 🖥 | [Open Clipboard URL on Desktop](navigation/open-desktop-url-from-clipboard.swift) | Opens the URL from the clipboard in the desktop app. | Raycast | | | | diff --git a/commands/extensions.json b/commands/extensions.json index d0630eae4..89e3b873e 100644 --- a/commands/extensions.json +++ b/commands/extensions.json @@ -1294,6 +1294,34 @@ "title" : "Go to Outline", "updatedAt" : "2021-02-19T19:09:37-03:00" }, + { + "authors" : [ + { + "name" : "Yasutaka Nishii", + "url" : "https:\/\/github.com\/ystknsh" + } + ], + "createdAt" : "2024-08-29T16:26:42+09:00", + "currentDirectoryPath" : null, + "description" : "Open multiple websites on Safari using list of URLs", + "filename" : "open-multiple-websites-on-safari.template.sh", + "hasArguments" : false, + "icon" : { + "dark" : null, + "light" : "📚" + }, + "identifier" : "be278c484ca03c82e901a345ff6e6b72", + "isTemplate" : true, + "language" : "bash", + "mode" : "silent", + "needsConfirmation" : null, + "packageName" : "Browsing", + "path" : "browsing\/", + "refreshTime" : null, + "schemaVersion" : 1, + "title" : "Open Multiple Websites on Safari", + "updatedAt" : "2024-09-03T11:24:41Z" + }, { "authors" : [ { @@ -2150,6 +2178,34 @@ "schemaVersion" : 1, "title" : "Open Downloads", "updatedAt" : "2021-04-28T11:35:25-04:00" + }, + { + "authors" : [ + { + "name" : "Chris Bailey", + "url" : "https:\/\/raycast.com\/that70schris" + } + ], + "createdAt" : "2024-08-13T00:40:38-04:00", + "currentDirectoryPath" : null, + "description" : "Easily hide your foremost application", + "filename" : "hide-application.applescript", + "hasArguments" : false, + "icon" : { + "dark" : null, + "light" : "🫥" + }, + "identifier" : "47f61692f25fabb33a1748ded306439c", + "isTemplate" : false, + "language" : "applescript", + "mode" : "silent", + "needsConfirmation" : null, + "packageName" : "Navigation", + "path" : "navigation\/", + "refreshTime" : null, + "schemaVersion" : 1, + "title" : "Hide Current Application", + "updatedAt" : "2024-08-13T00:40:38-04:00" } ] }, @@ -23758,11 +23814,6 @@ } ], "languages" : [ - { - "displayName" : "AppleScript", - "icon" : "icon-applescript.png", - "name" : "applescript" - }, { "displayName" : "Node", "icon" : "icon-nodejs.png", @@ -23787,11 +23838,16 @@ "displayName" : "Swift", "icon" : "icon-swift.png", "name" : "swift" + }, + { + "displayName" : "AppleScript", + "icon" : "icon-applescript.png", + "name" : "applescript" } ], "metadata" : [ ], - "totalScriptCommands" : 826, - "updatedAt" : "2024-08-30T13:09:27Z" + "totalScriptCommands" : 828, + "updatedAt" : "2024-09-03T11:24:41Z" } \ No newline at end of file From b40f0b56bf7d2ec097a2e9e5bc153b678e341118 Mon Sep 17 00:00:00 2001 From: zirkelc Date: Tue, 17 Sep 2024 11:36:59 +0200 Subject: [PATCH 086/146] fix: handle file, folder and bucket downloads --- .../developer-utils/aws/amazon-s3-download.sh | 114 ++++++++++++------ 1 file changed, 80 insertions(+), 34 deletions(-) diff --git a/commands/developer-utils/aws/amazon-s3-download.sh b/commands/developer-utils/aws/amazon-s3-download.sh index 502a9529c..fcd54b887 100755 --- a/commands/developer-utils/aws/amazon-s3-download.sh +++ b/commands/developer-utils/aws/amazon-s3-download.sh @@ -11,7 +11,7 @@ # Documentation: # @raycast.description Download from Amazon S3 via URL -# @raycast.argument1 { "type": "text", "placeholder": "S3 URL" } +# @raycast.argument1 { "type": "text", "placeholder": "s3://bucket/key" } # @raycast.author Chris Cook # @raycast.authorURL https://github.com/zirkelc @@ -26,64 +26,110 @@ fi # Try matching different S3 URL patterns # https://dev.to/aws-builders/format-and-parse-amazon-s3-url-5e10 -if [[ $URL =~ ^https?://s3\.([a-z0-9-]+)\.amazonaws\.com/([^/]+)/(.*)$ ]]; then +if [[ $URL =~ ^https?://s3\.([a-z0-9-]+)\.amazonaws\.com/([^/]+)(/(.*))?$ ]]; then # Regional hostname with path-style + # Example: https://s3.us-east-1.amazonaws.com/bucket/key BUCKET="${BASH_REMATCH[2]}" - KEY="${BASH_REMATCH[3]}" -elif [[ $URL =~ ^https?://([^/]+)\.s3\.([a-z0-9-]+)\.amazonaws\.com/(.*)$ ]]; then + KEY="${BASH_REMATCH[4]}" +elif [[ $URL =~ ^https?://([^/]+)\.s3\.([a-z0-9-]+)\.amazonaws\.com(/(.*))?$ ]]; then # Regional hostname with virtual-hosted-style + # Example: https://bucket.s3.us-east-1.amazonaws.com/key BUCKET="${BASH_REMATCH[1]}" - KEY="${BASH_REMATCH[3]}" -elif [[ $URL =~ ^https?://s3\.amazonaws\.com/([^/]+)/(.*)$ ]]; then + KEY="${BASH_REMATCH[4]}" +elif [[ $URL =~ ^https?://s3\.amazonaws\.com/([^/]+)(/(.*))?$ ]]; then # Legacy hostname with path-style + # Example: https://s3.amazonaws.com/bucket/key BUCKET="${BASH_REMATCH[1]}" - KEY="${BASH_REMATCH[2]}" -elif [[ $URL =~ ^https?://([^/]+)\.s3\.amazonaws\.com/(.*)$ ]]; then + KEY="${BASH_REMATCH[3]}" +elif [[ $URL =~ ^https?://([^/]+)\.s3\.amazonaws\.com(/(.*))?$ ]]; then # Legacy hostname with virtual-hosted-style + # Example: https://bucket.s3.amazonaws.com/key BUCKET="${BASH_REMATCH[1]}" - KEY="${BASH_REMATCH[2]}" -elif [[ $URL =~ ^s3://([^/]+)/(.*)$ ]]; then + KEY="${BASH_REMATCH[3]}" +elif [[ $URL =~ ^s3://([^/]+)(/(.*))?$ ]]; then # S3 URI + # Example: s3://bucket/key BUCKET="${BASH_REMATCH[1]}" - KEY="${BASH_REMATCH[2]}" + KEY="${BASH_REMATCH[3]}" else echo "Invalid URL: $URL" echo "URL must match recognized S3 patterns." + echo "Patterns:" + echo "- Global S3 URI: s3://bucket/key" + echo "- Regional Path-Style URL: https://s3.region.amazonaws.com/bucket/key" + echo "- Regional Virtual-Hosted-Style URL: https://bucket.s3.region.amazonaws.com/key" + echo "- Legacy Path-Style URL: https://s3.amazonaws.com/bucket/key" + echo "- Legacy Virtual-Hosted-Style URL: https://bucket.s3.amazonaws.com/key" exit 1 fi -# Check for empty bucket or key -if [[ -z "$BUCKET" || -z "$KEY" ]]; then - echo "Error extracting bucket and key from URL: $URL" - exit 1 -fi +# Trim leading slash from KEY if present +KEY="${KEY#/}" -# Remove trailing slash if present and set recursive download flag -RECURSIVE="" -if [[ "$KEY" =~ .*/$ ]]; then - KEY="${KEY%/}" # Remove trailing slash for directory key - RECURSIVE="--recursive" +# Check for empty bucket +if [[ -z "$BUCKET" ]]; then + echo "Error extracting bucket from URL: $URL" + exit 1 fi -# Set download path DOWNLOAD_FOLDER="$HOME/Downloads" -DOWNLOAD_PATH="$DOWNLOAD_FOLDER/$KEY" -if [[ -n "$RECURSIVE" ]]; then - echo "Downloading directory $URL to $DOWNLOAD_PATH..." -else - echo "Downloading file $URL to $DOWNLOAD_PATH..." +# Ensure download folder exists +if [ ! -d "$DOWNLOAD_FOLDER" ]; then + echo "Download folder does not exist" + exit 1 fi # Print bucket and key echo "Bucket: $BUCKET" -echo "Key: $KEY" +echo "Key: ${KEY:-}" +echo "Download: $DOWNLOAD_FOLDER" +echo "" -# Use recursive if necessary -if aws s3 cp "s3://$BUCKET/$KEY" "$DOWNLOAD_PATH" $RECURSIVE; then - echo "Downloaded successfully." - open "$DOWNLOAD_FOLDER" +if [ -z "$KEY" ]; then + # No key provided, download entire bucket + DOWNLOAD_PATH="$DOWNLOAD_FOLDER/$BUCKET" + echo "Downloading entire bucket s3://$BUCKET to $DOWNLOAD_PATH..." + RECURSIVE="--recursive" else - echo "Download failed." - exit 1 + # Check if the key ends with a slash, indicating it's likely a directory + if [[ "$KEY" == */ ]]; then + DOWNLOAD_PATH="$DOWNLOAD_FOLDER/$BUCKET/$KEY" + echo "Downloading directory s3://$BUCKET/$KEY to $DOWNLOAD_PATH..." + RECURSIVE="--recursive" + else + # Check if the object exists as a file + if aws s3api head-object --bucket "$BUCKET" --key "$KEY" &>/dev/null; then + # It's a file + FILENAME=$(basename "$KEY") + DOWNLOAD_PATH="$DOWNLOAD_FOLDER/$FILENAME" + echo "Downloading file s3://$BUCKET/$KEY to $DOWNLOAD_PATH..." + RECURSIVE="" + else + # It might be a directory without a trailing slash or it doesn't exist + # Try to list objects with this prefix + if aws s3api list-objects-v2 --bucket "$BUCKET" --prefix "$KEY/" --max-items 1 --query 'Contents[0].Key' --output text &>/dev/null; then + # It's a directory + DOWNLOAD_PATH="$DOWNLOAD_FOLDER/$BUCKET/$KEY" + echo "Downloading directory s3://$BUCKET/$KEY to $DOWNLOAD_PATH..." + RECURSIVE="--recursive" + else + echo "Error: No file or directory found at s3://$BUCKET/$KEY" + exit 1 + fi + fi + fi +fi + +# Perform the download +if aws s3 cp "s3://$BUCKET/${KEY:+$KEY}" "$DOWNLOAD_PATH" $RECURSIVE; then + echo "Downloaded successfully." + if [[ -n "$RECURSIVE" ]]; then + open "$DOWNLOAD_FOLDER/$BUCKET" + else + open "$DOWNLOAD_FOLDER" + fi +else + echo "Download failed. Error code: $?" + exit 1 fi From 44fbfcc811c5b446ab272b8b8874a51f319fe85b Mon Sep 17 00:00:00 2001 From: lemorage Date: Thu, 19 Sep 2024 08:42:28 +0800 Subject: [PATCH 087/146] Add Rust docs web search --- commands/web-searches/images/rust.png | Bin 0 -> 4964 bytes commands/web-searches/search-rust-docs.sh | 24 ++++++++++++++++++++++ 2 files changed, 24 insertions(+) create mode 100644 commands/web-searches/images/rust.png create mode 100755 commands/web-searches/search-rust-docs.sh diff --git a/commands/web-searches/images/rust.png b/commands/web-searches/images/rust.png new file mode 100644 index 0000000000000000000000000000000000000000..1eaa7709d12eab587139c23898ed6a0cec92e698 GIT binary patch literal 4964 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 iUKZc Date: Fri, 20 Sep 2024 10:01:43 +0000 Subject: [PATCH 088/146] Update Script Commands documentation --- commands/README.md | 1 + commands/extensions.json | 46 ++++++++++++++++++++++++++++++++-------- 2 files changed, 38 insertions(+), 9 deletions(-) diff --git a/commands/README.md b/commands/README.md index 139e092b3..54e0b73e7 100644 --- a/commands/README.md +++ b/commands/README.md @@ -1608,6 +1608,7 @@ This repository contains sample commands and documentation to write your own one | | [Search PHP Docs](web-searches/search-php-docs.sh) | Search [PHP official documentation](https://www.php.net/docs.php). | [Caleb Stauffer](https://github.com/crstauf) | ✅ | | | | | [Search Python 3 Documentation](web-searches/search-python3-docs.sh) | Search Python 3 Documentation | [Lucas Costa](https://github.com/lucasrcosta) | ✅ | | | | | [Search Python Package Index (PyPI)](web-searches/search-pypi.sh) | Search Python Package Index (PyPI) | [Lucas Costa](https://github.com/lucasrcosta) | ✅ | | | + | | [Search Rust Documentation](web-searches/search-rust-docs.sh) | Search Rust documentation | [lemorage](https://raycast.com/lemorage) | ✅ | | | | | [Search Script Command](web-searches/search-script-command-marketplace.sh) | Search for Script Commands in the [Unofficial Raycast Script Commands Marketplace](https://scriptcommands.com). | [Alexandru Turcanu](https://github.com/Pondorasti) | ✅ | | | | | [Search Swift Code](web-searches/search-swift-github.sh) | N/A | Raycast | ✅ | | | | | [Search Unsplash](web-searches/search-unsplash.sh) | Search [Unsplash](https://unsplash.com). | [Caleb Stauffer](https://github.com/crstauf) | ✅ | | | diff --git a/commands/extensions.json b/commands/extensions.json index 89e3b873e..6b22b9324 100644 --- a/commands/extensions.json +++ b/commands/extensions.json @@ -10687,7 +10687,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "S3 Download", - "updatedAt" : "2024-06-14T12:34:01Z" + "updatedAt" : "2024-09-17T11:36:59+02:00" }, { "authors" : [ @@ -13889,6 +13889,34 @@ "title" : "Search LinkedIn", "updatedAt" : "2021-01-24T20:18:06Z" }, + { + "authors" : [ + { + "name" : "lemorage", + "url" : "https:\/\/raycast.com\/lemorage" + } + ], + "createdAt" : "2024-09-19T08:42:28+08:00", + "currentDirectoryPath" : null, + "description" : "Search Rust documentation", + "filename" : "search-rust-docs.sh", + "hasArguments" : true, + "icon" : { + "dark" : null, + "light" : "images\/rust.png" + }, + "identifier" : "2f4472d80148aaadabf915529d6f68c9", + "isTemplate" : false, + "language" : "bash", + "mode" : "silent", + "needsConfirmation" : null, + "packageName" : "Web Searches", + "path" : "web-searches\/", + "refreshTime" : null, + "schemaVersion" : 1, + "title" : "Search Rust Documentation", + "updatedAt" : "2024-09-19T08:42:28+08:00" + }, { "authors" : [ { @@ -23815,9 +23843,9 @@ ], "languages" : [ { - "displayName" : "Node", - "icon" : "icon-nodejs.png", - "name" : "node" + "displayName" : "AppleScript", + "icon" : "icon-applescript.png", + "name" : "applescript" }, { "displayName" : "Python", @@ -23840,14 +23868,14 @@ "name" : "swift" }, { - "displayName" : "AppleScript", - "icon" : "icon-applescript.png", - "name" : "applescript" + "displayName" : "Node", + "icon" : "icon-nodejs.png", + "name" : "node" } ], "metadata" : [ ], - "totalScriptCommands" : 828, - "updatedAt" : "2024-09-03T11:24:41Z" + "totalScriptCommands" : 829, + "updatedAt" : "2024-09-20T10:00:46Z" } \ No newline at end of file From 51a84ead20bbd2b1c3f441c0c0715de2fe7e0d5d Mon Sep 17 00:00:00 2001 From: Samuel Barton <31374086+samueldbarton@users.noreply.github.com> Date: Mon, 18 Nov 2024 09:32:56 -0600 Subject: [PATCH 089/146] Add CAGR calculation script within math folder (#965) * Add CAGR calculation script within math folder. * Update calculate-CAGR.sh with descriptive naming Co-authored-by: Thiago Holanda --------- Co-authored-by: Thiago Holanda --- commands/math/calculate-CAGR.sh | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100755 commands/math/calculate-CAGR.sh diff --git a/commands/math/calculate-CAGR.sh b/commands/math/calculate-CAGR.sh new file mode 100755 index 000000000..671876a94 --- /dev/null +++ b/commands/math/calculate-CAGR.sh @@ -0,0 +1,23 @@ +#!/bin/bash + +# Required parameters: +# @raycast.schemaVersion 1 +# @raycast.title Calculate CAGR Percentage +# @raycast.mode compact +# @raycast.packageName Math + +# Optional parameters: +# @raycast.argument1 { "type": "text", "placeholder": "From" } +# @raycast.argument2 { "type": "text", "placeholder": "To" } +# @raycast.argument3 { "type": "text", "placeholder": "Years" } + +# Documentation: +# @raycast.author Samuel Barton +# @raycast.authorURL https://github.com/samueldbarton +# @raycast.description Calculate the CAGR between "from" and "to" values over given "years," then copy the result. + +CAGR=$(echo "scale=4; e( l($2 / $1) / $3 ) - 1" | bc -l) +CAGR=$(echo "scale=2; $CAGR * 100" | bc -l) +CAGR=$(printf "%.2f" "$CAGR") +echo "$CAGR" | pbcopy +echo "The CAGR from $1 to $2 over $3 years is $CAGR%. CAGR copied to clipboard." \ No newline at end of file From 315385d1182cd558a3e88c20c69c8caa1eb9d0e7 Mon Sep 17 00:00:00 2001 From: Angelos Michalopoulos Date: Mon, 18 Nov 2024 17:33:08 +0200 Subject: [PATCH 090/146] Add OPT command (One-Time Password) in system folder (#966) * Add otp command * apply required fixes --- commands/system/otp.sh | 51 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100755 commands/system/otp.sh diff --git a/commands/system/otp.sh b/commands/system/otp.sh new file mode 100755 index 000000000..830ba3ded --- /dev/null +++ b/commands/system/otp.sh @@ -0,0 +1,51 @@ +#!/bin/bash + +# Dependency: This script requires `apw`, `jq` and `awk` to be installed and in $PATH +# +# Required parameters: +# @raycast.schemaVersion 1 +# @raycast.title One-Time Password +# @raycast.mode silent +# +# Optional parameters: +# @raycast.icon 🔑 +# @raycast.packageName System +# @raycast.argument1 { "type": "text", "placeholder": "Domain" } +# @raycast.argument2 { "type": "text", "placeholder": "Username Index", "optional": true } +# +# @raycast.description Get One-Time Password (OTP) from Apple Password Manager +# @raycast.author Angelos Michalopoulos +# @raycase.authorURL https://github.com/miagg + +if ! command -v apw &> /dev/null || ! command -v jq &> /dev/null || ! command -v awk &> /dev/null; then + echo "This function requires apw, jq and awk to be installed" + exit 1 +fi +UINDEX=$((${2:-1} - 1)) +CODES=$(apw otp get "$1" 2>/dev/null) +STATUS=$? +# ✋ If return code 9, not authenticated, run apw auth +if [ $STATUS -eq 9 ]; then + echo "Please authenticate first by running 'apw auth'" + exit 1 +fi +# ✋ If return code 3, domain not found, alert user +if [ $STATUS -eq 3 ]; then + echo "Domain $1 not found" + exit 1 +fi +# Grab available OTP codes for domain +CODES_COUNT=$(echo $CODES | jq '.results | length') +if [ $CODES_COUNT -gt 1 ]; then + CODE=$(echo $CODES | jq -r ".results[$UINDEX].code") + USERNAME=$(echo $CODES | jq -r ".results[$UINDEX].username") + if [ "$CODE" == "null" ]; then + echo "Please provide an index between 1 and $CODES_COUNT" + exit 1 + fi +else + CODE=$(echo $CODES | jq -r '.results[0].code') + USERNAME=$(echo $CODES | jq -r ".results[0].username") +fi +echo $CODE | pbcopy +echo "OTP code for $USERNAME copied to clipboard" \ No newline at end of file From 0cc57e117e7b4425b83d2b5ca98c69dea30a2ee0 Mon Sep 17 00:00:00 2001 From: "nohz.afk" <149959021+nohzafk@users.noreply.github.com> Date: Sun, 24 Nov 2024 04:45:52 +0100 Subject: [PATCH 091/146] add lowfi command --- commands/media/lowfi/lowfi.sh | 47 +++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 commands/media/lowfi/lowfi.sh diff --git a/commands/media/lowfi/lowfi.sh b/commands/media/lowfi/lowfi.sh new file mode 100644 index 000000000..a789ab35d --- /dev/null +++ b/commands/media/lowfi/lowfi.sh @@ -0,0 +1,47 @@ +#!/bin/bash + +# Required parameters: +# @raycast.schemaVersion 1 +# @raycast.title Lowfi +# @raycast.mode compact +# @raycast.packageName Music + +# Optional parameters: +# @raycast.icon + +export PATH="$HOME/.cargo/bin:$PATH" + +# Check if lowfi is already running +if pgrep -f "lowfi$" > /dev/null; then + echo "Found existing lowfi process" + + # Use AppleScript to find and focus the lowfi window + osascript -e ' + -- First activate WezTerm application + tell application "WezTerm" to activate + + -- Then focus the specific window + tell application "System Events" + tell process "wezterm-gui" + -- Get all windows + set allWindows to every window + repeat with w in allWindows + if title of w contains "lowfi" then + -- Try multiple methods to bring window to front + set frontmost to true + set value of attribute "AXMain" of w to true + perform action "AXRaise" of w + set position of w to {0, 40} + -- Click the window to ensure focus + click w + return "Found and focused lowfi window" + end if + end repeat + end tell + end tell + return "Could not find lowfi window" + ' +else + echo "Starting new lowfi instance" + /Applications/WezTerm.app/Contents/MacOS/wezterm start -- lowfi +fi From 4818187079a15d5ac352f380792ab92de88ef75e Mon Sep 17 00:00:00 2001 From: "nohz.afk" <149959021+nohzafk@users.noreply.github.com> Date: Sun, 24 Nov 2024 04:54:58 +0100 Subject: [PATCH 092/146] add dependency description --- commands/media/lowfi/lowfi.sh | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/commands/media/lowfi/lowfi.sh b/commands/media/lowfi/lowfi.sh index a789ab35d..193154e65 100644 --- a/commands/media/lowfi/lowfi.sh +++ b/commands/media/lowfi/lowfi.sh @@ -1,5 +1,9 @@ #!/bin/bash +# Note: WezTerm required +# Install at https://wezfurlong.org/wezterm/install/macos.html +# or by homebrew: brew install --cask wezterm + # Required parameters: # @raycast.schemaVersion 1 # @raycast.title Lowfi From 3b568275a73367a53736c1f5131cb20f2b53a0ab Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Per=20Nielsen=20Tik=C3=A6r?= Date: Wed, 4 Dec 2024 11:51:11 +0100 Subject: [PATCH 093/146] Update README.md --- commands/README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/commands/README.md b/commands/README.md index 54e0b73e7..031f1896d 100644 --- a/commands/README.md +++ b/commands/README.md @@ -1609,7 +1609,7 @@ This repository contains sample commands and documentation to write your own one | | [Search Python 3 Documentation](web-searches/search-python3-docs.sh) | Search Python 3 Documentation | [Lucas Costa](https://github.com/lucasrcosta) | ✅ | | | | | [Search Python Package Index (PyPI)](web-searches/search-pypi.sh) | Search Python Package Index (PyPI) | [Lucas Costa](https://github.com/lucasrcosta) | ✅ | | | | | [Search Rust Documentation](web-searches/search-rust-docs.sh) | Search Rust documentation | [lemorage](https://raycast.com/lemorage) | ✅ | | | - | | [Search Script Command](web-searches/search-script-command-marketplace.sh) | Search for Script Commands in the [Unofficial Raycast Script Commands Marketplace](https://scriptcommands.com). | [Alexandru Turcanu](https://github.com/Pondorasti) | ✅ | | | + | | [Search Script Command](web-searches/search-script-command-marketplace.sh) | Search for Script Commands in the [Unofficial Raycast Script Commands Marketplace](https://scriptcommands.alexandru.so/). | [Alexandru Turcanu](https://github.com/Pondorasti) | ✅ | | | | | [Search Swift Code](web-searches/search-swift-github.sh) | N/A | Raycast | ✅ | | | | | [Search Unsplash](web-searches/search-unsplash.sh) | Search [Unsplash](https://unsplash.com). | [Caleb Stauffer](https://github.com/crstauf) | ✅ | | | | | [Search WP Engine Installs](web-searches/search-wpengine-installs.sh) | Search [WP Engine](https://wpengine.com) installs. | [Caleb Stauffer](https://github.com/crstauf) | ✅ | | | @@ -1663,4 +1663,4 @@ This is a shared place and we're always looking for new Script Commands or other If you have anything cool to show, please send us a pull request. If we screwed something up, please report a bug. Join our [Slack community](https://www.raycast.com/community) -to brainstorm ideas with like-minded folks. \ No newline at end of file +to brainstorm ideas with like-minded folks. From 8ada7190df2e2270de520723cd0e3d796ec48e96 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Per=20Nielsen=20Tik=C3=A6r?= Date: Wed, 4 Dec 2024 11:52:04 +0100 Subject: [PATCH 094/146] Update search-script-command-marketplace.sh --- commands/web-searches/search-script-command-marketplace.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/commands/web-searches/search-script-command-marketplace.sh b/commands/web-searches/search-script-command-marketplace.sh index 9d0997592..5280ec224 100755 --- a/commands/web-searches/search-script-command-marketplace.sh +++ b/commands/web-searches/search-script-command-marketplace.sh @@ -9,7 +9,7 @@ # @raycast.icon images/marketplace-logo.png # @raycast.argument1 { "type": "text", "placeholder": "query"} # @raycast.packageName Web Searches -# @raycast.description Search for Script Commands in the [Unofficial Raycast Script Commands Marketplace](https://scriptcommands.com). +# @raycast.description Search for Script Commands in the [Unofficial Raycast Script Commands Marketplace](https://scriptcommands.alexandru.so). # Documentation: # @raycast.author Alexandru Turcanu From 7a05f446da2aa2b9a3c92397f43b2a816bad1b46 Mon Sep 17 00:00:00 2001 From: Grzegorz Krukowski Date: Wed, 4 Dec 2024 11:57:33 +0100 Subject: [PATCH 095/146] CI: update to macos-15 --- .github/workflows/script-commands.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/script-commands.yml b/.github/workflows/script-commands.yml index 6dd6f87d4..b54cbf527 100644 --- a/.github/workflows/script-commands.yml +++ b/.github/workflows/script-commands.yml @@ -6,7 +6,7 @@ on: jobs: scriptCommands: - runs-on: macos-12 + runs-on: macos-15 steps: - uses: actions/checkout@v4 From 795efa5ea33244241165c34fea01beebb429339a Mon Sep 17 00:00:00 2001 From: Grzegorz Krukowski Date: Wed, 4 Dec 2024 11:59:05 +0100 Subject: [PATCH 096/146] CI: update to Xcode 16.1 --- .github/workflows/script-commands.yml | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/.github/workflows/script-commands.yml b/.github/workflows/script-commands.yml index b54cbf527..e6b4b59b8 100644 --- a/.github/workflows/script-commands.yml +++ b/.github/workflows/script-commands.yml @@ -14,9 +14,7 @@ jobs: fetch-depth: 0 - name: Setup Xcode - uses: maxim-lobanov/setup-xcode@v1 - with: - xcode-version: 13.4.1 + uses: raycast/github-actions/setup-xcode@xcode-16.1.x - name: Setup GIT uses: raycast/github-actions/setup-git@v1.1.0 From 71d5c85dd5062b7083e5fc021a7b2bcde2ef9f0c Mon Sep 17 00:00:00 2001 From: Raycast Bot Date: Wed, 4 Dec 2024 11:00:32 +0000 Subject: [PATCH 097/146] Update Script Commands documentation --- commands/README.md | 8 ++-- commands/extensions.json | 89 ++++++++++++++++++++++++++++++++-------- 2 files changed, 76 insertions(+), 21 deletions(-) diff --git a/commands/README.md b/commands/README.md index 031f1896d..9251e8361 100644 --- a/commands/README.md +++ b/commands/README.md @@ -1157,6 +1157,7 @@ This repository contains sample commands and documentation to write your own one | Icon | Title | Description | Author | Args | Templ | Lang | | :--: | ----- | ----------- | :----: | :--: | :---: | :--: | + | | [Calculate CAGR Percentage](math/calculate-CAGR.sh) | Calculate the CAGR between "from" and "to" values over given "years," then copy the result. | [Samuel Barton](https://github.com/samueldbarton) | ✅ | | | | 📈 | [Calculate Growth %](math/calculate-growth.sh) | Calculate percentage increase between "from" and "to" values. | [Petr Nikolaev](https://github.com/pitnikola) | ✅ | | | | 🔢 | [Generate Random Number](math/random-number.sh) | Generate a number between a given range (inclusive) and then copy the value | [Matt Gleich](https://mattglei.ch) | ✅ | | | | 🧮 | [LaTeX Calculator](math/latex-calculator.py) | Evaluate LaTeX expressions and get the product copied to your clipboard | [Matt Gleich](https://mattglei.ch) | ✅ | | | @@ -1503,10 +1504,11 @@ This repository contains sample commands and documentation to write your own one | 🌵 | [Modify File Extension](system/modify-extension.sh) | Batch modify the file in the current directory or the specified extension of the selected file | [LokHsu](https://github.com/lokhsu) | ✅ | | | | 🗑 | [Move Desktop to Trash](system/move-desktop-to-trash.applescript) | Empty the desktop. | [Seypopi](https://github.com/Seypopi) | | | | | | [Move Downloads to Trash](system/move-downloads-to-trash.applescript) | N/A | Jax0rz | | | | - | | [Network Info](system/Network Info.sh) | N/A | [Kailash Yellareddy](https://github.com/kyellareddy) | | | | + | 🛜 | [Network Info](system/Network Info.sh) | N/A | [Kailash Yellareddy](https://github.com/kyellareddy) | | | | | 🌐 | [Network Quality](system/network-quality.sh) | N/A | [Archie Lacoin](https://github.com/pomdtr) and [LanikSJ](https://github.com/LanikSJ) | | | | | 📶 | [Network Status](system/network-status.sh) | Get current network connections. | [Alexandru Turcanu](https://github.com/Pondorasti) | | | | | 🖼 | [OCR](system/ocr.swift) | Use macOS Vision API Identification pictures, if it contain a QR code, Copy the QR code content to the clipboard, If do not include QR codes, identify text content and supplement to clipboard | [zhe](https://github.com/wmszhe) | | | | + | 🔑 | [One-Time Password](system/otp.sh) | Get One-Time Password (OTP) from Apple Password Manager | Angelos Michalopoulos | ✅ | | | | 📁 | [Open Folder](system/open-folder.sh) | Open a folder on macOS | [Bin Hua](https://github.com/hzb) | ✅ | | | | 📋 | [Open Image](system/open-image-from-clipboard.sh) | Open Image from Clipboard in Preview for OCR or other purposes. | [xxchan](https://github.com/xxchan) | | | | | 💁‍♂️ | [Open Last Download](system/open-last-download.swift) | Opens the last downloaded file. | Raycast | | | | @@ -1609,7 +1611,7 @@ This repository contains sample commands and documentation to write your own one | | [Search Python 3 Documentation](web-searches/search-python3-docs.sh) | Search Python 3 Documentation | [Lucas Costa](https://github.com/lucasrcosta) | ✅ | | | | | [Search Python Package Index (PyPI)](web-searches/search-pypi.sh) | Search Python Package Index (PyPI) | [Lucas Costa](https://github.com/lucasrcosta) | ✅ | | | | | [Search Rust Documentation](web-searches/search-rust-docs.sh) | Search Rust documentation | [lemorage](https://raycast.com/lemorage) | ✅ | | | - | | [Search Script Command](web-searches/search-script-command-marketplace.sh) | Search for Script Commands in the [Unofficial Raycast Script Commands Marketplace](https://scriptcommands.alexandru.so/). | [Alexandru Turcanu](https://github.com/Pondorasti) | ✅ | | | + | | [Search Script Command](web-searches/search-script-command-marketplace.sh) | Search for Script Commands in the [Unofficial Raycast Script Commands Marketplace](https://scriptcommands.alexandru.so). | [Alexandru Turcanu](https://github.com/Pondorasti) | ✅ | | | | | [Search Swift Code](web-searches/search-swift-github.sh) | N/A | Raycast | ✅ | | | | | [Search Unsplash](web-searches/search-unsplash.sh) | Search [Unsplash](https://unsplash.com). | [Caleb Stauffer](https://github.com/crstauf) | ✅ | | | | | [Search WP Engine Installs](web-searches/search-wpengine-installs.sh) | Search [WP Engine](https://wpengine.com) installs. | [Caleb Stauffer](https://github.com/crstauf) | ✅ | | | @@ -1663,4 +1665,4 @@ This is a shared place and we're always looking for new Script Commands or other If you have anything cool to show, please send us a pull request. If we screwed something up, please report a bug. Join our [Slack community](https://www.raycast.com/community) -to brainstorm ideas with like-minded folks. +to brainstorm ideas with like-minded folks. \ No newline at end of file diff --git a/commands/extensions.json b/commands/extensions.json index 6b22b9324..f88680d19 100644 --- a/commands/extensions.json +++ b/commands/extensions.json @@ -4027,6 +4027,31 @@ "title" : "LaTeX Calculator", "updatedAt" : "2022-02-04T10:14:08Z" }, + { + "authors" : [ + { + "name" : "Samuel Barton", + "url" : "https:\/\/github.com\/samueldbarton" + } + ], + "createdAt" : "2024-11-18T09:32:56-06:00", + "currentDirectoryPath" : null, + "description" : "Calculate the CAGR between \"from\" and \"to\" values over given \"years,\" then copy the result.", + "filename" : "calculate-CAGR.sh", + "hasArguments" : true, + "icon" : null, + "identifier" : "5acd1b95964396ecfbe1aee4841ddb0a", + "isTemplate" : false, + "language" : "bash", + "mode" : "compact", + "needsConfirmation" : null, + "packageName" : "Math", + "path" : "math\/", + "refreshTime" : null, + "schemaVersion" : 1, + "title" : "Calculate CAGR Percentage", + "updatedAt" : "2024-11-18T09:32:56-06:00" + }, { "authors" : [ { @@ -6727,6 +6752,34 @@ "title" : "Flush DNS", "updatedAt" : "2021-06-14T14:36:05-03:00" }, + { + "authors" : [ + { + "name" : "Angelos Michalopoulos", + "url" : null + } + ], + "createdAt" : "2024-11-18T17:33:08+02:00", + "currentDirectoryPath" : null, + "description" : "Get One-Time Password (OTP) from Apple Password Manager", + "filename" : "otp.sh", + "hasArguments" : true, + "icon" : { + "dark" : null, + "light" : "🔑" + }, + "identifier" : "7115fa08d182688291508d427a6ce246", + "isTemplate" : false, + "language" : "bash", + "mode" : "silent", + "needsConfirmation" : null, + "packageName" : "System", + "path" : "system\/", + "refreshTime" : null, + "schemaVersion" : 1, + "title" : "One-Time Password", + "updatedAt" : "2024-11-18T17:33:08+02:00" + }, { "authors" : [ { @@ -13758,7 +13811,7 @@ ], "createdAt" : "2021-07-13T21:10:54-07:00", "currentDirectoryPath" : null, - "description" : "Search for Script Commands in the [Unofficial Raycast Script Commands Marketplace](https:\/\/scriptcommands.com).", + "description" : "Search for Script Commands in the [Unofficial Raycast Script Commands Marketplace](https:\/\/scriptcommands.alexandru.so).", "filename" : "search-script-command-marketplace.sh", "hasArguments" : true, "icon" : { @@ -13775,7 +13828,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Search Script Command", - "updatedAt" : "2024-02-19T19:37:34-08:00" + "updatedAt" : "2024-12-04T11:52:04+01:00" }, { "authors" : [ @@ -23842,20 +23895,20 @@ } ], "languages" : [ - { - "displayName" : "AppleScript", - "icon" : "icon-applescript.png", - "name" : "applescript" - }, { "displayName" : "Python", "icon" : "icon-python.png", "name" : "python" }, { - "displayName" : "Ruby", - "icon" : "icon-ruby.png", - "name" : "ruby" + "displayName" : "Swift", + "icon" : "icon-swift.png", + "name" : "swift" + }, + { + "displayName" : "Node", + "icon" : "icon-nodejs.png", + "name" : "node" }, { "displayName" : "Bash", @@ -23863,19 +23916,19 @@ "name" : "bash" }, { - "displayName" : "Swift", - "icon" : "icon-swift.png", - "name" : "swift" + "displayName" : "AppleScript", + "icon" : "icon-applescript.png", + "name" : "applescript" }, { - "displayName" : "Node", - "icon" : "icon-nodejs.png", - "name" : "node" + "displayName" : "Ruby", + "icon" : "icon-ruby.png", + "name" : "ruby" } ], "metadata" : [ ], - "totalScriptCommands" : 829, - "updatedAt" : "2024-09-20T10:00:46Z" + "totalScriptCommands" : 831, + "updatedAt" : "2024-12-04T11:00:05Z" } \ No newline at end of file From 62522c65c79b18c53ffc0c526ff90c00daad0559 Mon Sep 17 00:00:00 2001 From: Chris Stadler <5268387+cstadler333@users.noreply.github.com> Date: Thu, 5 Dec 2024 12:33:50 +0100 Subject: [PATCH 098/146] allow only second argument - allow to omit first argument in favor of automatic "current location" - use api to allow origin and destination as separate optional arguments --- commands/web-searches/google-maps.sh | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/commands/web-searches/google-maps.sh b/commands/web-searches/google-maps.sh index 345205af0..d856d504b 100755 --- a/commands/web-searches/google-maps.sh +++ b/commands/web-searches/google-maps.sh @@ -14,10 +14,14 @@ first_argument=${1// /+} second_argument=${2// /+} -if [ "$1" = "" ]; then - open "https://www.google.com/maps" -elif [ "$2" = "" ]; then - open "https://www.google.com/maps/search/$first_argument" +if [ "$1" != "" ]; then + if [ "$2" = "" ]; then + open "https://www.google.com/maps/dir/?api=1&origin=$first_argument" + else + open "https://www.google.com/maps/dir/?api=1&origin=$first_argument&destination=$second_argument" + fi +elif [ "$1" = "" ] && [ "$2" != "" ]; then + open "https://www.google.com/maps/dir/?api=1&origin=Current+Location&destination=$second_argument" else - open "https://www.google.com/maps/dir/$first_argument/$second_argument" + open "https://www.google.com/maps" fi From 51f9f302dc8dfbe23fbd1bf2844cfdb5668c147d Mon Sep 17 00:00:00 2001 From: "nohz.afk" <149959021+nohzafk@users.noreply.github.com> Date: Fri, 6 Dec 2024 21:44:21 +0100 Subject: [PATCH 099/146] add instruction to install lowfi --- commands/media/lowfi/lowfi.sh | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/commands/media/lowfi/lowfi.sh b/commands/media/lowfi/lowfi.sh index 193154e65..39b83f8e5 100644 --- a/commands/media/lowfi/lowfi.sh +++ b/commands/media/lowfi/lowfi.sh @@ -1,7 +1,11 @@ #!/bin/bash -# Note: WezTerm required -# Install at https://wezfurlong.org/wezterm/install/macos.html +# Note: lowfi and WezTerm required +# +# Install lowfi at https://github.com/talwat/lowfi +# or by cargo: cargo install lowfi +# +# Install WezTerm at https://wezfurlong.org/wezterm/install/macos.html # or by homebrew: brew install --cask wezterm # Required parameters: @@ -18,7 +22,7 @@ export PATH="$HOME/.cargo/bin:$PATH" # Check if lowfi is already running if pgrep -f "lowfi$" > /dev/null; then echo "Found existing lowfi process" - + # Use AppleScript to find and focus the lowfi window osascript -e ' -- First activate WezTerm application From ad8406f63904d81cf51be7bfc87fb2e5acfb5df4 Mon Sep 17 00:00:00 2001 From: Dolev Hadar <6196971+dlvhdr@users.noreply.github.com> Date: Sun, 8 Dec 2024 04:32:07 -0800 Subject: [PATCH 100/146] Update dismiss-notifications.applescript to work on Sequoia --- .../system/dismiss-notifications.applescript | 24 +++++++++---------- 1 file changed, 11 insertions(+), 13 deletions(-) diff --git a/commands/system/dismiss-notifications.applescript b/commands/system/dismiss-notifications.applescript index 5b3b18ed3..ee6fe94e9 100755 --- a/commands/system/dismiss-notifications.applescript +++ b/commands/system/dismiss-notifications.applescript @@ -14,18 +14,16 @@ # @raycast.author benyn # @raycast.authorURL github.com/benyn -tell application "System Events" - tell process "NotificationCenter" - if not (window "Notification Center" exists) then return - set alertGroups to groups of first UI element of first scroll area of first group of window "Notification Center" - repeat with aGroup in alertGroups - try - perform (first action of aGroup whose name contains "Close" or name contains "Clear") - on error errMsg - log errMsg - end try +tell application "System Events" to tell application process "NotificationCenter" + try + repeat with uiElement in (actions of UI elements of scroll area 1 of group 1 of group 1 of window "Notification Center" of application process "NotificationCenter" of application "System Events") + if description of uiElement contains "Close" then + perform uiElement + end if + if description of uiElement contains "Clear" then + perform uiElement + end if end repeat - -- Show no message on success - return "" - end tell + return "" + end try end tell From 43da0f69ae4074a359aac60c58a34a92e5b6f77e Mon Sep 17 00:00:00 2001 From: Dolev Hadar <6196971+dlvhdr@users.noreply.github.com> Date: Mon, 9 Dec 2024 09:05:58 -0800 Subject: [PATCH 101/146] Update dismiss-notifications.applescript --- commands/system/dismiss-notifications.applescript | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/commands/system/dismiss-notifications.applescript b/commands/system/dismiss-notifications.applescript index ee6fe94e9..c19a01a0a 100755 --- a/commands/system/dismiss-notifications.applescript +++ b/commands/system/dismiss-notifications.applescript @@ -11,8 +11,8 @@ # Documentation: # @raycast.description Close all notification alerts staying on screen, e.g., Calendar notifications. -# @raycast.author benyn -# @raycast.authorURL github.com/benyn +# @raycast.author dlvhdr +# @raycast.authorURL github.com/dlvhdr tell application "System Events" to tell application process "NotificationCenter" try From 1fe320e013f43c103dce411df1bbbb6615630619 Mon Sep 17 00:00:00 2001 From: Raycast Bot Date: Tue, 10 Dec 2024 08:14:26 +0000 Subject: [PATCH 102/146] Update Script Commands documentation --- commands/README.md | 2 +- commands/extensions.json | 36 ++++++++++++++++++------------------ 2 files changed, 19 insertions(+), 19 deletions(-) diff --git a/commands/README.md b/commands/README.md index 9251e8361..490120733 100644 --- a/commands/README.md +++ b/commands/README.md @@ -1486,7 +1486,7 @@ This repository contains sample commands and documentation to write your own one | ☕️ | [Disable Caffeinate](system/caffeinate-disable.sh) | Stops all caffeinate sessions | [Yan Smaliak](https://github.com/ysmaliak) | | | | | 💾 | [Disk Free](system/disk-free.sh) | Show free space in your mounted disks | [Juan Luis Romero](https://github.com/JuanluR8) | | | | | 💿 | [Disk Usage](system/disk-usage.sh) | Show disk usage for / (root) | [Jesse Claven](https://github.com/jesse-c) | | | | - | 🔕 | [Dismiss Notifications](system/dismiss-notifications.applescript) | Close all notification alerts staying on screen, e.g., Calendar notifications. | [benyn](github.com/benyn) | | | | + | 🔕 | [Dismiss Notifications](system/dismiss-notifications.applescript) | Close all notification alerts staying on screen, e.g., Calendar notifications. | [dlvhdr](github.com/dlvhdr) | | | | | 🔕 | [Do Not Disturb](system/do-not-disturb.sh) | Do Not Disturb | [Antonio Dal Sie](https://github.com/exodusanto) | ✅ | | | | 🤖 | [Dock Position](system/dock-set-position.sh) | Set the position of the Dock in the screen | [Jelte Lagendijk](https://raycast.com/j3lte) | ✅ | | | | 🤖 | [Dock Set Autohide](system/dock-set-autohide.sh) | Set the Dock autohide | [Jelte Lagendijk](https://raycast.com/j3lte) | ✅ | | | diff --git a/commands/extensions.json b/commands/extensions.json index f88680d19..ce8314d1e 100644 --- a/commands/extensions.json +++ b/commands/extensions.json @@ -5012,8 +5012,8 @@ { "authors" : [ { - "name" : "benyn", - "url" : "github.com\/benyn" + "name" : "dlvhdr", + "url" : "github.com\/dlvhdr" } ], "createdAt" : "2023-05-06T14:02:11-07:00", @@ -5035,7 +5035,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Dismiss Notifications", - "updatedAt" : "2023-05-08T06:42:50Z" + "updatedAt" : "2024-12-09T09:05:58-08:00" }, { "authors" : [ @@ -13800,7 +13800,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Search Google Maps", - "updatedAt" : "2022-11-17T10:35:57+01:00" + "updatedAt" : "2024-12-05T12:33:50+01:00" }, { "authors" : [ @@ -23895,40 +23895,40 @@ } ], "languages" : [ - { - "displayName" : "Python", - "icon" : "icon-python.png", - "name" : "python" - }, - { - "displayName" : "Swift", - "icon" : "icon-swift.png", - "name" : "swift" - }, { "displayName" : "Node", "icon" : "icon-nodejs.png", "name" : "node" }, + { + "displayName" : "AppleScript", + "icon" : "icon-applescript.png", + "name" : "applescript" + }, { "displayName" : "Bash", "icon" : "icon-bash.png", "name" : "bash" }, { - "displayName" : "AppleScript", - "icon" : "icon-applescript.png", - "name" : "applescript" + "displayName" : "Python", + "icon" : "icon-python.png", + "name" : "python" }, { "displayName" : "Ruby", "icon" : "icon-ruby.png", "name" : "ruby" + }, + { + "displayName" : "Swift", + "icon" : "icon-swift.png", + "name" : "swift" } ], "metadata" : [ ], "totalScriptCommands" : 831, - "updatedAt" : "2024-12-04T11:00:05Z" + "updatedAt" : "2024-12-10T08:13:59Z" } \ No newline at end of file From d8fc64ce1d356f11c5e1a46383bc1237c68031f6 Mon Sep 17 00:00:00 2001 From: "nohz.afk" <149959021+nohzafk@users.noreply.github.com> Date: Wed, 11 Dec 2024 20:56:18 +0100 Subject: [PATCH 103/146] use background execution (&) when starting WezTerm to allow the script to continue --- commands/media/lowfi/lowfi.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/commands/media/lowfi/lowfi.sh b/commands/media/lowfi/lowfi.sh index 39b83f8e5..04248cf5c 100644 --- a/commands/media/lowfi/lowfi.sh +++ b/commands/media/lowfi/lowfi.sh @@ -51,5 +51,5 @@ if pgrep -f "lowfi$" > /dev/null; then ' else echo "Starting new lowfi instance" - /Applications/WezTerm.app/Contents/MacOS/wezterm start -- lowfi + /Applications/WezTerm.app/Contents/MacOS/wezterm start -- lowfi & fi From eb472c208c38e63c5f2d33605b63df17b51ef65f Mon Sep 17 00:00:00 2001 From: Raycast Bot Date: Wed, 11 Dec 2024 20:08:12 +0000 Subject: [PATCH 104/146] Set scripts as executable --- commands/media/lowfi/lowfi.sh | 0 1 file changed, 0 insertions(+), 0 deletions(-) mode change 100644 => 100755 commands/media/lowfi/lowfi.sh diff --git a/commands/media/lowfi/lowfi.sh b/commands/media/lowfi/lowfi.sh old mode 100644 new mode 100755 From 789b2f90ecb65280c36f46b0e79364b053525f81 Mon Sep 17 00:00:00 2001 From: Raycast Bot Date: Wed, 11 Dec 2024 20:08:41 +0000 Subject: [PATCH 105/146] Update Script Commands documentation --- commands/README.md | 7 +++++ commands/extensions.json | 56 +++++++++++++++++++++++++++++----------- 2 files changed, 48 insertions(+), 15 deletions(-) diff --git a/commands/README.md b/commands/README.md index 490120733..1bad1683c 100644 --- a/commands/README.md +++ b/commands/README.md @@ -135,6 +135,7 @@ This repository contains sample commands and documentation to write your own one - [Apple Tv](#apple-tv) - [Cmus](#cmus) - [Endel](#endel) + - [Lowfi](#lowfi) - [Sonos](#sonos) - [Speaker Setup](#speaker-setup) - [Spotify](#spotify) @@ -1231,6 +1232,12 @@ This repository contains sample commands and documentation to write your own one | | [Workout](media/endel/endel-scenarios-workout.sh) | Run Workout scenario at Endel | [Sergey Korobyin](https://github.com/huangsemao) | ✅ | | | | | [Yoga](media/endel/endel-scenarios-yoga.sh) | Run Yoga scenario at Endel | [Sergey Korobyin](https://github.com/huangsemao) | ✅ | | | +#### Lowfi + +| Icon | Title | Description | Author | Args | Templ | Lang | +| :--: | ----- | ----------- | :----: | :--: | :---: | :--: | + | | [Lowfi](media/lowfi/lowfi.sh) | N/A | Raycast | | | | + #### Sonos | Icon | Title | Description | Author | Args | Templ | Lang | diff --git a/commands/extensions.json b/commands/extensions.json index ce8314d1e..b4f491ba6 100644 --- a/commands/extensions.json +++ b/commands/extensions.json @@ -23480,6 +23480,32 @@ } ] }, + { + "name" : "Lowfi", + "path" : "lowfi", + "scriptCommands" : [ + { + "authors" : null, + "createdAt" : "2024-11-24T04:45:52+01:00", + "currentDirectoryPath" : null, + "description" : null, + "filename" : "lowfi.sh", + "hasArguments" : false, + "icon" : null, + "identifier" : "afcc05d7a53abe6543c98f59f23bb7e5", + "isTemplate" : false, + "language" : "bash", + "mode" : "compact", + "needsConfirmation" : null, + "packageName" : "Music", + "path" : "media\/lowfi\/", + "refreshTime" : null, + "schemaVersion" : 1, + "title" : "Lowfi", + "updatedAt" : "2024-12-11T20:08:12Z" + } + ] + }, { "name" : "Apple Tv", "path" : "apple-tv", @@ -23895,30 +23921,30 @@ } ], "languages" : [ + { + "displayName" : "Ruby", + "icon" : "icon-ruby.png", + "name" : "ruby" + }, + { + "displayName" : "Python", + "icon" : "icon-python.png", + "name" : "python" + }, { "displayName" : "Node", "icon" : "icon-nodejs.png", "name" : "node" }, - { - "displayName" : "AppleScript", - "icon" : "icon-applescript.png", - "name" : "applescript" - }, { "displayName" : "Bash", "icon" : "icon-bash.png", "name" : "bash" }, { - "displayName" : "Python", - "icon" : "icon-python.png", - "name" : "python" - }, - { - "displayName" : "Ruby", - "icon" : "icon-ruby.png", - "name" : "ruby" + "displayName" : "AppleScript", + "icon" : "icon-applescript.png", + "name" : "applescript" }, { "displayName" : "Swift", @@ -23929,6 +23955,6 @@ "metadata" : [ ], - "totalScriptCommands" : 831, - "updatedAt" : "2024-12-10T08:13:59Z" + "totalScriptCommands" : 832, + "updatedAt" : "2024-12-11T20:08:12Z" } \ No newline at end of file From 6ae833ade3630173de63a3a5f4a34a37b060411f Mon Sep 17 00:00:00 2001 From: StepaniaH Date: Mon, 16 Dec 2024 23:44:40 +0800 Subject: [PATCH 106/146] Add a new script of rename-vedios-pictures.py --- commands/system/rename-vedios-pictures.py | 114 ++++++++++++++++++++++ 1 file changed, 114 insertions(+) create mode 100755 commands/system/rename-vedios-pictures.py diff --git a/commands/system/rename-vedios-pictures.py b/commands/system/rename-vedios-pictures.py new file mode 100755 index 000000000..16bb46d70 --- /dev/null +++ b/commands/system/rename-vedios-pictures.py @@ -0,0 +1,114 @@ +#!/usr/bin/env python3 + +# Required parameters: +# @raycast.schemaVersion 1 +# @raycast.title Rename Video +# @raycast.mode fullOutput + +# Optional parameters: +# @raycast.icon 📂 +# @raycast.argument1 { "type": "text", "placeholder": "Placeholder" } + +# Documentation: +# @raycast.description This is a simple Python script for recursively renaming video and picture files within a directory. Type the root directory's absolute path, and it will scan all the video and picture files in it and rename them according to the folder where they are located as the format `--`. +# @raycast.author StepaniaH +# @raycast.authorURL https://github.com/StepaniaH + +import os +import sys +import datetime +import argparse +import re + +class RenameFilesAsDate: + def __init__(self, root_directory): + self.root_directory = os.path.expanduser(root_directory) + self.error_files = {} + self.video_extensions = ('.mp4', '.avi', '.mov', '.mkv', '.wmv') + self.image_extensions = ('.jpg', '.jpeg', '.png', '.gif', 'webp') + + def rename_files(self, file_type='all', dry_run=False): + current_date = datetime.datetime.now().strftime("%m%d") + self._process_directory(self.root_directory, current_date, file_type, dry_run) + + if self.error_files: + print("\nThe following files could not be renamed:") + for original_path, error in self.error_files.items(): + print(f"{original_path}: {error}") + + def _is_already_renamed(self, filename, current_date): + """Check if the file has been named according to the target format""" + base_name = os.path.splitext(filename)[0] + pattern = re.compile(f'^.*-{current_date}-\\d{{2}}$') + return bool(pattern.match(base_name)) + + def _get_max_sequence_number(self, directory, current_date): + """Get the largest serial number existing in the current directory""" + max_seq = 0 + pattern = re.compile(f'^.*-{current_date}-(\\d{{2}}).*$') + + for entry in os.listdir(directory): + match = pattern.match(os.path.splitext(entry)[0]) + if match: + seq_num = int(match.group(1)) + max_seq = max(max_seq, seq_num) + return max_seq + + def _process_directory(self, directory, current_date, file_type, dry_run): + folder_name = os.path.basename(directory) + supported_extensions = self._get_supported_extensions(file_type) + + # First collect the files that need to be renamed + files_to_rename = [] + for entry in os.listdir(directory): + entry_path = os.path.join(directory, entry) + + if os.path.isfile(entry_path): + if entry.lower().endswith(supported_extensions): + if not self._is_already_renamed(entry, current_date): + files_to_rename.append(entry) + elif os.path.isdir(entry_path): + self._process_directory(entry_path, current_date, file_type, dry_run) + + if files_to_rename: + # Get the largest serial number existing in the current directory + count = self._get_max_sequence_number(directory, current_date) + 1 + + # Rename collected files + for entry in sorted(files_to_rename): # Sort to ensure consistent rename order + entry_path = os.path.join(directory, entry) + new_name = f"{folder_name}-{current_date}-{count:02d}{os.path.splitext(entry)[1].lower()}" + new_path = os.path.join(directory, new_name) + + if dry_run: + print(f"Would rename: {entry} -> {new_name}") + else: + try: + os.rename(entry_path, new_path) + print(f"Renamed: {entry} -> {new_name}") + except OSError as e: + self.error_files[entry_path] = f"Rename failed: {str(e)}" + continue + count += 1 + + def _get_supported_extensions(self, file_type): + if file_type == 'video': + return self.video_extensions + elif file_type == 'image': + return self.image_extensions + return self.video_extensions + self.image_extensions + +def main(): + parser = argparse.ArgumentParser(description='Rename video and image files with date pattern') + parser.add_argument('directory', help='Root directory to process') + parser.add_argument('--type', choices=['video', 'image', 'all'], + default='all', help='File type to process') + parser.add_argument('--dry-run', action='http://github.com/store_true', + help='Show what would be done without actually renaming') + + args = parser.parse_args() + renamer = RenameFilesAsDate(args.directory) + renamer.rename_files(args.type, args.dry_run) + +if __name__ == '__main__': + main() From 80a19a936648be08ec2dce1a9ae9cb319415479f Mon Sep 17 00:00:00 2001 From: StepaniaH Date: Wed, 18 Dec 2024 23:56:00 +0800 Subject: [PATCH 107/146] Fix some problems based on reviewer's comments. 1. Add some common formats of video and picture. 2. Calculate the number dynamically based on the amount of files to be renamed. 3. Fix the bugs of optional parameters. --- ...-pictures.py => rename-videos-pictures.py} | 45 ++++++++++++------- 1 file changed, 29 insertions(+), 16 deletions(-) rename commands/system/{rename-vedios-pictures.py => rename-videos-pictures.py} (78%) diff --git a/commands/system/rename-vedios-pictures.py b/commands/system/rename-videos-pictures.py similarity index 78% rename from commands/system/rename-vedios-pictures.py rename to commands/system/rename-videos-pictures.py index 16bb46d70..f4f25c862 100755 --- a/commands/system/rename-vedios-pictures.py +++ b/commands/system/rename-videos-pictures.py @@ -7,7 +7,9 @@ # Optional parameters: # @raycast.icon 📂 -# @raycast.argument1 { "type": "text", "placeholder": "Placeholder" } +# @raycast.argument1 { "type": "text", "placeholder": "Directory's absolute path", "optional": false } +# @raycast.argument2 { "type": "text", "placeholder": "Type (video/image/all)", "optional": true } +# @raycast.argument3 { "type": "text", "placeholder": "Dry Run (true/false)", "optional": true } # Documentation: # @raycast.description This is a simple Python script for recursively renaming video and picture files within a directory. Type the root directory's absolute path, and it will scan all the video and picture files in it and rename them according to the folder where they are located as the format `--`. @@ -24,8 +26,8 @@ class RenameFilesAsDate: def __init__(self, root_directory): self.root_directory = os.path.expanduser(root_directory) self.error_files = {} - self.video_extensions = ('.mp4', '.avi', '.mov', '.mkv', '.wmv') - self.image_extensions = ('.jpg', '.jpeg', '.png', '.gif', 'webp') + self.video_extensions = ('.mp4', '.avi', '.mov', '.mkv', '.wmv', '.flv', '.webm', '.m4v', '.3gp') + self.image_extensions = ('.jpg', '.jpeg', '.png', '.gif', '.webp', '.bmp', '.tiff', '.svg', '.heic') def rename_files(self, file_type='all', dry_run=False): current_date = datetime.datetime.now().strftime("%m%d") @@ -39,13 +41,13 @@ def rename_files(self, file_type='all', dry_run=False): def _is_already_renamed(self, filename, current_date): """Check if the file has been named according to the target format""" base_name = os.path.splitext(filename)[0] - pattern = re.compile(f'^.*-{current_date}-\\d{{2}}$') + pattern = re.compile(f'^.*-{current_date}-\\d+$') return bool(pattern.match(base_name)) def _get_max_sequence_number(self, directory, current_date): """Get the largest serial number existing in the current directory""" max_seq = 0 - pattern = re.compile(f'^.*-{current_date}-(\\d{{2}}).*$') + pattern = re.compile(f'^.*-{current_date}-(\\d+)$') for entry in os.listdir(directory): match = pattern.match(os.path.splitext(entry)[0]) @@ -73,11 +75,13 @@ def _process_directory(self, directory, current_date, file_type, dry_run): if files_to_rename: # Get the largest serial number existing in the current directory count = self._get_max_sequence_number(directory, current_date) + 1 + total_files = len(files_to_rename) + num_digits = len(str(total_files + count - 1)) # Rename collected files for entry in sorted(files_to_rename): # Sort to ensure consistent rename order entry_path = os.path.join(directory, entry) - new_name = f"{folder_name}-{current_date}-{count:02d}{os.path.splitext(entry)[1].lower()}" + new_name = f"{folder_name}-{current_date}-{count:0{num_digits}d}{os.path.splitext(entry)[1].lower()}" new_path = os.path.join(directory, new_name) if dry_run: @@ -99,16 +103,25 @@ def _get_supported_extensions(self, file_type): return self.video_extensions + self.image_extensions def main(): - parser = argparse.ArgumentParser(description='Rename video and image files with date pattern') - parser.add_argument('directory', help='Root directory to process') - parser.add_argument('--type', choices=['video', 'image', 'all'], - default='all', help='File type to process') - parser.add_argument('--dry-run', action='http://github.com/store_true', - help='Show what would be done without actually renaming') - - args = parser.parse_args() - renamer = RenameFilesAsDate(args.directory) - renamer.rename_files(args.type, args.dry_run) + args = sys.argv[1:] + + directory = None + file_type = 'all' + dry_run = False + + if len(args) >= 1: + directory = args[0] + if len(args) >= 2 and args[1]: + file_type = args[1] + if len(args) >= 3 and args[2]: + dry_run = args[2].lower() == 'true' + + if not directory: + print("Error: Directory argument is required.") + sys.exit(1) + + renamer = RenameFilesAsDate(directory) + renamer.rename_files(file_type, dry_run) if __name__ == '__main__': main() From 118d39043b1969d97e60dbbec309a783c2e59b2f Mon Sep 17 00:00:00 2001 From: Raycast Bot Date: Thu, 19 Dec 2024 16:00:52 +0000 Subject: [PATCH 108/146] Update Script Commands documentation --- commands/README.md | 1 + commands/extensions.json | 58 +++++++++++++++++++++++++++++----------- 2 files changed, 44 insertions(+), 15 deletions(-) diff --git a/commands/README.md b/commands/README.md index 1bad1683c..fff806e36 100644 --- a/commands/README.md +++ b/commands/README.md @@ -1523,6 +1523,7 @@ This repository contains sample commands and documentation to write your own one | 💥 | [Quit All Applications](system/quit-all-apps.swift) | Quits all running applications except Finder and Raycast. | Raycast | | | | | 💥 | [Quit app](system/quit-app.swift) | Quits an app, by name or process id. | [Roland Leth](https://runtimesharks.com) | ✅ | | | | 🖼️ | [Refresh Wallpaper](system/wallpaper-refresh.applescript) | Apply a random image from the [wallpaper directory](https://support.apple.com/guide/mac-help/change-your-desktop-picture-mchlp3013/mac) for the main display's current [Space](https://support.apple.com/guide/mac-help/work-in-multiple-spaces-mh14112/mac). | [Caleb Stauffer](https://github.com/crstauf) | | | | + | 📂 | [Rename Video](system/rename-videos-pictures.py) | This is a simple Python script for recursively renaming video and picture files within a directory. Type the root directory's absolute path, and it will scan all the video and picture files in it and rename them according to the folder where they are located as the format `--`. | [StepaniaH](https://github.com/StepaniaH) | ✅ | | | | 🚀 | [Reset Launchpad](system/reset-launchpad.sh) | Resets the macOS Launchpad to its default state | [Zach Dawson](https://raycast.com/zdawz) | | | | | ♻️ | [Restart](system/restart.applescript) | Restarts computer. | Raycast | | | | | 💀 | [Restart the Dock](system/restart-dock.sh) | Restart the Dock | [Jordi Clement](https://github.com/jordicl) | | | | diff --git a/commands/extensions.json b/commands/extensions.json index b4f491ba6..168895ac8 100644 --- a/commands/extensions.json +++ b/commands/extensions.json @@ -6035,6 +6035,34 @@ "title" : "Capture Screen Selection to Clipboard", "updatedAt" : "2021-08-07T19:28:35-07:00" }, + { + "authors" : [ + { + "name" : "StepaniaH", + "url" : "https:\/\/github.com\/StepaniaH" + } + ], + "createdAt" : "2024-12-16T23:44:40+08:00", + "currentDirectoryPath" : null, + "description" : "This is a simple Python script for recursively renaming video and picture files within a directory. Type the root directory's absolute path, and it will scan all the video and picture files in it and rename them according to the folder where they are located as the format `--`.", + "filename" : "rename-videos-pictures.py", + "hasArguments" : true, + "icon" : { + "dark" : null, + "light" : "📂" + }, + "identifier" : "360d8e4290996f7b2b40dc6e388e30f2", + "isTemplate" : false, + "language" : "python", + "mode" : "fullOutput", + "needsConfirmation" : null, + "packageName" : "Rename Videos Pictures", + "path" : "system\/", + "refreshTime" : null, + "schemaVersion" : 1, + "title" : "Rename Video", + "updatedAt" : "2024-12-18T23:56:00+08:00" + }, { "authors" : [ { @@ -23921,40 +23949,40 @@ } ], "languages" : [ - { - "displayName" : "Ruby", - "icon" : "icon-ruby.png", - "name" : "ruby" - }, { "displayName" : "Python", "icon" : "icon-python.png", "name" : "python" }, { - "displayName" : "Node", - "icon" : "icon-nodejs.png", - "name" : "node" + "displayName" : "Ruby", + "icon" : "icon-ruby.png", + "name" : "ruby" }, { "displayName" : "Bash", "icon" : "icon-bash.png", "name" : "bash" }, - { - "displayName" : "AppleScript", - "icon" : "icon-applescript.png", - "name" : "applescript" - }, { "displayName" : "Swift", "icon" : "icon-swift.png", "name" : "swift" + }, + { + "displayName" : "Node", + "icon" : "icon-nodejs.png", + "name" : "node" + }, + { + "displayName" : "AppleScript", + "icon" : "icon-applescript.png", + "name" : "applescript" } ], "metadata" : [ ], - "totalScriptCommands" : 832, - "updatedAt" : "2024-12-11T20:08:12Z" + "totalScriptCommands" : 833, + "updatedAt" : "2024-12-19T16:00:26Z" } \ No newline at end of file From 85d897b61b2509d84ae786b3d9136732e485e9d2 Mon Sep 17 00:00:00 2001 From: Sixeight Date: Thu, 23 Jan 2025 18:29:53 +0900 Subject: [PATCH 109/146] Add Random Emoji command --- commands/communication/emojis/random-emoji.sh | 30 +++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 commands/communication/emojis/random-emoji.sh diff --git a/commands/communication/emojis/random-emoji.sh b/commands/communication/emojis/random-emoji.sh new file mode 100644 index 000000000..9c326af5e --- /dev/null +++ b/commands/communication/emojis/random-emoji.sh @@ -0,0 +1,30 @@ +#!/usr/bin/env bash + +# Dependency: This script requires `jq` cli installed: https://stedolan.github.io/jq/ +# Install via homebrew: `brew install jq` + +# Required parameters: +# @raycast.schemaVersion 1 +# @raycast.title Random Emoji +# @raycast.mode silent +# @raycast.packageName Emojis + +# Optional parameters: +# @raycast.icon 🎲 + +# Documentation: +# @raycast.description Copy a random emoji to the clipboard. +# @raycast.author Tomohiro Nishimura +# @raycast.authorURL https://github.com/Sixeight + +LANG="en_US.UTF-8" + +if ! command -v jq &> /dev/null; then + echo "jq command is required (https://github.com/jqlang/jq)."; + exit 1; +fi + +mapfile -t EMOJIS < <(curl -s https://raw.githubusercontent.com/github/gemoji/master/db/emoji.json | jq -r '.[] | .emoji') +EMOJI="${EMOJIS[$RANDOM % ${#EMOJIS[@]}]}" +echo -n "$EMOJI" | pbcopy +echo "$EMOJI" From 63d5c3d075f15c99634c9d771b3b5bb9d303c897 Mon Sep 17 00:00:00 2001 From: Raycast Bot Date: Tue, 28 Jan 2025 15:23:28 +0000 Subject: [PATCH 110/146] Set scripts as executable --- commands/communication/emojis/random-emoji.sh | 0 1 file changed, 0 insertions(+), 0 deletions(-) mode change 100644 => 100755 commands/communication/emojis/random-emoji.sh diff --git a/commands/communication/emojis/random-emoji.sh b/commands/communication/emojis/random-emoji.sh old mode 100644 new mode 100755 From 312bc0134b6ec61921b6dc91c4dd9743a6637b55 Mon Sep 17 00:00:00 2001 From: Raycast Bot Date: Tue, 28 Jan 2025 15:23:53 +0000 Subject: [PATCH 111/146] Update Script Commands documentation --- commands/README.md | 1 + commands/extensions.json | 42 +++++++++++++++++++++++++++++++++------- 2 files changed, 36 insertions(+), 7 deletions(-) diff --git a/commands/README.md b/commands/README.md index fff806e36..50a88f52b 100644 --- a/commands/README.md +++ b/commands/README.md @@ -782,6 +782,7 @@ This repository contains sample commands and documentation to write your own one | Icon | Title | Description | Author | Args | Templ | Lang | | :--: | ----- | ----------- | :----: | :--: | :---: | :--: | + | 🎲 | [Random Emoji](communication/emojis/random-emoji.sh) | Copy a random emoji to the clipboard. | [Tomohiro Nishimura](https://github.com/Sixeight) | | | | | 📙 | [Search Emojis](communication/emojis/emojis-search.sh) | Search for emojis related to input. | [Caleb Stauffer](https://github.com/crstauf) | ✅ | | | | 📙 | [Search and Copy First Related Emoji](communication/emojis/emoji-copy.sh) | Copy first emoji related to input. | [Caleb Stauffer](https://github.com/crstauf) | ✅ | | | diff --git a/commands/extensions.json b/commands/extensions.json index 168895ac8..78f939727 100644 --- a/commands/extensions.json +++ b/commands/extensions.json @@ -12246,6 +12246,34 @@ "schemaVersion" : 1, "title" : "Search and Copy First Related Emoji", "updatedAt" : "2020-11-28T12:02:29-05:00" + }, + { + "authors" : [ + { + "name" : "Tomohiro Nishimura", + "url" : "https:\/\/github.com\/Sixeight" + } + ], + "createdAt" : "2025-01-23T18:29:53+09:00", + "currentDirectoryPath" : null, + "description" : "Copy a random emoji to the clipboard.", + "filename" : "random-emoji.sh", + "hasArguments" : false, + "icon" : { + "dark" : null, + "light" : "🎲" + }, + "identifier" : "52479cec0740642d40a8902ee5efa1fe", + "isTemplate" : false, + "language" : "bash", + "mode" : "silent", + "needsConfirmation" : null, + "packageName" : "Emojis", + "path" : "communication\/emojis\/", + "refreshTime" : null, + "schemaVersion" : 1, + "title" : "Random Emoji", + "updatedAt" : "2025-01-28T15:23:28Z" } ] }, @@ -23949,16 +23977,16 @@ } ], "languages" : [ - { - "displayName" : "Python", - "icon" : "icon-python.png", - "name" : "python" - }, { "displayName" : "Ruby", "icon" : "icon-ruby.png", "name" : "ruby" }, + { + "displayName" : "Python", + "icon" : "icon-python.png", + "name" : "python" + }, { "displayName" : "Bash", "icon" : "icon-bash.png", @@ -23983,6 +24011,6 @@ "metadata" : [ ], - "totalScriptCommands" : 833, - "updatedAt" : "2024-12-19T16:00:26Z" + "totalScriptCommands" : 834, + "updatedAt" : "2025-01-28T15:23:28Z" } \ No newline at end of file From 66fe9ab87e86baafc8fed2a2ba275431a998c6b3 Mon Sep 17 00:00:00 2001 From: Andrii Barabash Date: Mon, 10 Mar 2025 00:16:14 +0100 Subject: [PATCH 112/146] Added sleep timer script command --- commands/system/sleep-timer.applescript | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100755 commands/system/sleep-timer.applescript diff --git a/commands/system/sleep-timer.applescript b/commands/system/sleep-timer.applescript new file mode 100755 index 000000000..8cd9ae4ee --- /dev/null +++ b/commands/system/sleep-timer.applescript @@ -0,0 +1,22 @@ +#!/usr/bin/osascript + +# Required parameters: +# @raycast.schemaVersion 1 +# @raycast.title Sleep Timer +# @raycast.mode silent +# @raycast.description Put your Mac to sleep (in X minutes). +# @raycast.packageName System + +# Optional parameters: +# @raycast.icon 😴 +# @raycast.argument1 { "optional": true, "type": "text", "placeholder": "(in) minutes" } + +# Documentation: +# @raycast.author AndriiBarabash +# @raycast.authorURL https://github.com/AndriiBarabash + +on run argv + delay (item 1 of argv) * 60 + tell application "Finder" to sleep +end run + From c99075e80b5796677dc863b0e22a147cc2cba36a Mon Sep 17 00:00:00 2001 From: Andrii Barabash Date: Mon, 10 Mar 2025 10:57:38 +0100 Subject: [PATCH 113/146] Added sleep timer script command (#985) --- commands/system/sleep-timer.applescript | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100755 commands/system/sleep-timer.applescript diff --git a/commands/system/sleep-timer.applescript b/commands/system/sleep-timer.applescript new file mode 100755 index 000000000..8cd9ae4ee --- /dev/null +++ b/commands/system/sleep-timer.applescript @@ -0,0 +1,22 @@ +#!/usr/bin/osascript + +# Required parameters: +# @raycast.schemaVersion 1 +# @raycast.title Sleep Timer +# @raycast.mode silent +# @raycast.description Put your Mac to sleep (in X minutes). +# @raycast.packageName System + +# Optional parameters: +# @raycast.icon 😴 +# @raycast.argument1 { "optional": true, "type": "text", "placeholder": "(in) minutes" } + +# Documentation: +# @raycast.author AndriiBarabash +# @raycast.authorURL https://github.com/AndriiBarabash + +on run argv + delay (item 1 of argv) * 60 + tell application "Finder" to sleep +end run + From 68acedb381b6a3f3ab967748d740ce0e37c7799f Mon Sep 17 00:00:00 2001 From: Grzegorz Krukowski Date: Mon, 10 Mar 2025 14:49:05 +0100 Subject: [PATCH 114/146] CI: fix script-commands SOC2 commits (fixes RAY-16840) --- .github/workflows/script-commands.yml | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/.github/workflows/script-commands.yml b/.github/workflows/script-commands.yml index e6b4b59b8..cd5dea05f 100644 --- a/.github/workflows/script-commands.yml +++ b/.github/workflows/script-commands.yml @@ -3,6 +3,9 @@ name: Set as Executable and Generate Documentation on: push: branches: [master] + paths-ignore: + - commands/README.md + - commands/extensions.json jobs: scriptCommands: @@ -12,6 +15,7 @@ jobs: - uses: actions/checkout@v4 with: fetch-depth: 0 + token: ${{ secrets.PERSONAL_ACCESS_TOKEN }} - name: Setup Xcode uses: raycast/github-actions/setup-xcode@xcode-16.1.x @@ -40,7 +44,7 @@ jobs: uses: ad-m/github-push-action@master with: branch: ${{ github.ref }} - github_token: ${{ secrets.GITHUB_TOKEN }} + github_token: ${{ secrets.PERSONAL_ACCESS_TOKEN }} - name: Notify Failure if: failure() From 07f691bd1cd39750535aa150e22613f3b5175ed2 Mon Sep 17 00:00:00 2001 From: Raycast Bot Date: Mon, 10 Mar 2025 13:53:44 +0000 Subject: [PATCH 115/146] Update Script Commands documentation --- commands/README.md | 1 + commands/extensions.json | 48 +++++++++++++++++++++++++++++++--------- 2 files changed, 39 insertions(+), 10 deletions(-) diff --git a/commands/README.md b/commands/README.md index 50a88f52b..6583775b2 100644 --- a/commands/README.md +++ b/commands/README.md @@ -1536,6 +1536,7 @@ This repository contains sample commands and documentation to write your own one | 🧭 | [Set Frontmost App as Default Browser](system/default-browser-front-most-app.applescript) | Set Frontmost Web Browser as Default Browser. | [Yohanes Bandung Bondowoso](https://github.com/ybbond) | ✅ | | | | 🛌 | [Shut Down](system/shutdown.applescript) | Shuts down computer. | Raycast | | | | | 😴 | [Sleep](system/sleep.applescript) | Puts computer to sleep. | Raycast | | | | + | 😴 | [Sleep Timer](system/sleep-timer.applescript) | Put your Mac to sleep (in X minutes). | [AndriiBarabash](https://github.com/AndriiBarabash) | ✅ | | | | 🧬 | [Toggle .DS_Store](system/toggle-ds-store.applescript) | A script command to enable and disable .DS_Store | [Astrit](https://github.com/astrit) | | | | | 🔋 | [Toggle Battery Charging](system/toggle-battery-charging.sh) | Toggle charging the battery when it is plugged in. When turned off, it will always use the charger instead of the battery; when turned on, it will go to automatic mode (decide based on your settings and daily charging routine). | [Amir Hossein SamadiPour](https://github.com/SamadiPour) | | | | | | [Toggle Bluetooth](system/bluetooth.template.applescript) | Toggle your Bluetooth connection. | [Vincent Dörig](https://github.com/vincentdoerig) | | ✅ | | diff --git a/commands/extensions.json b/commands/extensions.json index 78f939727..334f316db 100644 --- a/commands/extensions.json +++ b/commands/extensions.json @@ -6175,6 +6175,34 @@ "title" : "Minimize All Windows", "updatedAt" : "2022-02-21T17:47:42+01:00" }, + { + "authors" : [ + { + "name" : "AndriiBarabash", + "url" : "https:\/\/github.com\/AndriiBarabash" + } + ], + "createdAt" : "2025-03-10T10:57:38+01:00", + "currentDirectoryPath" : null, + "description" : "Put your Mac to sleep (in X minutes).", + "filename" : "sleep-timer.applescript", + "hasArguments" : true, + "icon" : { + "dark" : null, + "light" : "😴" + }, + "identifier" : "44762fff108fef0069a546e2cf83c966", + "isTemplate" : false, + "language" : "applescript", + "mode" : "silent", + "needsConfirmation" : null, + "packageName" : "System", + "path" : "system\/", + "refreshTime" : null, + "schemaVersion" : 1, + "title" : "Sleep Timer", + "updatedAt" : "2025-03-10T10:57:38+01:00" + }, { "authors" : [ { @@ -23977,11 +24005,6 @@ } ], "languages" : [ - { - "displayName" : "Ruby", - "icon" : "icon-ruby.png", - "name" : "ruby" - }, { "displayName" : "Python", "icon" : "icon-python.png", @@ -23993,15 +24016,20 @@ "name" : "bash" }, { - "displayName" : "Swift", - "icon" : "icon-swift.png", - "name" : "swift" + "displayName" : "Ruby", + "icon" : "icon-ruby.png", + "name" : "ruby" }, { "displayName" : "Node", "icon" : "icon-nodejs.png", "name" : "node" }, + { + "displayName" : "Swift", + "icon" : "icon-swift.png", + "name" : "swift" + }, { "displayName" : "AppleScript", "icon" : "icon-applescript.png", @@ -24011,6 +24039,6 @@ "metadata" : [ ], - "totalScriptCommands" : 834, - "updatedAt" : "2025-01-28T15:23:28Z" + "totalScriptCommands" : 835, + "updatedAt" : "2025-03-10T13:53:09Z" } \ No newline at end of file From b6fdfb8aef2a5451fcafbfd262e42b4fddc5818c Mon Sep 17 00:00:00 2001 From: Sixeight Date: Tue, 25 Mar 2025 19:27:06 +0900 Subject: [PATCH 116/146] Update random-emoji to support old bash Old version bash does not support `mapfile` command --- commands/communication/emojis/random-emoji.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/commands/communication/emojis/random-emoji.sh b/commands/communication/emojis/random-emoji.sh index 9c326af5e..1209694c3 100755 --- a/commands/communication/emojis/random-emoji.sh +++ b/commands/communication/emojis/random-emoji.sh @@ -24,7 +24,7 @@ if ! command -v jq &> /dev/null; then exit 1; fi -mapfile -t EMOJIS < <(curl -s https://raw.githubusercontent.com/github/gemoji/master/db/emoji.json | jq -r '.[] | .emoji') +IFS=$'\n' read -d '' -r -a EMOJIS < <(curl -s https://raw.githubusercontent.com/github/gemoji/master/db/emoji.json | jq -r '.[] | .emoji' && printf '\0') EMOJI="${EMOJIS[$RANDOM % ${#EMOJIS[@]}]}" echo -n "$EMOJI" | pbcopy echo "$EMOJI" From 867d36916402e03905952a6df85c77b3feff855a Mon Sep 17 00:00:00 2001 From: est7 Date: Thu, 24 Apr 2025 11:38:46 +0800 Subject: [PATCH 117/146] feat: add script to open gemini tab and submit prompt Implement a Node.js script that enables seamless interaction with Google Gemini from Raycast. The script allows users to: - Open Gemini in Chrome browser - Submit prompts with optional selected text as context - Work with existing Gemini tabs without opening duplicates Dependencies: Node.js and chrome-cli feat: add script to open gemini tab and submit prompt Implement a Node.js script that enables seamless interaction with Google Gemini from Raycast. The script allows users to: - Open Gemini in Chrome browser - Submit prompts with optional selected text as context - Work with existing Gemini tabs without opening duplicates Dependencies: Node.js and chrome-cli Delete gemini.js --- commands/ai/gemini/gemini.js | 205 +++++++++++++++++++++++++++++ commands/ai/images/icon-gemini.svg | 10 ++ 2 files changed, 215 insertions(+) create mode 100644 commands/ai/gemini/gemini.js create mode 100644 commands/ai/images/icon-gemini.svg diff --git a/commands/ai/gemini/gemini.js b/commands/ai/gemini/gemini.js new file mode 100644 index 000000000..b22a89a9d --- /dev/null +++ b/commands/ai/gemini/gemini.js @@ -0,0 +1,205 @@ +#!/usr/bin/env node + +// Dependencies: +// This script requires the following software to be installed: +// - `node` https://nodejs.org +// - `chrome-cli` https://github.com/prasmussen/chrome-cli +// Install via homebrew: `brew install node chrome-cli` + +// This script needs to run JavaScript in your browser, which requires your permission. +// To do so, open Chrome and find the menu bar item: +// View > Developer > Allow JavaScript from Apple Events + +// Required parameters: +// @raycast.schemaVersion 1 +// @raycast.title Ask Gemini +// @raycast.mode silent +// @raycast.packageName Gemini + +// Optional parameters: +// @raycast.icon ../images/icon-gemini.svg +// @raycast.argument1 { "type": "text", "placeholder": "Selected Text", "optional": true } +// @raycast.argument2 { "type": "text", "placeholder": "Prompt"} + +// Documentation: +// @raycast.description Open Gemini in Chrome browser and submit a prompt with optional selected text as context +// @raycast.author Modified from Nimo Beeren's Claude script + +const { execSync } = require("child_process"); + +const selectedText = process.argv[2] || ""; // Get the selected text, or an empty string if none is selected. +const prompt = process.argv[3]; + +process.env.OUTPUT_FORMAT = "json"; + +/** Escape a string so that it can be used in JavaScript code when wrapped in double quotes. */ +function escapeJsString(str) { + return str.replaceAll(`\\`, `\\\\`).replaceAll(`"`, `\\"`); +} + +/** Escape a string so that it can be used in a shell command when wrapped in single quotes. */ +function escapeShellString(str) { + return str.replaceAll(`'`, `'"'"'`); +} + +// used to wait for Chrome to activate. +function sleep(ms) { + const start = Date.now(); + while (Date.now() - start < ms) {} +} + +try { + execSync("which chrome-cli"); +} catch { + console.error( + "chrome-cli is required to run this script (https://github.com/prasmussen/chrome-cli)", + ); + process.exit(1); +} + +// Bring Chrome to the foreground first. +try { + // Try to activate Chrome through AppleScript, supporting different possible application names. + execSync("osascript -e 'tell application \"Google Chrome\" to activate'", { + stdio: "ignore", + }); +} catch (e) { + try { + // If the first naming method fails, try possible alternatives. + execSync("osascript -e 'tell application \"Chrome\" to activate'", { + stdio: "ignore", + }); + } catch (err) { + console.error( + "Unable to activate Chrome browser, continue with other operations", + ); + } +} + +// Give Chrome a little time to make sure it is activated +sleep(300); + +// Find the Gemini tab if one is already open +let tabs = JSON.parse(execSync("chrome-cli list tabs")).tabs; +let geminiTab = tabs.find((tab) => + tab.url.startsWith("https://gemini.google.com/"), +); + +// If there is a Gemini tab open, get its info. Otherwise, open Gemini in a new window. +let geminiTabInfo; +if (geminiTab) { + // Focus on existing tags, do not refresh the page + execSync(`chrome-cli activate -t ${geminiTab.id}`); + // Get tab info + geminiTabInfo = JSON.parse(execSync(`chrome-cli info -t ${geminiTab.id}`)); +} else { + // Open a Gemini session in a new tab, focus it and return the tab info + geminiTabInfo = JSON.parse( + execSync("chrome-cli open 'https://gemini.google.com/app'"), + ); +} + +// Wait for the tab to be loaded, then execute the script +let interval = setInterval(() => { + if (geminiTabInfo.loading) { + geminiTabInfo = JSON.parse( + execSync(`chrome-cli info -t ${geminiTabInfo.id}`), + ); + } else { + clearInterval(interval); + executeScript(); + } +}, 100); + +function executeScript() { + const script = async function (selectedText, prompt) { + // Wait for prompt element to be on the page + let promptElement; + await new Promise((resolve) => { + let interval = setInterval(() => { + promptElement = document.querySelector( + 'div[aria-label="Enter a prompt here"]', + ); + if (promptElement) { + clearInterval(interval); + resolve(); + } + }, 100); + }); + + // Prepare the final text + let finalText = ""; + if (selectedText && selectedText.trim() !== "") { + finalText += `${selectedText}\n\n${prompt}`; + } else { + finalText = prompt; + } + + // Focus the input element first + promptElement.focus(); + + // Check if there's existing content + const hasExistingContent = promptElement.textContent.trim() !== ""; + + // Clear existing content if needed - safely without innerHTML + if (!hasExistingContent) { + // If empty, we'll just add our content + // No need to clear anything + } else { + // If we want to append to existing content, add a newline + // Create a new paragraph for separation + const selection = window.getSelection(); + const range = document.createRange(); + + // Move cursor to the end of existing content + range.selectNodeContents(promptElement); + range.collapse(false); // false means collapse to end + selection.removeAllRanges(); + selection.addRange(range); + + // Insert two newlines to separate content + document.execCommand("insertText", false, "\n\n"); + } + + // Insert the content using execCommand which is safer than innerHTML + // Split by newlines and insert with proper paragraph formatting + const paragraphs = finalText.split("\n"); + paragraphs.forEach((paragraph, index) => { + if (index > 0) { + // Insert newline between paragraphs (not before the first one) + document.execCommand("insertText", false, "\n"); + } + + // Insert the paragraph text + document.execCommand("insertText", false, paragraph || "\u200B"); + }); + + // Trigger input event to notify Gemini of changes + const inputEvent = new Event("input", { bubbles: true }); + promptElement.dispatchEvent(inputEvent); + + // Ensure cursor is at the end and visible + const selection = window.getSelection(); + const range = document.createRange(); + range.selectNodeContents(promptElement); + range.collapse(false); // false means collapse to end + selection.removeAllRanges(); + selection.addRange(range); + + // Scroll to make cursor visible + promptElement.scrollTop = promptElement.scrollHeight; + + // Additional scroll after a short delay to ensure visibility + setTimeout(() => { + promptElement.scrollTop = promptElement.scrollHeight; + }, 100); + }; + + const functionString = escapeShellString(script.toString()); + const selectedTextString = escapeShellString(escapeJsString(selectedText)); + const promptString = escapeShellString(escapeJsString(prompt)); + + execSync( + `chrome-cli execute '(${functionString})(\"${selectedTextString}\", \"${promptString}\")' -t ${geminiTabInfo.id}`, + ); +} diff --git a/commands/ai/images/icon-gemini.svg b/commands/ai/images/icon-gemini.svg new file mode 100644 index 000000000..4545c8331 --- /dev/null +++ b/commands/ai/images/icon-gemini.svg @@ -0,0 +1,10 @@ + + + + + + + + + + From 0dceb4c90547f29685daef87fbd06472ddf87494 Mon Sep 17 00:00:00 2001 From: est7 Date: Mon, 12 May 2025 17:50:27 +0800 Subject: [PATCH 118/146] Update commands/ai/gemini/gemini.js change author metatag Co-authored-by: Thiago Holanda --- commands/ai/gemini/gemini.js | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/commands/ai/gemini/gemini.js b/commands/ai/gemini/gemini.js index b22a89a9d..3550248cd 100644 --- a/commands/ai/gemini/gemini.js +++ b/commands/ai/gemini/gemini.js @@ -23,7 +23,11 @@ // Documentation: // @raycast.description Open Gemini in Chrome browser and submit a prompt with optional selected text as context -// @raycast.author Modified from Nimo Beeren's Claude script +// @raycast.author Est7 +// @raycast.authorURL https://github.com/est7 + +// @raycast.author Nimo Beeren +// @raycast.authorURL https://github.com/nimobeeren const { execSync } = require("child_process"); From 763080187005c5858cc4ec3c59966cc9b00afd79 Mon Sep 17 00:00:00 2001 From: est7 Date: Mon, 12 May 2025 17:51:04 +0800 Subject: [PATCH 119/146] Update commands/ai/gemini/gemini.js Improve comments, clearly indicating that "selected text" is the parameter name to avoid confusion. Co-authored-by: Thiago Holanda --- commands/ai/gemini/gemini.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/commands/ai/gemini/gemini.js b/commands/ai/gemini/gemini.js index 3550248cd..668983cdd 100644 --- a/commands/ai/gemini/gemini.js +++ b/commands/ai/gemini/gemini.js @@ -31,7 +31,7 @@ const { execSync } = require("child_process"); -const selectedText = process.argv[2] || ""; // Get the selected text, or an empty string if none is selected. +const selectedText = process.argv[2] || ""; // Get the text from "Selected Text" argument, or use an empty string if argument is empty. const prompt = process.argv[3]; process.env.OUTPUT_FORMAT = "json"; From 87508c126a52d18f3c601b06c8c97a44bdf22cde Mon Sep 17 00:00:00 2001 From: est7 Date: Mon, 12 May 2025 18:15:13 +0800 Subject: [PATCH 120/146] fix: Move icon-gemini.svg to the correct directory Relocated the icon to align with the updated folder structure. This improves organization and prevents potential referencing issues. --- commands/ai/gemini/gemini.js | 38 +++++++++++++++---- .../ai/{ => gemini}/images/icon-gemini.svg | 0 2 files changed, 30 insertions(+), 8 deletions(-) rename commands/ai/{ => gemini}/images/icon-gemini.svg (100%) diff --git a/commands/ai/gemini/gemini.js b/commands/ai/gemini/gemini.js index 668983cdd..20eaa42d8 100644 --- a/commands/ai/gemini/gemini.js +++ b/commands/ai/gemini/gemini.js @@ -17,7 +17,7 @@ // @raycast.packageName Gemini // Optional parameters: -// @raycast.icon ../images/icon-gemini.svg +// @raycast.icon ./images/icon-gemini.svg // @raycast.argument1 { "type": "text", "placeholder": "Selected Text", "optional": true } // @raycast.argument2 { "type": "text", "placeholder": "Prompt"} @@ -52,15 +52,37 @@ function sleep(ms) { while (Date.now() - start < ms) {} } -try { - execSync("which chrome-cli"); -} catch { - console.error( - "chrome-cli is required to run this script (https://github.com/prasmussen/chrome-cli)", - ); - process.exit(1); +/** + * Verifies that all required dependencies are installed. + * Exits the process with an error message if any dependency is missing. + */ +function checkDependencies() { + // Check if Google Chrome is installed + try { + execSync("osascript -e 'tell application \"Google Chrome\" to get version'" , { stdio: "ignore" }); + } catch { + try { + execSync("osascript -e 'tell application \"Chrome\" to get version'" , { stdio: "ignore" }); + } catch { + console.error("Google Chrome is required to run this script"); + process.exit(1); + } + } + + // Check if chrome-cli is installed + try { + execSync("which chrome-cli"); + } catch { + console.error( + "chrome-cli is required to run this script (https://github.com/prasmussen/chrome-cli)" + ); + process.exit(1); + } } +// Verify all dependencies are installed +checkDependencies(); + // Bring Chrome to the foreground first. try { // Try to activate Chrome through AppleScript, supporting different possible application names. diff --git a/commands/ai/images/icon-gemini.svg b/commands/ai/gemini/images/icon-gemini.svg similarity index 100% rename from commands/ai/images/icon-gemini.svg rename to commands/ai/gemini/images/icon-gemini.svg From aba5735b3fa5e456bbbae397c158e27ab0786b29 Mon Sep 17 00:00:00 2001 From: Raycast Bot Date: Tue, 13 May 2025 08:32:11 +0000 Subject: [PATCH 121/146] Set scripts as executable --- commands/ai/gemini/gemini.js | 0 1 file changed, 0 insertions(+), 0 deletions(-) mode change 100644 => 100755 commands/ai/gemini/gemini.js diff --git a/commands/ai/gemini/gemini.js b/commands/ai/gemini/gemini.js old mode 100644 new mode 100755 From cb0cd05c54c17e5f69fa9b8c60e006615d406836 Mon Sep 17 00:00:00 2001 From: Raycast Bot Date: Tue, 13 May 2025 08:32:39 +0000 Subject: [PATCH 122/146] Update Script Commands documentation --- commands/README.md | 10 +++++ commands/extensions.json | 79 ++++++++++++++++++++++++++++++++-------- 2 files changed, 73 insertions(+), 16 deletions(-) diff --git a/commands/README.md b/commands/README.md index 6583775b2..f17515b64 100644 --- a/commands/README.md +++ b/commands/README.md @@ -25,6 +25,8 @@ This repository contains sample commands and documentation to write your own one ### Categories +- [Ai](#ai) + - [Gemini](#gemini) - [Apps](#apps) - [Agenda](#agenda) - [Amphetamine](#amphetamine) @@ -164,6 +166,14 @@ This repository contains sample commands and documentation to write your own one - [Web Searches](#web-searches) - [WordPress](#wordpress) +## Ai + +#### Gemini + +| Icon | Title | Description | Author | Args | Templ | Lang | +| :--: | ----- | ----------- | :----: | :--: | :---: | :--: | + | | [Ask Gemini](ai/gemini/gemini.js) | Open Gemini in Chrome browser and submit a prompt with optional selected text as context | [Est7](https://github.com/est7) and [Nimo Beeren](https://github.com/nimobeeren) | ✅ | | | + ## Apps #### Agenda diff --git a/commands/extensions.json b/commands/extensions.json index 334f316db..97be304cd 100644 --- a/commands/extensions.json +++ b/commands/extensions.json @@ -7874,6 +7874,53 @@ } ] }, + { + "name" : "Ai", + "path" : "ai", + "scriptCommands" : [ + + ], + "subGroups" : [ + { + "name" : "Gemini", + "path" : "gemini", + "scriptCommands" : [ + { + "authors" : [ + { + "name" : "Est7", + "url" : "https:\/\/github.com\/est7" + }, + { + "name" : "Nimo Beeren", + "url" : "https:\/\/github.com\/nimobeeren" + } + ], + "createdAt" : "2025-04-24T11:38:46+08:00", + "currentDirectoryPath" : null, + "description" : "Open Gemini in Chrome browser and submit a prompt with optional selected text as context", + "filename" : "gemini.js", + "hasArguments" : true, + "icon" : { + "dark" : null, + "light" : ".\/images\/icon-gemini.svg" + }, + "identifier" : "2a9c8b6698663cc8834ace7501bc9bec", + "isTemplate" : false, + "language" : "node", + "mode" : "silent", + "needsConfirmation" : null, + "packageName" : "Gemini", + "path" : "ai\/gemini\/", + "refreshTime" : null, + "schemaVersion" : 1, + "title" : "Ask Gemini", + "updatedAt" : "2025-05-13T08:32:11Z" + } + ] + } + ] + }, { "name" : "Developer Utils", "path" : "developer-utils", @@ -12301,7 +12348,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Random Emoji", - "updatedAt" : "2025-01-28T15:23:28Z" + "updatedAt" : "2025-03-25T19:27:06+09:00" } ] }, @@ -24005,16 +24052,21 @@ } ], "languages" : [ - { - "displayName" : "Python", - "icon" : "icon-python.png", - "name" : "python" - }, { "displayName" : "Bash", "icon" : "icon-bash.png", "name" : "bash" }, + { + "displayName" : "Swift", + "icon" : "icon-swift.png", + "name" : "swift" + }, + { + "displayName" : "AppleScript", + "icon" : "icon-applescript.png", + "name" : "applescript" + }, { "displayName" : "Ruby", "icon" : "icon-ruby.png", @@ -24026,19 +24078,14 @@ "name" : "node" }, { - "displayName" : "Swift", - "icon" : "icon-swift.png", - "name" : "swift" - }, - { - "displayName" : "AppleScript", - "icon" : "icon-applescript.png", - "name" : "applescript" + "displayName" : "Python", + "icon" : "icon-python.png", + "name" : "python" } ], "metadata" : [ ], - "totalScriptCommands" : 835, - "updatedAt" : "2025-03-10T13:53:09Z" + "totalScriptCommands" : 836, + "updatedAt" : "2025-05-13T08:32:11Z" } \ No newline at end of file From 776800eb1fdbf85c5593c90bd9b359cf59ea3fff Mon Sep 17 00:00:00 2001 From: benyn <105991837+benyn@users.noreply.github.com> Date: Sun, 18 May 2025 15:56:50 -0700 Subject: [PATCH 123/146] feat: update dismiss notifications script Handle groups of stacked notifications --- .../system/dismiss-notifications.applescript | 48 +++++++++++++------ 1 file changed, 34 insertions(+), 14 deletions(-) diff --git a/commands/system/dismiss-notifications.applescript b/commands/system/dismiss-notifications.applescript index c19a01a0a..2c3c2716b 100755 --- a/commands/system/dismiss-notifications.applescript +++ b/commands/system/dismiss-notifications.applescript @@ -11,19 +11,39 @@ # Documentation: # @raycast.description Close all notification alerts staying on screen, e.g., Calendar notifications. -# @raycast.author dlvhdr -# @raycast.authorURL github.com/dlvhdr - -tell application "System Events" to tell application process "NotificationCenter" - try - repeat with uiElement in (actions of UI elements of scroll area 1 of group 1 of group 1 of window "Notification Center" of application process "NotificationCenter" of application "System Events") - if description of uiElement contains "Close" then - perform uiElement - end if - if description of uiElement contains "Clear" then - perform uiElement - end if +# @raycast.author benyn +# @raycast.authorURL github.com/benyn + +tell application "System Events" to tell process "NotificationCenter" + -- Exit if there are no visible notifications. + if not (window "Notification Center" exists) then return + + -- `notificationContainer` refers to the UI element (of class `group`) holding notifications and can be either: + -- - A single, individual notification, or + -- - A collection of individual notifications and groups of stacked notifications. + set notificationContainer to a reference to group 1 of scroll area 1 of group 1 of group 1 of window "Notification Center" + + -- If it is a collection, close notifications and groups in reverse order to avoid index changes. + set notificationGroups to a reference to groups of notificationContainer + repeat with i from (number of notificationGroups) to 1 by -1 + set g to item i of notificationGroups + repeat with a in (actions of g whose description is "Close" or description starts with "Clear") + -- Ignore errors that happen if the last remaining item is an individual notification, + -- and `notificationCenter` is no longer a `group` of `group`s. + -- The final remaining notification will be closed in the second repeat statement below. + ignoring application responses + perform a + end ignoring end repeat - return "" - end try + end repeat + + -- Close the `notificationContainer` itself. This handles: + -- - A single, individual notification that was `notificationContainer` from the start, or + -- - The last remaining individual notification after the loop above. + repeat with a in (actions of notificationContainer whose description is "Close" or description starts with "Clear") + perform a + end repeat end tell + +-- Prevent Raycast from displaying the successful result message. +return From 0cc95c11263fe44d4b10ec66e5b2cb72ed3be426 Mon Sep 17 00:00:00 2001 From: Raycast Bot Date: Thu, 29 May 2025 17:21:58 +0000 Subject: [PATCH 124/146] Update Script Commands documentation --- commands/README.md | 2 +- commands/extensions.json | 18 +++++++++--------- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/commands/README.md b/commands/README.md index f17515b64..d7d9cbfcc 100644 --- a/commands/README.md +++ b/commands/README.md @@ -1504,7 +1504,7 @@ This repository contains sample commands and documentation to write your own one | ☕️ | [Disable Caffeinate](system/caffeinate-disable.sh) | Stops all caffeinate sessions | [Yan Smaliak](https://github.com/ysmaliak) | | | | | 💾 | [Disk Free](system/disk-free.sh) | Show free space in your mounted disks | [Juan Luis Romero](https://github.com/JuanluR8) | | | | | 💿 | [Disk Usage](system/disk-usage.sh) | Show disk usage for / (root) | [Jesse Claven](https://github.com/jesse-c) | | | | - | 🔕 | [Dismiss Notifications](system/dismiss-notifications.applescript) | Close all notification alerts staying on screen, e.g., Calendar notifications. | [dlvhdr](github.com/dlvhdr) | | | | + | 🔕 | [Dismiss Notifications](system/dismiss-notifications.applescript) | Close all notification alerts staying on screen, e.g., Calendar notifications. | [benyn](github.com/benyn) | | | | | 🔕 | [Do Not Disturb](system/do-not-disturb.sh) | Do Not Disturb | [Antonio Dal Sie](https://github.com/exodusanto) | ✅ | | | | 🤖 | [Dock Position](system/dock-set-position.sh) | Set the position of the Dock in the screen | [Jelte Lagendijk](https://raycast.com/j3lte) | ✅ | | | | 🤖 | [Dock Set Autohide](system/dock-set-autohide.sh) | Set the Dock autohide | [Jelte Lagendijk](https://raycast.com/j3lte) | ✅ | | | diff --git a/commands/extensions.json b/commands/extensions.json index 97be304cd..fee837142 100644 --- a/commands/extensions.json +++ b/commands/extensions.json @@ -5012,8 +5012,8 @@ { "authors" : [ { - "name" : "dlvhdr", - "url" : "github.com\/dlvhdr" + "name" : "benyn", + "url" : "github.com\/benyn" } ], "createdAt" : "2023-05-06T14:02:11-07:00", @@ -5035,7 +5035,7 @@ "refreshTime" : null, "schemaVersion" : 1, "title" : "Dismiss Notifications", - "updatedAt" : "2024-12-09T09:05:58-08:00" + "updatedAt" : "2025-05-18T15:56:50-07:00" }, { "authors" : [ @@ -24062,16 +24062,16 @@ "icon" : "icon-swift.png", "name" : "swift" }, - { - "displayName" : "AppleScript", - "icon" : "icon-applescript.png", - "name" : "applescript" - }, { "displayName" : "Ruby", "icon" : "icon-ruby.png", "name" : "ruby" }, + { + "displayName" : "AppleScript", + "icon" : "icon-applescript.png", + "name" : "applescript" + }, { "displayName" : "Node", "icon" : "icon-nodejs.png", @@ -24087,5 +24087,5 @@ ], "totalScriptCommands" : 836, - "updatedAt" : "2025-05-13T08:32:11Z" + "updatedAt" : "2025-05-29T17:21:32Z" } \ No newline at end of file From b966052d5db3110b42cc9cccbe6f10f76613d724 Mon Sep 17 00:00:00 2001 From: LitoMore Date: Mon, 2 Jun 2025 01:43:12 +0800 Subject: [PATCH 125/146] Update badges --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index a1a82d593..fcccd6f14 100644 --- a/README.md +++ b/README.md @@ -3,10 +3,10 @@

    From 0bc35e810fb3d7f13e6635789589032ae69869a4 Mon Sep 17 00:00:00 2001 From: Varun Vaidya <121742152+vsvaidya27@users.noreply.github.com> Date: Thu, 12 Jun 2025 06:53:33 -0700 Subject: [PATCH 126/146] Add Find My Phone sound playing script using Playwright (#992) --- commands/README.md | 8 +++ commands/apps/find-my/.env.example | 3 + commands/apps/find-my/README.md | 58 ++++++++++++++++ commands/apps/find-my/fmp.js | 62 ++++++++++++++++++ commands/apps/find-my/images/find-my-icon.png | Bin 0 -> 148806 bytes commands/apps/find-my/package.json | 16 +++++ 6 files changed, 147 insertions(+) create mode 100644 commands/apps/find-my/.env.example create mode 100644 commands/apps/find-my/README.md create mode 100755 commands/apps/find-my/fmp.js create mode 100644 commands/apps/find-my/images/find-my-icon.png create mode 100644 commands/apps/find-my/package.json diff --git a/commands/README.md b/commands/README.md index d7d9cbfcc..b5432590d 100644 --- a/commands/README.md +++ b/commands/README.md @@ -49,6 +49,7 @@ This repository contains sample commands and documentation to write your own one - [ExpressVPN](#expressvpn) - [Fantastical](#fantastical) - [Ferdi](#ferdi) + - [FindMy](#findmy) - [Focus](#focus) - [GoodLinks](#goodlinks) - [HazeOver](#hazeover) @@ -374,6 +375,13 @@ This repository contains sample commands and documentation to write your own one | | [Open Service by Index](apps/ferdi/ferdi-open-service-by-index.applescript) | N/A | [Jakub Lanski](https://github.com/jaklan) | ✅ | | | | | [Open Service by Name](apps/ferdi/ferdi-open-service-by-name.applescript) | N/A | [Jakub Lanski](https://github.com/jaklan) | ✅ | | | + +#### Find My + +| Icon | Title | Description | Author | Args | Templ | Lang | +| :--: | ----- | ----------- | :----: | :--: | :---: | :--: | + | | [Find My Phone](apps/find-my/find-my-phone.js) | Play a sound on your iPhone using iCloud Find My | [Varun Vaidya](https://github.com/vsvaidya27) | | ✅ | | + #### Focus | Icon | Title | Description | Author | Args | Templ | Lang | diff --git a/commands/apps/find-my/.env.example b/commands/apps/find-my/.env.example new file mode 100644 index 000000000..6e3a6c985 --- /dev/null +++ b/commands/apps/find-my/.env.example @@ -0,0 +1,3 @@ +ICLOUD_EMAIL= +ICLOUD_PASSWORD= +DEVICE= \ No newline at end of file diff --git a/commands/apps/find-my/README.md b/commands/apps/find-my/README.md new file mode 100644 index 000000000..55057353e --- /dev/null +++ b/commands/apps/find-my/README.md @@ -0,0 +1,58 @@ +# Find My Phone Raycast + +I lose my phone often, so I made this. + +This is a Node.js script that uses Playwright to automate iCloud Find My and trigger a sound on your Apple device. It's perfect for people like me who misplace their phones and want a quick, automated way to make them ring—with Raycast. + +## Usage + +```sh +git clone https://github.com/vsvaidya27/fmp-raycast +cd fmp-raycast +npm install +cp .env.example .env +# Edit .env with your real credentials +chmod +x fmp.js +``` + +### Add to Raycast + +1. Open Raycast and go to **Extensions**. +2. Click **Add**. +3. Select **Add Script Directory**. +4. Choose the `fmp-raycast` directory you just cloned. +5. Set fmp as your alias for calling the script. + +Now you can trigger the script directly from Raycast! + +## How it works + +- Automates login to iCloud Find My using Playwright +- Selects your device by name +- Triggers the "Play Sound" feature to help you locate your device + +**Note:** You'll need to provide your iCloud credentials and device name in the `.env` file. Sometimes a 2FA check may pop up, but usually they allow you to bypass this and manual intervention is not neccesary (since you often need the very thing you are trying to find for 2FA). + +--- + +## 🛠 Troubleshooting + +### If you get the error `env: node: No such file or directory` + +Raycast uses a limited shell environment, so it may not find your Node.js install. + +To fix it: + +1. Run this in Terminal to find your full Node path: + ```bash + which node + ``` +2. Edit the top of `fmp.js`: + Replace: + ```sh + #!/usr/bin/env node + ``` + With: + ```sh + #!/full/path/to/node + ``` diff --git a/commands/apps/find-my/fmp.js b/commands/apps/find-my/fmp.js new file mode 100755 index 000000000..e672b032b --- /dev/null +++ b/commands/apps/find-my/fmp.js @@ -0,0 +1,62 @@ +#!/usr/bin/env node + +// Required parameters: +// @raycast.schemaVersion 1 +// @raycast.title Find My Phone (Auto Sound) +// @raycast.mode silent +// @raycast.packageName FindMy +// @raycast.icon images/find-my-icon.png + +require('dotenv').config(); +const { chromium } = require('playwright'); + +(async () => { + const browser = await chromium.launch({ headless: false }); + const page = await browser.newPage(); + + // 1. Go to iCloud Find Devices + await page.goto('https://www.icloud.com/find'); + + // 2. Click "Sign In" + await page.waitForSelector('text=Sign In', { timeout: 20000 }); + await page.click('text=Sign In'); + + // 3. Wait for the Apple login iframe to appear + const frameLocator = page.frameLocator('iframe[name="aid-auth-widget"]'); + + // 4. Wait for the email/phone input inside the iframe + await frameLocator.getByRole('textbox', { name: 'Email or Phone Number' }).waitFor({ timeout: 20000 }); + + // 5. Fill in the email/phone + await frameLocator.getByRole('textbox', { name: 'Email or Phone Number' }).fill(process.env.ICLOUD_EMAIL); + + // 6. Click the right-arrow button + await frameLocator.getByRole('button').first().click(); + + // 7. Wait for the "Continue with Password" button to appear, then click it + await frameLocator.getByRole('button', { name: /Continue with Password/i }).waitFor({ timeout: 20000 }); + await frameLocator.getByRole('button', { name: /Continue with Password/i }).click(); + + // 8. Wait for password input + await frameLocator.getByRole('textbox', { name: 'Password' }).waitFor({ timeout: 20000 }); + await frameLocator.getByRole('textbox', { name: 'Password' }).fill(process.env.ICLOUD_PASSWORD); + + // 9. Click the arrow button to continue + await frameLocator.getByRole('button').first().click(); + + // 10. Wait for 2FA if needed; Hopefully not because this kinda defeats the purpose of automation even though its prob for the best security-wise :( + console.log('If prompted, please complete 2FA in the browser window. :('); + + // 12. Click on your iPhone using the precise selector inside the second iframe + await page.locator('iframe').nth(1).contentFrame().getByTitle(process.env.DEVICE).getByTestId('show-device-name').click(); + + // 13. Wait for the device details panel to load + await page.waitForTimeout(2000); + + // 14. Click the "Play Sound" button + await page.locator('iframe').nth(1).contentFrame().getByRole('button', { name: 'Play Sound' }).click(); + + console.log('✅ Play Sound triggered for ' + process.env.DEVICE + '!'); + await browser.close(); +})(); + diff --git a/commands/apps/find-my/images/find-my-icon.png b/commands/apps/find-my/images/find-my-icon.png new file mode 100644 index 0000000000000000000000000000000000000000..0862bfec89545b26b8531698c1a8b1d1b3ba1d71 GIT binary patch literal 148806 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 Date: Thu, 12 Jun 2025 13:54:57 +0000 Subject: [PATCH 127/146] Update Script Commands documentation --- commands/README.md | 5 ++-- commands/extensions.json | 64 +++++++++++++++++++++++++++++----------- 2 files changed, 49 insertions(+), 20 deletions(-) diff --git a/commands/README.md b/commands/README.md index b5432590d..73719c87a 100644 --- a/commands/README.md +++ b/commands/README.md @@ -49,7 +49,7 @@ This repository contains sample commands and documentation to write your own one - [ExpressVPN](#expressvpn) - [Fantastical](#fantastical) - [Ferdi](#ferdi) - - [FindMy](#findmy) + - [Find My](#find-my) - [Focus](#focus) - [GoodLinks](#goodlinks) - [HazeOver](#hazeover) @@ -375,12 +375,11 @@ This repository contains sample commands and documentation to write your own one | | [Open Service by Index](apps/ferdi/ferdi-open-service-by-index.applescript) | N/A | [Jakub Lanski](https://github.com/jaklan) | ✅ | | | | | [Open Service by Name](apps/ferdi/ferdi-open-service-by-name.applescript) | N/A | [Jakub Lanski](https://github.com/jaklan) | ✅ | | | - #### Find My | Icon | Title | Description | Author | Args | Templ | Lang | | :--: | ----- | ----------- | :----: | :--: | :---: | :--: | - | | [Find My Phone](apps/find-my/find-my-phone.js) | Play a sound on your iPhone using iCloud Find My | [Varun Vaidya](https://github.com/vsvaidya27) | | ✅ | | + | | [Find My Phone (Auto Sound)](apps/find-my/fmp.js) | N/A | Raycast | | | | #### Focus diff --git a/commands/extensions.json b/commands/extensions.json index fee837142..c6483f207 100644 --- a/commands/extensions.json +++ b/commands/extensions.json @@ -15813,6 +15813,36 @@ } ] }, + { + "name" : "Find My", + "path" : "find-my", + "readme" : "apps\/find-my\/README.md", + "scriptCommands" : [ + { + "authors" : null, + "createdAt" : "2025-06-12T06:53:33-07:00", + "currentDirectoryPath" : null, + "description" : null, + "filename" : "fmp.js", + "hasArguments" : false, + "icon" : { + "dark" : null, + "light" : "images\/find-my-icon.png" + }, + "identifier" : "206851d53c58c074472f7acb20ceeb08", + "isTemplate" : false, + "language" : "node", + "mode" : "silent", + "needsConfirmation" : null, + "packageName" : "FindMy", + "path" : "apps\/find-my\/", + "refreshTime" : null, + "schemaVersion" : 1, + "title" : "Find My Phone (Auto Sound)", + "updatedAt" : "2025-06-12T06:53:33-07:00" + } + ] + }, { "name" : "Bear", "path" : "bear", @@ -24053,14 +24083,14 @@ ], "languages" : [ { - "displayName" : "Bash", - "icon" : "icon-bash.png", - "name" : "bash" + "displayName" : "Python", + "icon" : "icon-python.png", + "name" : "python" }, { - "displayName" : "Swift", - "icon" : "icon-swift.png", - "name" : "swift" + "displayName" : "Node", + "icon" : "icon-nodejs.png", + "name" : "node" }, { "displayName" : "Ruby", @@ -24068,24 +24098,24 @@ "name" : "ruby" }, { - "displayName" : "AppleScript", - "icon" : "icon-applescript.png", - "name" : "applescript" + "displayName" : "Bash", + "icon" : "icon-bash.png", + "name" : "bash" }, { - "displayName" : "Node", - "icon" : "icon-nodejs.png", - "name" : "node" + "displayName" : "Swift", + "icon" : "icon-swift.png", + "name" : "swift" }, { - "displayName" : "Python", - "icon" : "icon-python.png", - "name" : "python" + "displayName" : "AppleScript", + "icon" : "icon-applescript.png", + "name" : "applescript" } ], "metadata" : [ ], - "totalScriptCommands" : 836, - "updatedAt" : "2025-05-29T17:21:32Z" + "totalScriptCommands" : 837, + "updatedAt" : "2025-06-12T13:54:30Z" } \ No newline at end of file From 1ebc35dd1af5fbd13e430f11bd571a8a4a5e6003 Mon Sep 17 00:00:00 2001 From: Raphael-KR Date: Sat, 23 Aug 2025 18:49:50 +0900 Subject: [PATCH 128/146] Add natural scrolling toggle script for macOS 15.6.1+ - Fix: Original script fails on macOS 15+ with domain error - Uses .GlobalPreferences domain instead of NSGlobalDomain - Tested on macOS 15.6.1 (24G90) - Includes GUI fallback method for compatibility - Maintains backward compatibility messaging --- ...ggle-natural-scrolling-macos15.applescript | 69 +++++++++++++++++++ 1 file changed, 69 insertions(+) create mode 100644 commands/system/toggle-natural-scrolling-macos15.applescript diff --git a/commands/system/toggle-natural-scrolling-macos15.applescript b/commands/system/toggle-natural-scrolling-macos15.applescript new file mode 100644 index 000000000..710b7e435 --- /dev/null +++ b/commands/system/toggle-natural-scrolling-macos15.applescript @@ -0,0 +1,69 @@ +#!/usr/bin/osascript + +# Required parameters: +# @raycast.schemaVersion 1 +# @raycast.title Toggle Natural Scrolling (macOS 15+) +# @raycast.mode silent +# @raycast.packageName System + +# Optional parameters: +# @raycast.icon 🖱 +# @raycast.author Raphael-KR +# @raycast.authorURL https://github.com/Raphael-KR +# @raycast.description Toggle natural trackpad/mouse scrolling setting for macOS 15.6.1+ + +set macVersion to system version of (system info) + +if macVersion is greater than or equal to "15" then + try + set isNaturalScrolling to (do shell script "defaults read .GlobalPreferences 'com.apple.swipescrolldirection' 2>/dev/null || echo '1'") + + if isNaturalScrolling is "1" then + do shell script "defaults write .GlobalPreferences 'com.apple.swipescrolldirection' -bool NO" + display notification "Natural Scrolling: OFF" with title "Trackpad Settings" + else + do shell script "defaults write .GlobalPreferences 'com.apple.swipescrolldirection' -bool YES" + display notification "Natural Scrolling: ON" with title "Trackpad Settings" + end if + + do shell script "/System/Library/PrivateFrameworks/SystemAdministration.framework/Resources/activateSettings -u" + + on error e + display notification "Using GUI method as fallback" with title "Trackpad Settings" + + tell application "System Settings" + activate + set current pane to pane "com.apple.preference.trackpad" + end tell + + delay 0.6 + + tell application "System Events" + tell process "System Settings" + click radio button 2 of tab group 1 of window "Trackpad" + click checkbox 1 of tab group 1 of window "Trackpad" + end tell + end tell + + tell application "System Settings" to quit + end try + +else + display notification "For macOS 14 and earlier, use the original script" with title "Compatibility Note" + + tell application "System Settings" + activate + set current pane to pane "com.apple.preference.trackpad" + end tell + + delay 0.6 + + tell application "System Events" + tell process "System Settings" + click radio button 2 of tab group 1 of window "Trackpad" + click checkbox 1 of tab group 1 of window "Trackpad" + end tell + end tell + + tell application "System Settings" to quit +end if From 44268106291568350d4da4b37066058ed3bb1690 Mon Sep 17 00:00:00 2001 From: Raycast Bot Date: Mon, 25 Aug 2025 09:08:49 +0000 Subject: [PATCH 129/146] Set scripts as executable --- commands/system/toggle-natural-scrolling-macos15.applescript | 0 1 file changed, 0 insertions(+), 0 deletions(-) mode change 100644 => 100755 commands/system/toggle-natural-scrolling-macos15.applescript diff --git a/commands/system/toggle-natural-scrolling-macos15.applescript b/commands/system/toggle-natural-scrolling-macos15.applescript old mode 100644 new mode 100755 From 472e4f570ec08d9024a5bffdf4ed51e482d02859 Mon Sep 17 00:00:00 2001 From: Raycast Bot Date: Mon, 25 Aug 2025 09:09:16 +0000 Subject: [PATCH 130/146] Update Script Commands documentation --- commands/README.md | 1 + commands/extensions.json | 48 +++++++++++++++++++++++++++++++--------- 2 files changed, 39 insertions(+), 10 deletions(-) diff --git a/commands/README.md b/commands/README.md index 73719c87a..6d50888c0 100644 --- a/commands/README.md +++ b/commands/README.md @@ -1565,6 +1565,7 @@ This repository contains sample commands and documentation to write your own one | 👓 | [Toggle Hidden Files](system/toggle-hidden-files.applescript) | Show and hide hidden files/folders which starts with "." (dot), i.e: .bash_rc, .ssh | [Thiago Holanda](https://twitter.com/tholanda) | | | | | 🐚 | [Toggle Lid Sleep](system/toggle-lid-sleep.sh) | Prevent sleep from closing laptop lid (clamshell mode) | [Ivan Rybalko](https://github.com/ivribalko) | | | | | 🖱 | [Toggle Natural Scrolling](system/toggle-natural-scrolling.applescript) | Script Command to change natural trackpad/mouse scrolling setting. Reverting the setting value each time. | [Wiley Marques](https://twitter.com/wileymarques) | | | | + | 🖱 | [Toggle Natural Scrolling (macOS 15+)](system/toggle-natural-scrolling-macos15.applescript) | Toggle natural trackpad/mouse scrolling setting for macOS 15.6.1+ | [Raphael-KR](https://github.com/Raphael-KR) | | | | | 🌘 | [Toggle Night Shift](system/nightshift.sh) | Toggle Night Shift mode (until tomorrow/sunrise). Required [nightlight](https://github.com/smudge/nightlight) | [BhEaN](https://github.com/bhean) | | | | | 🌗 | [Toggle System Appearance](system/toggle-system-appearance.applescript) | Script Command to switch between the system appearance, light and dark mode. | [Thiago Holanda](https://twitter.com/tholanda) | | | | | | [Toggle Wi-Fi](system/wifi.template.applescript) | Toggle your Wi-Fi connection. | [Vincent Dörig](https://github.com/vincentdoerig) | | ✅ | | diff --git a/commands/extensions.json b/commands/extensions.json index c6483f207..20801e73e 100644 --- a/commands/extensions.json +++ b/commands/extensions.json @@ -4981,6 +4981,34 @@ "title" : "Uninstall with AppCleaner", "updatedAt" : "2021-03-18T14:47:46-03:00" }, + { + "authors" : [ + { + "name" : "Raphael-KR", + "url" : "https:\/\/github.com\/Raphael-KR" + } + ], + "createdAt" : "2025-08-23T18:49:50+09:00", + "currentDirectoryPath" : null, + "description" : "Toggle natural trackpad\/mouse scrolling setting for macOS 15.6.1+", + "filename" : "toggle-natural-scrolling-macos15.applescript", + "hasArguments" : false, + "icon" : { + "dark" : null, + "light" : "🖱" + }, + "identifier" : "3ccaeabe09d36538f01f592bc7b3e51e", + "isTemplate" : false, + "language" : "applescript", + "mode" : "silent", + "needsConfirmation" : null, + "packageName" : "System", + "path" : "system\/", + "refreshTime" : null, + "schemaVersion" : 1, + "title" : "Toggle Natural Scrolling (macOS 15+)", + "updatedAt" : "2025-08-25T09:08:49Z" + }, { "authors" : [ { @@ -24083,20 +24111,15 @@ ], "languages" : [ { - "displayName" : "Python", - "icon" : "icon-python.png", - "name" : "python" + "displayName" : "Ruby", + "icon" : "icon-ruby.png", + "name" : "ruby" }, { "displayName" : "Node", "icon" : "icon-nodejs.png", "name" : "node" }, - { - "displayName" : "Ruby", - "icon" : "icon-ruby.png", - "name" : "ruby" - }, { "displayName" : "Bash", "icon" : "icon-bash.png", @@ -24107,6 +24130,11 @@ "icon" : "icon-swift.png", "name" : "swift" }, + { + "displayName" : "Python", + "icon" : "icon-python.png", + "name" : "python" + }, { "displayName" : "AppleScript", "icon" : "icon-applescript.png", @@ -24116,6 +24144,6 @@ "metadata" : [ ], - "totalScriptCommands" : 837, - "updatedAt" : "2025-06-12T13:54:30Z" + "totalScriptCommands" : 838, + "updatedAt" : "2025-08-25T09:08:49Z" } \ No newline at end of file From 7d1668679dc00e9f10156b3f71bd1783f52faa80 Mon Sep 17 00:00:00 2001 From: Kelsey Leftwich Date: Fri, 5 Sep 2025 10:08:41 -0500 Subject: [PATCH 131/146] adds script to copy a summary of today's meetings to the clipboard --- commands/system/meeting_summary_script.swift | 92 ++++++++++++++++++++ 1 file changed, 92 insertions(+) create mode 100755 commands/system/meeting_summary_script.swift diff --git a/commands/system/meeting_summary_script.swift b/commands/system/meeting_summary_script.swift new file mode 100755 index 000000000..57053400c --- /dev/null +++ b/commands/system/meeting_summary_script.swift @@ -0,0 +1,92 @@ +#!/usr/bin/swift + +// Required parameters: +// @raycast.schemaVersion 1 +// @raycast.title Copy Meeting Summary +// @raycast.mode silent +// @raycast.packageName System +// +// Optional parameters: +// @raycast.icon 📝 +// +// Documentation: +// @raycast.description Copies a summary of today's meetings to the clipboard. + +import AppKit +import EventKit + +let now = Date() +let calendar: Calendar = .current + +do { + let today: (startDate: Date, endDate: Date, events: [EKEvent]) + + do { + // Retrieve the range for today (from 00:00 to 23:59) + today.startDate = calendar.startOfDay(for: now) + today.endDate = calendar.date(byAdding: .day, value: 1, to: today.startDate)! + + // Retrieve all the events for today + let store = EKEventStore() + let predicate = store.predicateForEvents(withStart: today.startDate, end: today.endDate, calendars: nil) + today.events = store.events(matching: predicate) + .filter { !$0.isAllDay } // Exclude all-day events + .sorted { $0.startDate < $1.startDate } // Sort by start time + } + + let summary: String + if today.events.isEmpty { + summary = "No meetings scheduled for today." + } else { + let dateFormatter = DateFormatter() + dateFormatter.dateStyle = .full + dateFormatter.timeStyle = .none + let todayString = dateFormatter.string(from: now) + + let timeFormatter = DateFormatter() + timeFormatter.dateStyle = .none + timeFormatter.timeStyle = .short + timeFormatter.timeZone = TimeZone.current + + let meetingList = today.events.map { event in + let startTime = timeFormatter.string(from: event.startDate) + let title = event.title ?? "Untitled Event" + let timezone = timeFormatter.timeZone.abbreviation() ?? "" + + var meetingInfo = timezone.isEmpty ? "• \(startTime): \(title)" : "• \(startTime) \(timezone): \(title)" + + // Add location if available + if let location = event.location, !location.isEmpty { + meetingInfo += " (\(location))" + } + + // Add notes if available (first line only to keep it concise) + if let notes = event.notes, !notes.isEmpty { + let firstLine = notes.components(separatedBy: .newlines).first ?? "" + let cleanedNotes = firstLine.trimmingCharacters(in: .whitespacesAndNewlines) + // Filter out junk characters (like the -::~: pattern) + let validNotes = cleanedNotes.filter { char in + char.isLetter || char.isNumber || char.isWhitespace || char.isPunctuation && !"-:~".contains(char) + } + if !validNotes.isEmpty && validNotes.count <= 100 && !validNotes.allSatisfy({ "-:~".contains($0) }) { + meetingInfo += "\n Notes: \(String(validNotes))" + } + } + + return meetingInfo + }.joined(separator: "\n") + + let meetingCount = today.events.count + + summary = """ +Meetings: +\(meetingList) +""" + } + + NSPasteboard.general.declareTypes([NSPasteboard.PasteboardType.string], owner: nil) + NSPasteboard.general.setString(summary, forType: NSPasteboard.PasteboardType.string) + print("Copied meeting summary to clipboard") +} catch { + print("Error retrieving calendar events: \(error)") +} \ No newline at end of file From 3ab1d5182fe8a36a98babec2278ce41a957aa683 Mon Sep 17 00:00:00 2001 From: blastik <3662083+blastik@users.noreply.github.com> Date: Wed, 24 Sep 2025 17:50:16 +0200 Subject: [PATCH 132/146] adding magic keyboard switcher script --- .../system/magic-keyboard-switcher/README.md | 20 ++++++++ .../images/bluetooth menu.png | Bin 0 -> 172391 bytes .../magic-keyboard-switcher/images/logo.png | Bin 0 -> 214192 bytes .../magic-keyboard-switcher.template.sh | 48 ++++++++++++++++++ 4 files changed, 68 insertions(+) create mode 100644 commands/system/magic-keyboard-switcher/README.md create mode 100644 commands/system/magic-keyboard-switcher/images/bluetooth menu.png create mode 100644 commands/system/magic-keyboard-switcher/images/logo.png create mode 100755 commands/system/magic-keyboard-switcher/magic-keyboard-switcher.template.sh diff --git a/commands/system/magic-keyboard-switcher/README.md b/commands/system/magic-keyboard-switcher/README.md new file mode 100644 index 000000000..1c19ed6a6 --- /dev/null +++ b/commands/system/magic-keyboard-switcher/README.md @@ -0,0 +1,20 @@ +# magic-keyboard-switcher +Script command to easility switch the bluetooth connectivity of a single Magic Keyboard between several computers. + +## How to setup + +1. Install [blueutil](https://github.com/toy/blueutil). You can use [brew](https://brew.sh/) - `brew install blueutil` +2. Find out your Magic Keyboard bluetooth MAC address. With the keyboard connected, keep the Option key pressed while you click on your status bar bluetooth icon. +

    + Bluetooth menu +
    +3. Open the script file, set your Magic Keyboard bluetooth MAC address in the `BTMAC` variable and review the blueutil binary location set in the `BIN` variable. +4. Remove `.template` from the file name. +5. Say Ok when prompted about giving Bluetooth permissions to Raycast after executing the script command. + +## How to switch keyboards + +It's desirable to have Raycast and this script command installed in both computers. + +First, run the script command in the one that has the keyboard currently connected. It will disconnect it and make it discoverable. +Second, run the script command in the other computer. It should connect it. diff --git a/commands/system/magic-keyboard-switcher/images/bluetooth menu.png b/commands/system/magic-keyboard-switcher/images/bluetooth menu.png new file mode 100644 index 0000000000000000000000000000000000000000..de5d4070a6d8428a1a698e8388a80e2077eb68a6 GIT binary patch literal 172391 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 literal 0 HcmV?d00001 diff --git a/commands/system/magic-keyboard-switcher/images/logo.png b/commands/system/magic-keyboard-switcher/images/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..200a262fec955cdba1c71b60eb622c076bbcc00e GIT binary patch literal 214192 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%0D@AM~t~MK5n`3)c_#xW)F2 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�=iXZ+q#r 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

    7BYz8pe8*qabbfm zCX<66(0uoSYi`B?2h#d_0VdDnlby?M;AxEX>t zk=b>dWAarjuMfou2dc{ZTy2wuBZ7ppxP*liG!`%oVc~IJUGv`y$fAwUSEdtun>o!3 z5B0F8GF*?DU_Tv}f=yeh#;n#@z3fbFI!ZgZ)tjy)u~@QE2?sZ-Hz z2}M0Oz-J}6rCExx%mJ!Tb4j`}wOKvcS1&*7Al|t0G5w5o;IBQZIf&0G=Z3Nqdm@6d z%Nz!nT==XFuFs20F75!@T7os+;!=dW*Lr$62Rp0a+QHDIe(bjA0uf?2A)wxs-aX!b z1Xn*0a_kX>JVm%RBHS$kWtuPBFA#8icm!baa*n(&3O0}-h@p#aRo(zTem;O^_u98y z`Hq(x9dLPB_=&3=lI4??l#Cpd?PfOSq{e5Z9dW+Wik+^w9k&VmQ;e3TfziiEv#epx zK=keQJO^oSe(+a6AsV6nP58dxVLdI!#Gkj8k7}4$DL%@7RgMi69_{uKZ{%^;{Va5d z5=lLlAc`QzH(Wrf%6?UHLSV>$zkTgJp#wO?DYowz}>NHV>9@6K-+R#mEkpmyX8fBYXZ+dXdUac*#aI;+Z zD?PRO&tg$ml2a2qjiE|CA}SDCqp(2L_3zc7LSN_ zz=k}8K0Uhb-eK@1=8um_N6?A!%4vc5vDLfn$ze0x&oxZZv2vfe9N}H_tKW9QE5j|D zWbskZWHu5-LSCr_S_xcZgyJJ^q~{1dy4qGbUlqvs_?Hh+DIu|ZeGe^6NLYfn6#x%~ z0bvx`tbcQfXKA8IC2TI=2sD?UwC;8qMmG0Fojzf=9IwBA<81@kx*saY>l_!a=A;1G znJhUcmGuq+BP9<{#cm?4GTwiWo-r<%WrzuAXJ!(yRM8oQ$~Q|QtA9;*bAexa>We5w z8uEX1&f???C|QAt>0hMj_!@E5Jmq4DryhR0xt;%%>c7;-Y^PSl5G)1q;0ueBk9oj6 zt0?r;YM#((iy(-(M^=FBeFX2)jjZj;@iBQb1dv+Q!?8Q@Z#K3x)2f$brIlP^0JF2Q zn1kI~yQov!K$H(PlfzucgY?~zZQeJE8R2W5+TfYV_n$)Q3h|~WtNj~Msj{+#i4I12 zw>$IyezOq|ce=%g6?LdVH09%o+~MZc!QS=0ukONeBc6n%u~%+=yoYsh(K5cb|ER7Q z&2aPR+pRY@t0HK*CwMN6LHs34?7j96^!e7I&`y(wAP$l>MAj zb=q&|B{#&#(-%>l3Sj?LMEoTr#+}8NWl_dg9E#~n9|Fd+e6yhG300Po+22+!mADrY z+Nr@h%$kCh8hFJ$$+p#HGfoNNiLOj|yql|2+-l^Y2soM~+hRHrb1mGTyDGZRz}M;H zaSre}x1o8FUFv#N6yWjfBRR7lobI%#M)MSPW>@Jh|Mylv0{iM!dA`%EM28ey>4H?b z=#YbZd)G7vBY2S0`w(Y~)^@pDBpQ{rm8wN~qkot<>xJ7e!OcHIIfIPeW$mg4%%q8@ zuY2y-t+Z4)ZTgw-xR%6R+Rm@%p?=NQ%;S2kg3z&FUIJ44>3ke0o*3))M?RB&eo)rY zoITQ2y#XiZsQS$jFyQhxxw)p|808*#mrFdn{gg>!^gpt6S@Bep+h5!V*}+RCE9X0R z`86nf+Qvu8!_}DR4ut-#jnZXWLbVL}6Oa2G=Ms%iU|SDt<^Qy1bfkp1apgXwZ$14X z*mho>*5+stAv!+ww{B2qkeO<2*Pf`eLKb#Noqq9%^~h2pp3a&bkZR(kH3+EcR%IGt z8c5=qKD5ie>Fwgul6deh<(9PIO?z0Zm&$m}GR$Q|v+}VJ^`b;<`BupUuTve=M8&ww zc=QjwA-9uf?jk|+*MC0*&++@@bFkz{=L+D6e0VFdsVW`56ouBvI;t$LByi4$E^j5( zu0QEnqlfMK@794xcPem89ez&Q4-GcC-a0R&9%3cV-S{uPx_Cf&z-9;T8`UKSj)nm; zo4In{p57tgi1@05RFgo!UiDgM^EXG9;h=?yH=8OEEeHLv{7z>b!m$0|Vda)Cg+!2@ z;LdMPp_-i%AKt0tZUgp)Qn8=gAKAcSR3-(NsYPKh5y98Gz9u=dh&gb&i(GI2UWxI( zcBuDzZjXhvrvYP!V;4U)iwBc8(9R;g@y|EHTUYB zo*IN}_p3{dKNLT2@6p_jCXDusl%}K?(iw{qi-b$s{XB{r+*E&X!`M}M*U_bGtoUcSfaJihze$;Y(7G3zEa;CWZX&SpOL7R%1 znzXvy`j<2Cm22*&C3dCy7{DekGH|43$9hfs===U;7n+Wn+L839w?DyCe-#%c%QcT9-IvBOg>f5mTE}Mju{P)M z{d_XtDW}&yn#2uKD$cTL*gQ?}bgj;?rC&3A{wywH_$_0(I;7eCC~BD4{Xzr1Q64+m zUg@ygLrAN+_<^1NYqQtQo?Rsk&PzzQ(MXDIMi2k=-{I&Ibtg$*lGBsW!tj88{|5!j zo1DqNqCuQ~%4q}b(-lw^0o<5HfKEqBRkCy^X07;OD9T zP5EfWOYWECvNw}*i03Y59M%WteUBnC5}BQRT`wifhF%l~eEjq(>8aazW&Y7p7bi$M z#Cf>!gTmu&_b)_~($mXqEL%eu_|dNN2D288{x&zL0L|oU#5y@Ypwn5pVg@BGvg8=x zX(hWHB^=jbI6}kaa(t9+@003mPMyuBb^VNmkzpLhqeLO2+WMxNbxyz!^KNuURd(3k z+fE;xE-`Af<2~MvEgbm*yYM}gdXTxxJ;YZe|}&Z+T0K`5|A3r`JA zMpJ{v1L%&L1GE#u%8Ts=>}6^obKt-^6ZYE89pJ18uSIux z*r8c&JAI8$(5=TYF4qgI&9Hm^%y;-Jh&~+|V`1;EU?R8)$j^JO2~p3mhNzP|3iXO^ zZhMki&xwP-#X@HXg#yXjMyr(ZNEFKa&f!DefC5ABuT0TjCVFIC;3$h|1sHq-u-`1i zMxKUQN3dKIhEV+6L3ZX!ktarf^h)jeJ^Sa082?+^Vz;HN@z6!o-nhk(MGTa?9=)wLcLAcztLJ#+~Z?FiO%NB zQl?5uT?j9zshGtO;ca2h+FwGHTMlDFb}8k2U2nYv1LpSc{(PEMyh<48GKjvM1D)Ou zP_DsVB0QP8q-!h!SC+cxB9_+D$j3uR%Q0!!C< zC-Ez|!pyBIfFT;Bi~!HpP%M8e+}Sk5C1%LK54#vx(h<)cQ?mNXiSV(D@fGmV zIDO{&cY#Ubryi+@z4C?Ms7knDQU4HkYih3fe1Mz>+AO`NR=DCiefCbqMzK*m#RX-{d1IKAVB*Qd2H40x` zae*E4HNukWj)zUpzwN3)&c&)r6HZG?P+U&X40>& zfs165+PLP1HMh1Imh&~-?`<2;lg2e9uE8_Sy~U*=)b-t4yBvF~TPG%ZjXhCA9ZNrM zmHP02qr2|KA;<$>dHYM*Hjt~ zh8RVABM4xagl&`~yOGRg75IWBXf?{rb63jztoWS_g5jZ1z z`HuGjr#Pi@kZZBZ+RS%gP1ikY@N zLt`yBi5q zwD1dbyEvb-VU;5O@{rQNMYsRRw6eikdolDoQp0$y)4I<|<@Tw$y6H?C9;Rq0I;pwH zl50FKd+uU>H!0XlI~1n~agITY1$O~3F7!+neCk^^A7wUt?-h1~W7XD^s_xhh@%u<%C)0b2GoOAnOf|uDwKmQd!^+IUz`7Wo3 z3yB<(FZN$%BV(xDm-B<$dn^r~zw+Xq)!*pUqaN8#0Gv1oZnC zr(XvvyQaJo;Pz6z;)&Oeg9+(L?Q=x)+CHY^3(Y$r*Tt^po8{u{ZsyGG?Myme zLSDa{lWVW2p-Yn5WkA^8_{HoWr$dUfB1K=4f6)3L((9lrXz-*I^D9bINo5zJ**aY zpW9{r1YKkxqcML@fF}UNT(`c4I6zpzCvR#`s4EC`I;I9jWDIesqAtL~kcrqA$PlOy z_aQfJ`t488*VJJ{%v1VGG0*tI0KPIOgIB&*#NwfJOm>ykAyP|D`9jE5SHg#{H@sXJ zO6iVaB=7vrc-UX$S}VLAhyqTsKV5sd$&dxyfHt`?U0nSqUpoeP=}jntp@`e!o_AvF zsrt|nL7^}pxgm`RjkRUbzL`P{#OFUFc#miBGABLQBX3*7K>-2G)chIog1buu-Yka$ zF9@D=)F4jtKp)TEt_-?+DRh*yfa;(6?d6~p@kBEhGBn(v3K^O5n3ci$c9b_)_=Zu}Ro_Hd73fM=uy-yLa4bV%F( zn{p+TOh6jt2P=P$2ayA;e)4{11E(nb-2P;la&b7;)|A6Id9Rj&%A-;QCZv$dvXa_I3?3kI$TPKb!ofOV)wS+Soue<6q0plU4oHvHLKv?E7&at}3Ss-sjv> zJRLt1)|GuoLLSMbrUscPlvJDsIujE)es+*r*$Y)vc_LuE@>YH&u`3rP3H$u8mUGaB z*x2stYjKj$g$;QhO_%dHt7e$ZeP;Naz;BKELlKb>t3Dp^zVizdM{!To9-mcqmFR*s zlP4B#l&M0;=h5j8I?C*)i+X?rlHIOkOy0X}x^NOs<$$S5xdl`xLPTsm#mQ)s_TSbY zt**NDb@<(2!vvcwSor=w7a(9VbNSQ?6)Zbig_mpzGPkhb7XJ>xOW*!Qsk@30o}s8= zYsdzX_VKk&bvU7^7oIlcK@V6%n% zBW;Az1y(ygM0!b}p~v*G88ZLyw;i5QIXdxToOA~o2S>C$M?Zn zagopm3_r;g_Z@V7haB*Rv{{VMH;k#jV*9N29Mc>{bkEifhiM3hR}d@R4UU;kb)Ncb z$U7;NjMQ8G8`Ne-)p!3x#kPs2dj0aft~vPEG1&m092r%r z&;K!8?w@+PN&?VRegi=H(N+T{L5BO+r78svdBX6*k~mSN52bblkK}*BLIa7^+kLdj zw|oAGTqZKWn?aU+tKZCYRa?kk%m_BCylogh+0RyP3=Woc`itCZ4~f6t2M)sFyK}xB5MjWI zGI0T8^mGxrJlLGay|c5W(ssvkgcqN0DMv?H0=H*Lwh!a1PO9oQw-1Nb;3KQ8j)aSM zaL@U7v3EI!kz4h5Hp}g!ehO^JL7x35v96`RxS&J^OfU@nXCm0qDZwt~ho{{HqrqrpT4Ms(gtOoN#L1Yu9Qjmwk5>x74&)WD2roED zGGqpG?Z4@*40@(Rr-ZFlz+A*u7C9KokxzL?S#)rkEq0y zzfe)$Pim%vC4^uHm-*|T?Sut-hE&%aI(z28=ZQqhyJ+9Pdp@y0@bPTqLV(It+#|lL zOT_Lf%Y${>+7)>s!^EJm^qP5%OQk0{X6eVF>#hD#ut}Ee%hBrV;Q_Bmdfkn;hW!Kx zpSWEi;FE<9?P`2JWRTP=hc#H^kZv_E}PtRc>@upP69i_L=n%LL2V_Hp${Pv2FwLgvw%U40&6Qf{w)8#ln{n*F90Rg8nVi(OtWrIGDBO*(h7{> z?DRNaVx##9BHxB6d9!|=G1kac(MRmNe*kJ!oRcr$Vup(ZKRAdPs5Fa7{-(g>>FQzg z1PS~ZWiAK8R2x2aJQCoHe~NMhwZkg}DWJ`%_D9AX^O9~ImMqrdr6mIKUv+KA|I609 z+YTmfaa1`kx|v>=5SkX7(JKU`^SB(_0tR%UAf6ByYVzaPs)d~*hC0uTAY>oA6&~m3H-0MgTUuP-xE3QuE z?K#Q7+t9P=B!Y%5zeV1BkChTxVA7Zvzlu0Jco{)vi$dKbCCFXQ*JNJY;;IfXb^?>= zw6={`16_q}n=*%2rb?A7GEe*r#nO?6_sk|slAuE7aY^ViNT@N~ca9kF0qJ*hK6#&$ zaSagmgn<>D^0=~lH$Z0D0LL=5`HN9ZMeIk@^8$tsdf!_vvQ6vXl)D40LHVe4`YrEK z<@k?KUyc}HX5iFU5ZKGy+~0P(HLOWRiQdk17bY$xX47pVW8@>>O{;!h+>jOb?vY*` z-Og`F1-|CTpmA0*c}z~Mtf-R&YWOkVDzC6IWR~}zZzPZaaBMk5xKM&^ zqo(!#>%F1+Y+pv9yFPKn$;u02?qMt$tSBI2Q9CUji>Q>c`N8q2` z^lID=K*yJ3S>9Q9jDPpZ;-h~NFs?&kVTQ7sR*B zhjeJ}DX?jTIg^}b5aq?xb6%isCcL~DV$1Ken2(fpc0!+p$Q){9)>Qbg?qgEgH@zK+ zT!!DbDwOLvsYXja+!G`l?>|KzTsJ*jbP7&;3`Mnjbh@d26F87p?=Df^Rcrt76kRN8 zR?+HA+HwBJ8@p!GCPTg27kA6*6a2dR89M38C{k!Xrd+Ucm_;13gyr zfKca_Xr+pMltQ*Q#+Nu4OcOUHdIUHp{DRfm0QfQder^8r{j;C8IU_QBGY{_ukM@O_ zt7x{eyoWKH&Gn&#XMak0$tH;_?N!G)eqPZ14QDU3`esGI=U*9Xzw#D?{F$yPWO-q! zQq3@9PN!<(lY$~sbRw&N7}|lG_&&W^rLd!pt05<*MkD4h?GNMk4vhgj?aKtBI1cf( zAelFDyRx6e=2ER}%fW4OH?ua5 zPT%>p5^K|m1|-F6x$6eQRha|{gy>jDxoNVO+eGmL&HwWL-8GT@UGiIDWuHzxseyTQ zV(~z<(#>@J)g{-hr6pi+!+>T7f2y-p=PnR0o2@}8C!u5?hb_em2z_Tx_i!u(y49dnjBD&s# zuHy8?3TS|=P1Yy@GQ};ubUb1J1Gj`DNnXi*{^eHwL;AGWk`^!i_IuslqXMLO@P@c6 zX?6QOy*DxK@VfZdqbaumt@)8B{niI&!<8-z@fFylTSIxv=PDmZwItn>-*jvb*TQyG zz)0eC>e(jBHhQ7N_olTe88ND_ZB(9L`oLcVz|z)$Ip6oyc;XXqH7qTi*$SeFh59C& z72-w5wB2V0+%Q+;`cSWP;F+X^?M?0G16XGTGikaHb$yZ)s9{(qSV^wX+EtFxZt*bU z{`sG&wlG$kQ%RKJn1lV6#K4Jj;28&WTTy!1vN>^9@aTCaDQ|2OY6)7eqc}< z%s^%N?1iZfL?97VIrnk7@$(qJ2pHDc;n=}&M2UNknEaO-^XWr)M-2|qbyki3^4V-k%%G#BZ-0b9iG#CBYX7Ao9?ZMkn@GuM3St;V- z`p`lY^W)Fk{>nb&8If3-d?yF11pNu^-mV>G8phm^fPe>BSU?}i`ry@1t;FIaR`9g; zIj2GBL|w{pfu1I81J|MjA!j>7ojxOuSoPFyA<~zyEcA&E0LGdcIi}d1lXPT!bHxnF zTi87Y+^>xdNdi#-{#+eO_MIX@4WPe0;d~w{kOloS-tXgUxjR+aWh(9OP)lOY9fQ2z zKj!Lp$b>h&{6fKV@H{M(v@k>h^h3>Z2dxn6|5K{s7t)!rHfX8ffEm0XFn}jouK2YD zvkMx21?4O!bXxsuEEf|hV_zIaOO_7hepPsE)5yQ<)!QTS=cFGyr1yD_E|qgwRZ7~H z1$C>PF!M$yX|dwm>r%Y8IW~>+7y4<1pzgd}xxwT;DfdcQ#53X2b72Ewqm~h1{^5`& zUPOH#xS9^8nYFYrs~Ou*G7hT29vzS9U>op8Gv}sqEjSEb84~1ue&o=<8Z9RsE8`L; zYL)_Bgc^p8F``bVm0lgvt2cEKBw(MxFlYUmeDGQ3JV)UlR*>5Dqc^k;WUa>&qE^{)Nn?|Wo3A0qRzE%D|lbg$9{oxaXd5)3RQ1+)91*--MNF3~cKxWS#-D!g;J)5Vmb)FALZ+%;!5H4$nMH1EeR?|}%d2emu# z4F6Lt9JOI=TE0oJj`k=D0OhW;OBC*@y>G#_0M@W^e*l}6S~!X3KDmaSgVTM0gW*Yee-;Ck7`X?NY~@ zE?sR&Q^km_Si-QQE%(n2cS4*ld#cOj*E;94X~zSw$WkY4pbBIFN{_CuVO8_ZP1!WCIwc|%qj&%&~y1lu#J**jT2ev=9okaKF7w*Fb{vB*Wae3$o{lfCU z?tGwRLzNzvgEABRlcA%mzeG1tOSzje9v+g;da%ksB4bH>+E@`3AUoPM*cE#|?I*P_ zQq1&Xk{$hIvcuuSe>c`tMXLf*gTQrua-WN!Fpl?X){^l)R891l&HOBY#~GuZ#+%f4 zYzr{bYNTSK&?&r9oGSl5wy;GYB0j7YC#06YFd#FKjli!my{*f>-^<%k{tNTxUugyT z*JPIfccl7?_@CW;C0eCCbj6AynZ zpK1mEr5}}y_pcp$c+B=m=?58 z)P?%nBoKjgbN8JVN%WO-$>GvPzq3)-t*umjP$k{P`X6j`%8NN$UXZ)%(Sw&Z-zrRT zA%B#E*Ej|Jc3j&3rBqz^3b!;5HI*cWarZNWU6?-N$@mH#aFRA|Fp&u7Gv2F5YCdZi zH&L+hXS4o6%XH}Cf{a+#&+G)6bv$$rlBcl*z#30_7oBUOzsDvh;Kx*0a~%=-FYiwz z*)pRZOsH;sXWVQ!-({V!DApF;B`3@(D2)GWjlas%GlR zLI^QRs+y4cPz&N*Y>W)>7WTTro@jT!H}Td}9E@l}4N`AiJzB|UrBx0a^lvzNaDy6xPDTCFrk30BT&WPR zGwu}=APB#wH27euTSUO3Ov>MeD9z6f;lWD=iMsnCEf(=IMy!QFvH507JyRm%(}&eHB?+ z#>SE(!Tme_%gqDxfaRC3ij=VqW(~%qMu z8o(OB0-kqsHdw1daJ1a+ZTN73wSAW8#e!LV&5qJrEP?y`P`F_n(Nc4Ny}f(=O9%~} zhC=L+qCX-t$_KA3nG{)iC?_%>~yjc->7|5GTEJhz}GUzr%nP z+^(`!d*JomfB6$NJM_x-gufYBcZEBynr%bPB?Bc5(IjBecF`fWN;s72VTA{)M`z@_ ztPqS4ttXVwB^1>6W|I7@Kbh2i=Ys>$H~-#ad_W!>L>)!i%y)@c5{l~TOaO$G*oF+4 zvM36+hWmLYSuKzrte>Dl6&nEai!_t7WMyLQ!g*kH7`KS`iCt`VLN>n zoU1$sy;}zfay5<&x+R)B4Tp--yMb50e_y}T5GGxzhr;OZ_DngMh)6? zZ_?(eS%x@E{c9j(TaVUaJIM+zZ2J*dA2YgKU228)tbZf1E{X1kP_n3G-AJeby(G67 zavW<;!8fLdn4-hhw;6RH_+@|g?Pc{SvVYxB=j~=%;r)Z-gJdx)eCdf3<87?Z+~CCc z=doCK=JYj!0>6wX*iL-T?`R#L;awnHGzR&f!q(kNvt`H@fb*}KCa+``Ij zYg_Y`I^K4%L`brj+2Xn_KjdzL>bmq%^GnDR5`D19e5Hja#BzN8UJ!i>Q%xvwS5(sz z+JZ%gi?&OI%=I?%0$<=wqO#Bx=nToHVv%QVVVUL27aEIA)i;6|9k9lrXoq} zG{8%m^m5@IFg>Wg9Iu_anfj$Fvpai_-u8US5ZM&Rl)c_0kOrV)kLu{$w^^B*-?M;yvFT;PW2lPe@n9881?1hLSy z+}lp63YZWtrm^ZuKDZ?u^xhcaNh5dO*rCUf0lF|v)WzkYmH54-uvSoyeY>*iJJJ{_ioH!~Y59d;zw9{qQ_){x@B!WF}K5}2yEb$?sw zqPWOGg}a&x%tPMw=ZJ#W7nOEM{Uj{1ZM4>dKp^+meX^H?LbaS8!lCy|YeYy()qdKC zH{C~#{^Wn2`ui~GL2E!{-j0~6UvjTos1+)VX;Pb92IMpNp{H;B99c*dVT>;5 z@nL^~gu)sNu{qOqiz@2#0RoLT#8V&mfHW8h$6XUTWcvVD0t|`t6i+?3MvlR&ZSol^ z8^_R6@AJ8(S|hY#BU^qi5$^Q#A6(bBc{%~1%VpGsw|K;=g z{F8n(N30NPis;8MTyrT$R*A(TAl`9kxS9VsLP=Nte5z!)Qpd=pNW<#BNIs<%ox3*! z)td2oal-D)-2&;;q_8Lk`AvlB3Ju|JQ(Lc#beW^3&|s%96N6V7ADhER#v@qTMeKJ>2p z^T&I-3+5eni)V7)xbvGkM5~nrqTQXWQNZn5eGOjOG6qFmN+~yWcsx6On4f?igy@^L zVylyN*O0FQV=c+8jdK&Kx#cfgYlxay<41rY)1%L%BACeES;8|&jE1pc2{L%Zf2E}C z48O|wjIyW5VK>03Rc|e~{3=<;Z(EUO=6UcN$>1gIR-9MX+TVircaHDGPK2biM% z__R`%k?h6|9zE7Y#Jw#a6||2G6DgL{e59dWEjfaMb<%9vQv&3TnK}zkv|Lq!M@3kr zwEd{*(Mx<%u5FsGYI9OK3v6J9N{Y*K1~BJva!87QmeW9jh6)?`ky_*)8N*hh$?UC1sJEPZXMra0X7a7@;t6?dP+25i>NB+{3 zGilGEz!=T98}pm_t6NrXeRz)P5oe_~UIXBE@%RmyvEX&DS@f7ay)%wKqGM3!iH{0UkUi)lDCh830x6my zeis*$86Icws231N$TLjb=pHkc@c77V!>bfqa?46V{0zDuZyKki>5F>iON`fa9|qo*TJ;hYxTCuX<@@%KP%)ZE~H(^P|LW=5v7wy zw%ePV?qBJWxu{za5+5M?g;AmkHv9)yU7@ZrmGWX{Hu3ww`V?YL=SnIfZVa?xq6Duw zSbDeQwt!20YIBG7npIVCb+j_J(UvKFffOT#jFOig3ERna85iQT?iuJPZ2(LP0_!u1 zR)U&iZi{y};g(n)5Sj8QnNb`d!0Ls41*4EMzj$2_g&hfP55pwc_nnJ5 zTrHT19elvOpg$jfwz9n-DSalh;K+2$6i`H7agzckcNU%4tnnNZ+cUTNhiR^|SS>?X zc7-3uf{rMbB*|W#{o?J;STAuX$w}+4bQo=$9U-Y47Wb&rs;1SD>Pv@0KkX6xaWhz2ToIc}ZPe}%9~PHYoiLn* zuMs3zdNFAb_N#x7F%?XxQ)|-Ed``}16+Kz}u8CpLDj#iMb=?~I;6g`h)jp$t)3u>Y z1YwUGAFzw*y0_Eg^A1W2P?4*@;zGe*wkJ;%6x}d{{PXI0K!8=Nji=_DP6CfAwWZyJ z$}Xae7T6hL$bs(JFzdVrLicFUiJnnw`knI_76pJ;ANdLgQxB+dJyvEod)4z&uT~cckCBN7jMywEBw{f?0RkF&QNW3DYV4oPvC{@3+2VnnO9NYnS5YmS( zbv;t-3}je`C%+-?myYb$r6q0?4U`pzhq9k}ZEt*ii;>W#qUi18DEo3@v4Zp)XHRWLPaSnK?5y6IfvR*B zawN+0gWUcOAcXZ=aoU~=370)6|FOb5x&K$n-YiJZ3|jyk2a4T@Ab!m~+hvk55O#jbj71Mk)Z#m4xZ+JTj1o6(&Rc?SuXS)Hi(h{$UY+nR32q$|bL4!h`^CG>S;GYV<~g1-fB!H^ zVfnjq%M2B%*-J~|VpP@Pg#ExLe#mE(n`mT1Pe!}}+FJr-u|#(DC&1JJT(Rr7SQe}F zdEBio&Yn1H!rI*p!xXT28PqFL@FF!qsm2Uxbs&h|epR@zQ$6EdQIUaCaH=yfH+S(} z4NNE|By!{dRV>)Zm+Vcq1=PfN9HR;MISAjl4C-$>^}L}aOyRb*EpWW8Kql~wO3m>n z-Td~N>z`0IDHxoUHd8pF0>+OupNow|i8_fX1S2?Ho`0T|i)}Fe=B`V+o<})gXR6OP zaKb#~nR5X8J|OA@j=L8I<(JUTIccHgT4|A^U0z~TxandAim|brBQBb#7gf9~Vg>b( zR`FG>wur#8-BiTuK7<$3#hXqeaa>V>RgA zwp+>}J4^di#0?(Wq`{oPdxLUC=bzu2GHNZ+ua#XcTkvNP-6xo*Q0DqGusTb)&bWE= zOetIsa$W0@>VsEm9&(OSG4A|TxRmug{1bNA?tM6lpRd!k6)@Wc?$HUEeu7FLw_mg! zo`D8BEO|ETlyZ$Zg(?Q0!P4`u#60kg<4a~m#k*na?iJy0{^XxAuZh!EqM);ldjJhT zktdxG#*bAOfW7c{BWPBOo}xn>(HC}-M^kRZ74>~TP0}WfAeRA7zqEvA_MiE1!w1`0 zns~vkDybZ@COU=(QuCp*S`hUh5~_t)Nnd+Oc}s#$By90UCkW!-|5Xvgy}Q21S}0IA z*R8TkVZ|+Sf6azE(Nkf*)^+$=pRqlbnPNhE{ob&P{|Z;@%*^lg>S1VTh?Q!wq!Hft z0gJV~v?E+DF8tEp7BI%7$znkkXv8fWzDDYMPJ~3GXA25$DRYW8)5jEuH63?a2Px1e zUovr1h`7b*w;4Uz>tz{gLFl&V%HL874>LE6Hny3d?^_T!%&gGE&?h3WFP8bty1FdA zg1An?kK%JdrgG;oWitm_CnMO>+_iOg1)ELJXLT-kLco;K^okfynv%@YGO^EG> zbmu}^PaMqqHh@4FNYOB|)g~`d=y~3v~U(pp+OCL)|Iq^;(ve5dAD!1W_ z^4ciFB1wQv`NcrNknPLog2X*RGqOe(OFT`Q zY_`VeT&>T*E02!{;fMhE4E#Nn?Aaq)1*>jL*u`cidJg zPXbYhp6@+gKVmE6<~Apl7w_IcZvFzvgTl@EpC5>est1BkViQ1UQdyk;{RF7>y8ONn z7Y~jNzu&`>>Bse_;j0ELhC_=y(EIi#;!oq<>eW?`Pn_fQN-(-*SuEsO__kaTlI?$o zTe*pQItA_4^dJFi*x$EM!OMo|EQP$#*)& zWMaN0NmxtmP&x`o$z8hPp{UnBQ~}Otyp0zsMX8r-41{GYs zNk>5C=2ZtPBaf9G*o4}Z;i^z)Ub@~9TceyTMz(+L8${+kCrx1QslSm4RO)mdq)Iq{ zwBK68vLNAWFPA=pc>VL>^U=kwXIcHjqS#bxJx<@2JUZ@JV#Q5GsU2UMWt;9pjfgY1 zB;ubv+A=?prE(SacWVqY9#G`o2V*DEyBIB?)=5o=zaQj7=H5@;flZUMA&-Tya`Q-X z-DNl6faelv8cfe*W_puq@>Y2A;sY2&wrex2G_$yDIGe8O^+0N3Re?Lg%lz?d{?qNkZ~#WBbm9!9kRjN)s3V-k&8}g{1mu_>i8n7=$e)8Qe7cQ7 zkiWJqSzmctJSYa;5#7X!rFbTD5#ISH#0-gGX zB&p$dRvR8Lr+akbO+;zuTK8 zI+?|xs$ygw{6LhkDK{}+Opb&*E0Q*K@jbo~V2!dzl4;FIYzn!-29r(fl29MfM<8d|BCQ+nV?f$<%vpr=pRopqLg+gR}NS zhw_o_-Cas5_Fy}wCwZ%fCS(LK91<9)2Ld7WVd;O zp*{g79R0E`1(hY`94y-8&hhh_@+rxOMeds~7GijJ_e{$a$mpG&gL_>mFU?$<&*4zG zi^svKPcA`jkuHE_&+D0$S620YO)mjJa{qpiv@VY;2Lr6S`$t?%#A1}ysQ4VmhUd_& zL7$lGl1xWi#=N#M>(b?67jXt*a6L4iZ_r1*d=m;7X*9+TCh@fVmR`K)qOq@{xAL2T zMFRTIza?&&{lj%l3*G~^a#S%ekOIYT)Fjq0XrfC7`P|2Lof-RPw+A(dy^>hXyDg@0Q1LxV z*gl`5WsS1BBq_TxpX97%i9EewMXfmtQ+pQv27{m8dUBW=X=+%n02KBo_hv)H%t35tE|Ry(RW6Qt-X3y3YKN&)HWylkxO~N zCspvGY_KZ+2SdO40=vth`$P5@pKICob8p3!vs|(-_S%&Jy(H_uZ*copL&;6hBm(cQ zD(-jv)UL*Nz5X^bS7?i*aAz=%gE2owV6J#0_eNqd!i|f4RuYZsV&rS{EA6<8%iO|t z9F*airt$IhXE2cmpVqPXZE=WEV+!e`DZdQ~^a1Wz_bbB`@~;+x!)gEW*nt{{dP84W zrLFue8F`mY@Gy>?VCEcQ?ruShZWgOgsyTP9tQtpzDjy_|r5w@bJ(w&7Drt7t19uXr z_6KiT(qz78aue}Vk)jm%583W%15`-QK3Zuq?Pg_hSUT+a-A5D5W$61#1pErFMdrEKTj0loAxWx(;6E&P1v`F(%C;x~y$4eMZKzAxp*) zM5;+o8CABp)7+SPI)5|=p0&Hd$Q_7aGJSW&O3W%Qt46fn#!8X^!lkT6itOAu>f>pY z68fN4a>di3N{+~9aH8A2)PWcFK<;G}Jr>O911sG9Ah<@vAfX;(?ensKB?_Cb-` zPeF~w-C#IzLrFLHS=Dx3ePs!2g0CX{CcVcBPZ|q#j=>G}3_-R807+k*#WOkZUBhAn z#$xh*@7{h=aqi3LXSe1-feGOqQZtFy2t0G~H+%5LGfNPIy!;x{4$(DFcG2;%)pQjb z7YOa9x#F4TXXEqU%!?aMytzVmzO$>L4JzoaC3JeQE89Q;vgiiEfH=#=L1p<3QeTduq?sjW=l?iSu>h z5)WT(hqU;;G+H5Mjb#Y-=}9D5cS-^dL5-15KbgDT(|^WG+bkwt|K2L`h8_JFYY9EsdnaIT;-)4v=*L=6UX(QT zSuICjeE=2Vc{Qd*^O?Lu%mS5q;^r{XTO2uKev>B>hH-zn3Q#_E$Ku% zx0Oe&zR0!`amYe$!vyRU>a_#HWA9b6tu@(=q%9qZpRbIH*RM?}k zv`;=%mkSi;9>~iWX_ge*0gA$Y5bGhOF%zTzJrVaBVe$tGHhYm)liZUN)ODkgBXEN~ z%CqBR9mQA}mF-J?%W68J>~|e}mlf$W*#!xHCgV1p)Y%&LvZMZEEtGns-f|%s!xCJx z+=oB?+z$UL(lN5;)h~!5x>i&FZvU0~U=Sbwoli^}j~cb>^x3o$P;s-Y6S{)#2`p|% zG9A9b#V_U(wp%2i#dcH<5qT@~u`WN`aTeE~23K}@v`u}3DO=<+kyu18k^9-6XBVjh zm6@-wx8!THFu(m8D|Re)>bc8^Hmr&{Yjx6C%sVT*tEc{O`ToxOZQD7%s&u<@K@5im z*H!F|E{FJIBg?^!*h7ySOGuyG%D;bVT{UeY=9`;OuFIYm9{(545qx=ZTmL;lPEfvd zUx|Exg^7F(^Z2=itY;||kuo#hOqty9lB)F!IGPaMN#NLBvN!6s0x}xbVv-_x{8zBI zF^HUoLlWy}sm4yODD{}dltErjfyc^^;1IW;NBU*z$Yey~5AgY_M5v`-NJ>@q<4mpu zVHqapmT`EO1WvdsMUtVtPqkZCw22^s_3Z>9{eDx?q*ECD!1)=_y8&75H^;+(MywXo%!qi1;=}#>-)V2z7C2LQUn}3 zW!m6(n;Z|iUGh)G{oQr!1?kf1fpigXI>@QAz1Vi!b8Cun%5b1uv^9l9gSrkJZez>8 zSl>@mvBaxmyw&=x@$l~}crcK-PZv3ZI5bxX3iS)&ox@1EH$I*3YTO+e>br-WoBK{> z?qgdwV1z)fe&ZR;?flmD16^}thnxoOdQ|#=539=olWM<n=d%hl~lec@f#C;?KRufG12*R%%0ooIjB$_YC~+}E0;e!{q~Wm9gU^kJK&G*>dDyZFHh?)gOG ztCsTNM8f90>{iLdcGZSC+r-t@J`U+xzr1RaOyM~kbTh`h!j3Si{w(=6Q~Adpj+mXD ztAldaoTgHn>YM4gTE>6$=SP%dFR6fN151ljTb#62ONdyyeMn=u?A8!$5bM)N6wHtp zOVLN{ucuvh2W;}Y)xiB8^a(V{I~;bLGO3xi3)VsJwRmh>DM_A#lr07iY|Jfr91o%h zjUTYF48hnMk+lCo0_4t}mi?8I+dt<9D6f6*D95oUyS(qsIkiz<^M5yTlN;=Rvzn{W z;(Ih2YfcyPDH+?3*DCPa0GeTGb)ta{0Iyk8(pjdJR-%jsY)oLo(Vt8RyJhW{NR#$e zV-R`*$NijW)XH3r=M$oZ&-JEUq7NI)@cu(oUG(Ra4gh@F%+^PVA#WEV;B#BJ#a?sIsCa`;ivj0CU+4CBm}ApTD|`^u#y z8=vHnYqj4wtrI^si$U;rDow*29lp9ArRrFIc5cjyV+5%;h8Q53{AFo|>X}Hknwoe4 zO)h(OK?%~=y;i<7Xus2;c{butq_bDq_+)Aac>GigqVVRzNWb2^{I3{!|y(zoSo`cw&)DdU5(A|3O{;8-tx;$oQlmXc`artIJ zlXP&1ZA@f@EFZAAT{ZV1OMMY#R%YB;e;R0GTP}^lkCxT(@>23(`I6G&@Z7EabFi+m^ z@Qumq2qwGL>btE?uKtQL6EG6b`{N~B8bs7ZP)Xv<+)-D5(WL`;B3$-U)JXC*MG z>k9H}@$%FAb)W`i==8wqhMiiIi1w@SwaI8I5*#g4_{nmJfhxayqqf9?^yPw?zqkDK z+AO=3eR-yPPi~=-6!tYJ$_?=`^bd#?$U#a<4N!P>!uDVRCKROB+-yT$K$_02;%cZC z$UkTWEA#dIaFp8B1txw+8f&~s^0>Uvm3?nusJi|do9xnLJ_SMXJ@*;EmrdAPM z;a#9NjEto4su>!nJoBw{-Pvp3f+oG&@0wMnGC1OSO~=02_o*b3!eG)5zT^;+09rWl zThyO5UZvp{UOzSZ(Aic>Im9XfM0j=mvZYUzNI zIF!Fmuz0N5oZFV$Gm-ikXe(FAuumX}!k)ZnF%|dH0mo|ZMzSr193z)ILQXR~F1}h? zvOFo<`EK*&(+GYv^cY?xx7H!YjIqnFwv@TGtU#HGm_PN@|BdC#4fdq1BhB`<39Ic%`8V287rX3x92=rmO#b!3ww^LgZ>R6?|A_m$uPVs_VkgyJb^9OB*hHyeLi2 z_iHvC8v4EEZ%pqGA-S4S=4Vb3@wtUMVRw|b@`Xc6@FH{h%2LmM;QoQ~B!!k`Jme;A z)O^#5;@NvSQw{!%a2|?4+{|ha>mitt<%v0N<$1?(>{0NRX^8*SU4IL=MJllMLqa%G zo~-MLDdnb>t~d-chqJmYeMy@TE-QtM@o#*tGwUy>7xt92%aoyIIIj2<-&k~3GcPgg z%m2aFhGpl;E~DO_@PLeBlyKbXT~*KFvArAwpgB)li+impGkRhP9gfmU_4nqoRg9?n zV$SE9Y)l*!Go0k2A`E5ZAqc7u4HqJf0AI|bTP1eE}f`XIVAo4|6YLoc-^~q zQhS_~OXdk;1is1(SgSV#0elp*52N+u8cLV@Cox<2$~Ug!pq<#;^gN^9It02w+#;NA%pj3Ho%UVbbUHZqw7ds(8oV-GpHTWsE$vuAr_Ew-S-nS zd*7Tol!cy6b>Q*E49b%ihS>p*a8#+%<2inr-u(1F!-;{{7bB#J#C0lL%&?$&cRs-P zCr-vNB~kGUN1;fRn!$GkK=+dz|7WvAq&DD7?{FeN(GQvaAC~Xef_{J43{@WHc$Bbh zv5<@IOzM7-p6c*}X&1#F(8#OC!6k%%i(Zn(}`^HztdPE6E?dt zV7+eP{;y=R=uldl+chb9EJ;_vA`qkhs)LVbtR#?KLpj^FIOK$HwlMfx^)KysAkF@E z$ONC=Ia=+~+|BgLy3}9$H+v5mZ~C}Hs@gib1MbGq*_W8xuRNNX)5#db#kN0kh0y&Y ztM{o~I`Pp?bdN)Bx)0=E4jNfLiJtufS|f82bWSTx?!x2`N5ygVwAVp-!39H-c}2*U zHdQJ{@Kf-G;t0YD`rGcm>>xf*{c0*=@=OqZFtePi?p>2%&CI0IR@30uuel$OG$Dg{ z=Q=#(f(7&rU~{~nk39SH$Zwx1{QxabIIV5*)8~V%xN>&rXy`f02AA_TozhI#&t7kn>V2|< zG?N(*pbec@(9ZjHFGE8cp^Qm8+zuhXfa{to?oM@OwWpoUvm{~&L}33O%lstCS9}|+ ze*2U!H?7=Y84jx!b-diNz*QIVSuPl#bIbf3El*2+DE~QvwweL~gRXxbVgsprsIY5Q z?*zIm{e(um{v(Ukh_B%kkKx05h#WO0cxz-DE^BW7E=R}zu}a*S0w~5RWw7QJ0B&?U z_J@JoLH?eG3c(A};jeZ&r8$d5yvjcXgkGiH1i$*BBRU%1Mc9qsff54+7M?7xj+xc) z=|hR20PIy4Cd3nq+GklgKJErDKtop4_>W#vnS|Xg$8rQK?@bjo^eR@8l#-a^D0Xx4 zAqq$*DQkJD0Ib5sp}V)HuMrpRfzU7CVnr9FQskw{=BZ=N{YUadht;NU$y4&x2*bf; zqQuj+rTSR1PCuYC{wpf&L|LGXW~vPg#wPDib?fHoh^VZ&Q5pcu>c@!(*nYtg;t9EW zoG0yKbFAF20%p=48F=z`(n>5*X&WSeJxABNo{Y0yG*Ln;7I;BMTE$c(PlH6z)`J#! z(lAHNn=DR%Ns$BGKE(Vz)Q`pw<;BzhZ(dA5SRdzT99o2($*h(tpZE-bXF6JgKBNKn z!B*Sf4fQbq))Hg9|^1)pXJ#TI5Cg!3KF8J3_$9z&_#<(I|x17#&QCt^b*6rgZ)jq z){7m2>UlgvVI#&)Te%JUxS9IhW0j6Xu4Mc$S>!=Xc)Y9DJjqqKvjoXw7#_y`MF%`jrw$nY z53@k1WY#rz=aBJq^6Q=-j{vVLP~COnoO6GNRyJj3THy64Ub5E^vGYv0{XSLT2x(LjkN5h`kG=)e85 zHB(_>-P^uC_K@pe47eqqMOO zj7?O8UOCI=fgQw^PV3zkQVH<=8(lP^ z>ytS(y7?!wa$>k_i1nmFA)JSAzcKxjQTI>8qjM(UQDhbT^pGX#Lj%hbrUkR0ut1U* zEMh??ysXU!wqMa{+@6AbtWJ7NHzfm(#^1}S8|CAkq}5O_xl!}l$HJf76zz4 ze%fGJZ1rErdq?N(R3A#UuJ>T7PRu^r zOKHrSi1{$ro(jLdJ_C*tUTd#%?K1jd;lq?m{_^jrH0ihlYORaPg?en6VlA`B=a%1T zFSo>!ky5R3%R4EeqX+lqJ#U3VlcDq<#mNm`r3vs*9ldETQfo9Y6`-XR4AiLhV}}H? zU;2fT6Fo)XQ~Ey5;#O*slBjv8Q}wX$;DUM}xLAw%W20UpyFW4z!W42O5;X3Y(fTkG zW7x>Uv|W@h+`FEnL1o~1bjhVQ^_yK|R4`47@h7BuBJ_1sgzD>bxzFi1Tv;yWkc)Rd*j?!U`+&DEE?Kh-`$UVZ)7 z_V_FF&`IL*-YoS>Kp^(4V#N;`dvq0{cM%a%^LeynuFc1We*a>pDEIb4D(JWwa1{md{Ocpzcv+RZe``48=o&P&vzoqB_P5ov7J>d(n`92 zGKhKA_yCl1s}>4>K17-eMhAnuqjhD84Ox?5efH%f;GC~1D$nySGDms+^8z{l`7U49 zmt%MJG&DVTb0BoPsd|Awep=Aski{a1Wn!Du!jJ>g_5l~3SAex?0;^p)x|Wtzw>nCrBEQ);+Oer%?U^j zM=P$rWDeF(m5|xKG_0UTP@NFAFT$$(H=k}rlOWq)8!s)X0z|nXQXA+kXEa@a7H`}Vra(8Q@ z^%v}auz;`(-mmI|I$B=0gjt(POLe)`PSRRVMs>1e5?M?SAh#34HPJ7rdWXYphTBUy zP*$R+HCbOojMjo4HYzI0tkgDiWseh<_QSv>viyFsF;OG3mCKIC$|s)8j_OJag|Z6w z*YWguZC$x>@-zN?;x)=rdZXt?bRc*85ol0Am@hSlcgG<{Qf1+b3+TA;D47p2q4h$S zpD_z~c@;IdsMUUW)AXtDdPZ@&?cPeQTRdYKp%Qhad5487dl;Yl9%8zil<54M?%skZ zh4jHc>wUNBC&&}D+TxprxF%EK*EUO{3zKy? zzCi=&_TbJdRc3XzvnJb$AW4-x+*wos8LVF!!XBl{@^+>z3#6Y5x5R#^+I{B9k;S%B z;O>3^Ik<@l+1lPLa|>MFgWioch>h;u+{f*M8t0|B6_=!#p?36Z>n4$LwbY%Kvu5ON z{arF&kmfZGTfg?7KI{JY^b78Rgv&_LBSuw*Njdr@*!0Rv(?ySS!&!TWkLXU=NA+zN zJs32tl_+cV>a6w!YdFI5s&wN4sdRRWdNf*7$#|sp@kh`75>(w1Pv5ji8+tFUNJ%(g z!y5sb?T<_X1D*iN*rEzaj&4;@iMm=VEATknnh8<4?A*!+Dp+?64X85VV14hIxcQPm#Rg*eYI4%Q90 z-~HhyM2K+P)tu;uP6ATd+M?}Es;K65NY?i(>?7^W2>>#aG?p6xH~t?x?X&8o^Qd8v z6!5x6hdu#F$>wu|+Nn7m?C|sUzSsn?2V=mvVQv6E9xR;i(`Fv|zvpFKky#*qo*kdz z!2eFSMF%JEE9Ct`YCSiom6G)ofawXiZ|%x6XQVy~jLu7a;OI`;+1b4CEOX;+u?m`l zr!wFhnK+>M%|Q%dB`{YzZ@rp`em;del);Badl?4gW||^uc*s#4ISCWG#AN}IV2wj8e zC>Y+3@9i+2ssCM|qV=!^7kP@&e$HT?A8+d!)?1MWy7E&eBF|?k2JOj1RLL3}z9^0s zX~1)x|GtdpAG>vJXpW4R837TBGX~!OAS|6Ya=GHTnJ2{!2bQj??y@6bYt@L;rTNRh z@s?)5)}5+8#nmFHIHC)JnJAQcrjJJDo2XHFpDQK8n2qs)?4`;I12VG0>`Xw*7hT+Z z0O7w;<_u#_?_c!s$bk~Lh6(>`2-{F%oDGnV>e*JMQhiGze-Nu3-b$%CqBNBger4D@ z|Kt(<>bUolB!Kd}yeS=FdXW0$4-$He%E@HY#4l-B%oPHaTuM>`QQ{-y@afR2&Ic-V zj2{WJ!)$~ChG9RYoq4(z-87jGRZdhIDjG66qY?P=fj+%I;=5EQ#aukUbsIKw_kJ^` zjjw--#O_=yb1Tja*=jsNneWRh3tGL#v*wh>7ER0DId%Rg&=xRmC?0Ji%&{}=lkLU9K0SH=6v6=*a-0&{ zI8UF&4uCPW9BCn@5WcdjJKWmg-&w`0&ymnpg!_@hR0HX`@q7RAmK997o{RGJBb}&t zcTfGWNBFn=A?Vj#z8Bv6Cr(WA@~JW@&GRwb!`jQrLoP2{g}SZKfwoWk8?D4d5ixI_ z?iLu7^v83E5xiVq$!B_$QYyTtg1teceJ`T6-7x`UTA60QJ0y7uP|JzS{V=(9Y+;9^syjPu`f0T}WJAI4;D)|0m<2b67Zj)^RSivU|Fz;n2 z6^sVB9I(=1pD859bHaIN%UM9J%I*YyN**ZoJ%?TtS87iVWPwOg{j9e!I+WYO!z`o(9GE-`v5nJ8Fr7`o3d}!0 zsN+!dzos1|Wiq)=(0*@u7NNY8p3co~mp$Eno;aRXs74j%>mFk9WggO$yX&4^w3M{J zHrL%V%4pC8il18FnIve0%H^yyy*Z$=`>DpXW&GJu<%5u3Lq2)476qHb?J}Y(*-bC= z0d(_v?N}!se7kUWAe{tkElmv9b9w>M*qe()T=>v^V8U!~_txQ#IzrrO+6rGI%s%UM z4(i@lf`F{&qWtTDbew!^HPw<~vrrPI_yaaJVJDoYCTM5uP@+uDL2&*oN*xnlJ<&Ct z12nj?s{Dvvjni90>uwQr`VpyLx;|OrGUVqm-YM7e*0bL_WQgpd zuowPA13mR@uPWK*#}TmgIMP(d^SoWHNWtNVKj#hlhkxI<1dXbfYEnzelo^LJ+s@QQ zr<()KEN-v=cKyu_nIE(`X~;RkJ$mmz^{vw9ra{8IMDbSN<>CJ}%>axEHv$@Vnx!6$!90J@1b{#~AOqJ2wyCESdm_plM z5$N{a`kl*R6P$Ap`wd@9K}IcJh-{Dy)tq%)w=h$e;sYGA$Gn_3!-~?Fv{>Ih23=7=gS`v^Cbn`&$RaILL{=ktHw!o*L;y1;F5vzt1Wt@ zSR{GfXOb^6x!rdDcxsCifO*wRS8Gr8w90|h`yB~sAX6qeNlWv_;Bd!U$bIVbe$v9$jll0?X+)ml zC+T24(mIhAIsJjiUlcQc(fjR|8xkkpE#--ZfB`hi)AfTA*0>iteTREMrkeOa#FwAp zF{IR2kl}hwgBJg)psb2Lg-Z#{z)7vS9@X$t6XgUug3u-vim%A)&zgU`&2Z(~27Ji) z5Xv}Iu&1go^($~vp{>yhykmMTSlwkD;~cr+m>&_~xcQ&VM&mv-+n!Q}kq4CEcHGS7 zk*t%IJo|_JP6N5Cr9da(sgL=jQN;TFx_+|82?@oWV~$*o4E>KxfM?|{@bJJLgCLVt ziUt0wcnO$A=?;gByr8Fk5LNLT%px<$ipX6F!}qB6$!n)m+bP>0x zP)^=j=oIm5040&3NVEqDSGFiwQfYFZ@>CM%O+uijKBu}XEd{m7%Ayk(vG1E7;y*Oy z7uRn~OeDqr_q4}!BM9BIr=#)ufCqVsE>zvGdX=lGF^ssU@n2NpIWs@GBl;QgAk6YW zsPnVl)yv%u+?PJ3c!|Puh09Zm-drhX&AurlbI!S~mZGY0G3y!)mYP5DydT#02*V?` zRYO<%h`wNOhdcDjov7;TUCWk|%x&W^uuuL{yjK+(_25bei*MikkSTt`+Nz(regvx$ zB9!aii33c2Fs)sojS9VPej8D@GDNe*M_XGt- zRT;m?gwFzI{vkL4S?3NYzOf{$Z?R*fJ)EScU1~0)%5~il%EU=PG8wWHv-f$Eqq<|~ z!2W;U9cX6y+eYgIjbgw6H=sCo2+3-3!^tSxnal{B+DVQEm9Y9<=R62Rhr=c)iY=;< z4MJhG^n$Z#0+F+OS3lYnl$$JoWCkb64;YseLNVML9U4~4To2nq&A&dmN?0p*VCgMX zyoRd9eGA+e}pncmH7!4&MW&!JBP;P=0a~4o1`=M}Kus zxUfFCpyR~rZ?O$@VaIAD+CE+h@5CE1BDA7?GJMZC9ZtL~Z_Cb$9FL9Pt}@w7uYXDJ zJF##*LuylPFX|2f8KN4RH^UzfXoczP3CZ{#%OaFhTE1;vZ81E6q>sEAqoos)UKQX7;qc@#g2_ZNOYA)c{{9 zJ>8T^COd6E4p1N`h2UVQyOpl)N(~IT2OGhq7Z|+2aL*7cQ}Yv5@a5+OlSsi>G2J9U zVh*6S&Skc<{^r#_Dhpj8tPz;iN>=$R(n6mPp1i-tqPtwa0?sw}y5l7Oer*vKXf;GL zm!ww+)fk!^U#LTE`S`Tr{`&)+ZNbH@N7|P8O4h7G+qOSpY03(^ZEa@K zf-O4!IZB-yDq89Zjm4EZ^*{ID3cC)Le%0Gmh1li|eUJcd-#VFQ#CUc1OPb=jNZc# zmukQ2#?-O*ztw|*hZHAu zcBnewjo{t)k$3I41Me+_FNtglx10vZ`q@l={>c)UH&Wl>2 zy(|Z|{r|MtR2YN^%i-a_4HAiWnx^lZ>95pWffnsm2cQc>({z^g;DevMQ`VW1{yLco z7sZ>R6|Qz}+@5)9!qeZ?zsbTUT@u5aE#4SnEJ>!Z^lAo8;r>8p? z%O7EF)6mul>R<&XR{lWDaQ%G%QDW2SEy?+A2jACZ`TDbON^^WN@eIoG!hqWFD zz>k`WI%Mr^1QBxcS-SN$mu~d@rd86*{j8+psw7^5>pFvXtglWpGCv8k`IqjZH`cUU z;w@9P6t}1GcUci)_)Uq|LhCOGrHKJb8`e))RDiA}_OHzdXSL%Ji0`Uv*?imKQR}P7 z`n~{(j`%RTwPm>H=aApsIEe}6;^8LBwcL_qPD9ASAjOdzzbJTTEjWGpIQvi7>K3(r zkn_KJp{cye9Y#Km>AA&v?;^UR3GGs1v>zk-G9H>)%;a8kz#^0;7Y&I7nCL1oWCVi~ z@2A+4z=Usati!O-U)S%~(35n|T$e3;iISc*+>stVY5fEteylPeD}zbMJHD!@s-s*- zFh&Pjbab|kUMHUdUBKlJgQiN7rkZnu3b)nboW5yTvEr<#93B*?{nbM}ZPmN@u9*0% z5(0O->iaQS;&d*!B~BD~pi8yQmv3>}6115mahY=xcQ|Y1E9_8o0S7j=J6Z}+{JXhN z|D;7mQT8@uWc28Ir+y2?Uh8{!ncRbS(qA9?b>OILdvCS9^5Pv|u)gi)1lWDVi+cOq zfDhMV26z?rXSd^dDDp4!SKu}l9mNfh2u;Q_kQNFSlpfb|E5k*ZJ>{*(iM3HrQV(Ez zN@;Xq1S%oqvN@H3=uYKDpW2jQI@ECkTVs$Md85J@oGLKypfeet;x9T+dnhmO`~O~m zV8~|o-jhr9=HpxX&h1I<0_|^3T#KLLCx2+n3g-@Rd;W>oM+6MUX}>*FSr|Lm(HJ?< z>hN7YS+VVVdK9hcLz9;w!6;t)=FfxM-m9}9PC#^PfojGX3R5jou7IS=5(t&eec=tdF3J}6T0!9FKl zfKE8nUVnD7WR&MZiZl`t5d^RrjuQ;eFVq)m94>>Z0!*$dyr_Zo_j4jQvl^+#n0|TG3qRCw+ARkIg3h}fdY4kk&zAdC zEk1UmBVFAZqUkwz{n*8l;AwOlk2O336a+2>6YR;8BMPLiO!45r_&x0dQQxGTIT2wI z8Rb0o3Ei*dX@sYW7l=6nOLUL1TlcTHTt}{uzn` zWWQKuO1Le_T%}C5Y=zvSQ2T&|pFIxpn+@%5iQx?G>#Ro?wKLHoZjWw8inT?|C%E|Q zo>UPu!ds|bd5%pBzE~a|HPIbwCr%{LeKh@9_2y97WFXrDDswiOVuswiu!TQlQvEzz z9d_99snTvVjOf1*$+8B$YCZ!0OOgUMBXa%1Bvq*Kj` zz>_`ZpnkU9?U?%M0ezr{x*4BEN$Yz4wf;qgzkR?Z81cZzq{7<*mnI5Y<$#0-^s=Ye zviHdafM}IH=r9dGf&s+;{Uud_^G(XQOflT^GC53f5>^}+*nn?~ zc?R{j&U{r3tJ}W<)vFXdIWmHI^F}=MBH01|w1wQo_7yb3y$zX)yx%>AvWaEX0FJE8E;MMx1Y zWUj|n;tJNw5kOE-Pv>0!FigGusQ}=v{gW+m;i0XCNWNO#k9EsR5n76m?*3-YJ5me< zdyl#pRe1Zdo1c1h^j_G5(}EMl{)p+ff!d7X3soswT`}<1Ot3{I}vT^~}a^O>>FE@o3` z-hR{VLk2%g?EW;MgW<{NO~EQ@$JJ9?RS-rKe}W*trEXv#Sq`zli#j$@w;kS{XxX(J zZ4;^=(D*?vTp160Vj5dNZxdOm;;Ayq5WMu$iJS)`phI5bdY+NjE%hd&ghS4C{{w5e zG%xy|d|w7&A==03zQj&mktx=Tx1`{Wo`v%uWEjV1YLF|a;<NLCJ)OpM&NL4D}R&m+WidzQIucR+~ z(mTb8{}nNVE}W#@+P8-*0*0ThR8hAdomn4z<{fhj+LA+FzAPIGnU8=vk{fYbfn=L3 zF5I1dz39;TC>sVX>G1sAyut+_3CQt6aY*qm^uw@fXr&I^ka8k1Q=wE0|6Hn1`9B(N zCLJ-Fhr#tQs}wo|%@5j~ZK^%(AdbKZ4bNslj6x#7EwXd_Y8e1zt!$u6Z5ZVqr?4fW z@JU?wA)nLwj(V_B;SJF^1pdxyJ+^zv#-*;T(cdvx+miyGr=$|vReRk@K@+q$-RoL4PVhko`H0v107PYO|DMM)PtPfZ&heDTDlOUH9}jvRWX8Z z6|tgdQM-24ik*m+wyHH_*NB#iqSPpA(-yIJ>=`SzBE&lRopYUkAzaVrdEWQyzVA!= zA@N|yd~+&Mr0kB1llCTIkqyU#7pG%M<+_st>>H|~j&*VG zh0wJsxo=e3hAVE%3L8;5?A{^`Epml2Pjsk;86SVt&d~gJH!D)swG8y6)sKe#D+%$a zT@OkKMY>HKd?&Hj;h=%lTnvmq%~W+B+K~SZtqpz~>&ssHqU;wC2R|{=w=JQP53L&q zDNp!vO@i_6Hye343)_D9tWqff#!8*I60)mMfzXwx&z~SynDhCAe2mYY?PEdrWh8gO z=Fc)6@Ew02dS{=8Jgbby{F6I4jsG~f=0Vd}P0rW3p?KFqQg%1@ze)pvryf(bl7UCdsdtg}8#06B_$CHD*_TZ3cQKBBdnx9C=~yN`$E z&TDY_TfohX&D^fN1Y?hZubA3RJHwRA7c`hO$EKa`SvV31Gh(%EMc_B~mxMWw?!f|L zM~%6t$)xA}D7lo)Nlon8>c8od+?%a*3FT{DcKR~?&;JxGfIjd8x! z7C(QdJw0ff_zV)_U(Lz|Y*kS*i7<&1XiBG-an8~kUf=JI*R^`g&Sgw_V`nzUB60<6 zweB!~_+3-!_um(LBbA5~?*~ibZQ)cmA%+D$#@5CTTGQ=$QcmI4{;%sNk*>>N>!ZHM z?5Eb>V^9ifHnh>L0WF}NdgQzn_$%Iq#y9!zTv^q6p34FjLzQktHWk?js$xMEn&L~G zR~{xwW^*NuV1p5=kXQ9(2$s~!x~3+Gvt(U%za$vodBq1Y%eI3|H`~q@zS3?0yf__0 z-Le@@m)<4~Gx}Ue0o)*T7M$fxt=O+;tyAbt$=wOQ?0*U^=x=m#lCZ!!cm2+zdRH~v zI1Dz)Ido(DS0;9AJz)sD&N^98tUf)Y5-v$^KqNZyaM;=?$p&i6#l+Aay)^dH8hj;5 z0{egWU&wslZ(L^No5{Kcsy2(AFej)8^A9Iz#ewxY{shaMnQ8bUWUJsFvfo4+^SZ>O zJ1FlZV@@Maegu*6#f9jl3vD9M?@cwW>I(XVT0K)u;8Y)VH7Q3@o86Pd9C&7y9oZXev#wD8{d`Bzhg19l{ln|^^8_- zjT=3izWanW-Ou;oJRH8cWpbKV>|H?2NeZ46`^jjr$K>)6EV7fCY#onj78L;G>}Vnc zr0yZ&u=d?-#t__%0mbV+o^KWF0X-gXKvK6R-JutA-3Oi6i?SBVdBgHC8G9+JT?rKc z@hz|IY~2hwu&QvAz4Bf2gWK)D&VpVv;#EWz9`cG@(F-kgG_uO+F{*WEgwtW$G?%A) z6K4ye5->tl6D^CB(fln2l?{;+R7OCd2Uhv&b*xj>_f1MenMEwf(=WVqT{^pFRFldR zma)Im@K7atGAr?OUB)??Chtwl@(5dlc{5dI9Au+QR z8Uwc$b&@_?V_6*c&lY4Lqb9s5m;B*b$KxsW>x>~Q*GmHamh(M!oiQP(p-Nh|T$@k# z_2MEv*|Z5~Ok)g^VzePyZ|5Kv4CSM9LW>#|?wXNQbNI2C=F;>xSpm*k-Jl`1-^KK8 zc1BK3&7b8SymMrhAK;tdN#VQ&V!ANge2fg8ogHH&TB)GI?gfHOowxZ$OC>i25(UF_ zl9rv5nwQGt^A*Ncg;i+xy$yM0tGVD~Fr_9uY-N!k_DzpO#m7SeU z9QUp*InwI&NU((b{$nr1Bf7*i%PsXDBuWcFBFZ{^bIsr)ue#{XSgCN5U$i*Pj6H(e zklA5caH5cGu{VXYjipt=?r!{z){C&5`H^FdbR^ovQF5#ct+p#N(9xh6s3UjKY)8hu zR7boA{XmZgyEtXIm=p=$AM&{WSUHk~^Ks(M51;^0JdL3mDhx%IH{|fOdh^f#%Ep$@ z$d_{s$D2IN<4O1k!6Xk*Z#dtf!F3^$?*_JLV>>hEkpE|E<7d|0V{^=J z)b)x;gO=-%S*{BffC8EQOnM=~4bilng2 z+!?Ld{wLf@rM-_T?J@y^dXhcc*)LDom=&C-7Md5Bnw#&3@n$|(UEL7cemX{qn)bMm z84M3?$$i2LzLFd*W(jpz88csmL(PYX9dxG5ExN; zM>MT3PXa%YcAC?TJWErZI&P861m&iQuj=ebhJTY!h$7?Go)KZdmB;Q2iADJlq~l<; zc<|TrYlVrv0Mq9U)mt*|7SBg;KC?BR=XoV}ZK)n){t)Pn(KybY`f z%6@#KfYVni&XLnOj^ju1rJzO8JM5nvwjC}o&wEPpJ4W?|lf z@_}3!jb$rFk;t(?5ky~+3Qyt9RK9C`x;`;k%Bf5i?AXYfoGwJ(wQbqonS7%T+oe|g zVOK=4mRfgiwNovFe-!@PQNDR`lW)ZcCy|12Wq0ey=?hyQySr$o#WD&$<=5xQ$ejSZ!49igP#84Gik&odo*;pOjn%KRdG|m?6ow zGu$Ey5QE9;sfug$8X^`YzFJtaExJPIj>;c#O6|a$QhF!_`Ym{g2iWy)ZB9J;PgG~8 z1N`$g{_MGXu^fNEY?#_!2VozDvYAEW{o##UySqJ)e%_R-M|Yc?yhs5(cnfNvm3#%( zaZz~2^&0W+LtSBPR?$QV;3ropZKl#cFuW45DoKo?p}tG1gBm{Bf%cGijD2?V5x(j! z+2sOvs77N(GHX5^m+ym->YcbIF&pl2cl*$H8JGRse2SSel(&Tr^Wse;4Gei|tjjpt zIksh11LJnAR*OL~$7+Ujr7Bqb5b_x*ZJ8oPVtxbE(Q#aus;98N%0$L=B9yP z?alnJW_Nw{e#FM*tn}X!%cU{v|1N(J(1Iu09xA71| z>5>Phncyb5BuGqHBf^xM?kHNi3~8AEF$RU?08#4I7;JM`e;m^6Lf z-kiV}zajsWUbICg!e!5-QS3;zfAGc-j?U=Jl5QmZ>Ta$UVgdHY4LEO;hyLzj>W{VT`2 zaEt#>De^_wsX<1;^c}#79!bFVz!|?N9=&fF8*XAnTLNbun0j=w;lci!XMO$sG(_fb z7IS`Q&T6abA;R;#k!3oT~52iB@0 zzgMvwn%!k1ijWe$Da$6)LwDaT(ou@KrzMnGS-ciN;xn*Nxdp?FCq5PS=1OQ*`>{pO zNUyzLy}!zCHTt|i z(5smnD64@iMq1`U+yPrZR5+HSZaGo~LcosNHp9@W7h&Ioy0=A@8m7*>~E5-_H~Yv_9v$&I>{QFT(Wk z7>;Vc$0I%`G?ClJv$sX*V;@j$cQy_SV7$P}3F#|ih*lB(8GQ%?=5k(OCxqDxUm23V zank0B$&fb*XZ?-A`AXgH+vZyV_S9_dUKwQ($(o(yzeQIA&w&9B?&{pwP+e(yQfuT+ ziLmuV`_vyJcoD&5z;bx0ezkKkU zb}d_>m(96{t%h?LStev!;!-}|Puv_I11z^`YN{L!8THn$(&AlL&R>^pp#L|04x2P+ z$-Gh4eQ%I1T)9l58h0v<{~HnvX(*ENnBzf1_X+LxbIlvlLjs1{Wugfeu739Qmws-G-|k{HEL=g3<2_v@bkS%e6U7IGfo zqsQ7l%KYBe`%n>2l5*W<%^iW1^Y-UiajDz+v5*72GE2-QA%3yayvD!p{w7Nz7jU*;{Y~KsFx5P__9rJtVH7Th zR_#=dcW0z!=;|wMeWuOqx+1j`EnrLtmDVSFMm4XB3CUG1^>pIby+z)<{+jnRn4dHK{s-Mb>qn-FrV!)^g>&TkB_P*VETN9O*R9ed94ORh=XM&=*il^RTHF$cANv zN2+ODng3Kl-igoRWCC0YD-Xrwym_z-XL{#HYFF>%&borlwD1`EcwDrmEw?!HlP>4% z*X{U5PBtT%J<^=L;7@qSpc8hFDMmLjQII|ljJ@6S3g$6>N%d6fw$QEsPvC$~rB6^c znzPyFNF6xJ9{peaR)JvjAI{rfdjmqgrd&&@h#fCLjHfJ;n$QNzSK^cgaAu8dZ@0yd zs(jQ>yw80VrCP6-50z})uKhb|%hAsKr4 zOd)35SK}ECB){cn(EV4|IrhLijv)=!O5vrweR22%20fUgTiQSRB)GV~I+^eV{FM9! zz#>*!Q}o)}H;>d(qx35f`?Sv}R;=3Szn8znL$q1L8~0Bh5&q*hKKFa+dWTavlj9Po zi0G4LZ#&>)ZX9U2wHk4zsKxtD*>&naF8-TwxKTHV4OncKEbXn@R+5J47ts92P1{**qWn}Y zODxq^G}e`?0Ss3nFI0kma|De=JY*C$DBjIT^Bm*aQ*Qbvci~n8>(kIXO&ky{0r&)j zPEmBFrgM&v2L?B5W(yb~wnefv+S9s~*Lee^WtfB+e zO{dikZh6G28|aghNuk-Iwa$)_4LU~|skOYU1NEt^gu12l;Ar1Y{fd%_16!832}ZQ8keuWG!>EZwlzD|6{n`(j8z?c&dL zLdNShF$%VKBIza!*9#i>Als%>EirGr_W;zrkuG{dvrUea_m8y*JDuGGY?2Q6nYEkt z{rc+==Mc$>ftFhR&FLeL78>tX!R=yyO$AN}YQ%9PjbQnRICj5K(dg$kI z94tz|uC%XQa;cHMV8-ABY4myO>v9({d9Ai?DRD5?HS$qdJxN%K1_~5^i}3N-e?s}u zljx%axk_gNw@O*duvx|p17UC1CSkE)>uDXV#<3`u^i`HFVMfl6ZEq=!%ij7DE3uJu z)ynz))3q8Mq93VvR3@lTQk`xEHU5JTeCUjW#Ygt|4hV{2p9&iG)a~!-PQl#C+NZj- zFC=4y>#$hJZJ6QxLSEr1-(27S&jK`13%h-}?WxoT>bzT7Y*Fkjg##zE-%cQyI|U7v z)Bi-G?D~QMcY7@~ENMW+NetDjN6*tb?lm%_)a|n9>$XirEWL)nWsROVH0EoZwcR4pQvB0-oHQ}O+q{XRzV zDnm@25T0% zwTn1-9)eQ8Lnwi^r=$w72E9sglUhnBDIzpC+?0?$3RJ;bMY3ikUZea0SHV8$T@9t) zyKg_G`vFF*xa^CkiekVI2#;SbIOKbDEK54x(HA?*|D9Vh#4iGOqj{Ee*t-~gC7pmn z4W3cZCwJ5k3pMeVzuuh3vLoJGiv`=8;F@`8an`gLB79{`UUWm(C11V$il?hVcXRjd zeSu&xI|8|P0D9J2jn#E0XBbSmN6^aWh+qfnsQ097R-ZmO!G^MK<{;O?l?9!AL%)Z4 zc3cm?6s2Lt53^VAF|5Yv<_&%$Q+PVcRebEMjFG$j<_&xb>ds|lP`mA@HZs(yI||%vx+g3Kbfpi?3EQ zY<|xk*w2;0R0v$0TGbY8Yz%B++HLR3#FMUjje&0|r5Q->zAbDB-2WaXCic{?QJ?Oa z;z_g(sUf@C%WM?@w1V9vxEGic$t4r%8$TwYR6lDySnBD&hQd0EhYrv~lhkSF^POE8 zb@!_5H>sVY*Gv-zhMouk{sXmlKEKa8p?iY!!ll1%x^7-dq*dIJI^-P!=PIeIBtc>K zqqLx!4(C=gujVw%*1XMOk6}JHY*E&<2e^mIkcQgpmpX)CKO`vl z&!%i?6s}EE&z^}nIwM}SlKEu@#3tPEiZe+MKx$VCtH*o+Y~7GQ;Hbc0UN^Zk8b1ol z-b_n-eO%;Pp`%@sbqiFHni`--xtiDvTJk)k=lX-AY)^Y~i%EZ7SA$PQ*t~*Fl$B4ngBLH)(d1(! z8ZQ|q)ptWV$o_Tz^Ua(Xxcj}UT>O8cc{KJ#x1S*lWC1NEFGUIT$M`VIDevQhjRT=M z#7OgZ^Qx@cYNd1QlFY2e#b!rljV)%rB(Q($B|63H z=dvpJK|G4$@Z0GwH>;_Cx>a{&$?{jfTFrpo_=yGpk?*cYxJ_H5Fd=3y#7~@+qg~hfFPak-_zKRLC13@ybBkd%c7_w@1>U~^vgk~5*?{!wg$_BPpF(>uln`@3T zpDkb-;rDlhjsPM5Ae_1ULmAw$^?-vh zf?hdM8lk$-Z$tahjRxru`U=;ZLt{#gnSe~n1hFZtkY}wpJAWzdS+B1p8vusR8`(R- z3}!XGPQYtdfC9=_ymuGE+NdMc&6?-R3}C=2HH+iX@$?|4gAg63kdfhbgE1F#)eKIx z+X2B(SsU;me>@@j67Sucs6Q(6>)Nv zdCh~6>?nb37!_nqoFarx*btr|#f(ChLK$g_r>PtzR%idGu_Y;cQykIf$f3`3e3+)_ zuRqS$Qj5Z2M+E`=+oS~eS?Ne$N@Yxa9e0t&UX3FblaMfIyQHe&iSQiQ9IUva*@MU$ zFOOr$zxFgn4I%KAY;|{2`${Ot;F}Pu-4*e+M(msR<_F(@Kg|!1B?!bbT2gY=5c9Ro zsM!*QQ9lM90CTc6qbBwe;1avffu@4DlmmJ-c$Mh;Sh2u8C0$M^doXxEE$5Tf%)`zf zBkzjizbdLyIOglSK)DJux~)=QKz}O1qKMv{!CQov!b)G$4%f~rD_t8wciW{9QN*E? zhbrd(C_Zj_5-9}f(9wz~ER#^zoz?)W^0pTtBYU#}D?92O0w_bEh{t>pN5CCEp^BvT z2js8cue)X(_?sI&Z_NP*5kCi+U?TV+o?Vt7134JZySCPI9NDUiXf$N*9FZSwp1==#p$8Gd2|C zKf+#;5q!dk*~qx;?6Z!se+zdz%UCs6>xh{V&AQnz*ofKyJtPc@c}sG_nT00`*ITlCI)G_)r24w>vMCEzwm;> z>M6J#VMzUXVi>&B;Qa1F=lg-5bjh&@L#Hg`74N-%byJXFYJjg^q?T`d9X{YC&PZ44 zYV~DHKl0$(mvxC8@T1jq=se~MVPG(_7u2sA;PIjR0%P0dF>3K2-J%@e=rY!_!2q{d z^5Ht}>5!<&{&mQ98spKeV~yI*rIyQ7?g@BJqDA7^u@0)pHf9Zc#7j6GURxNvrVlIt zQ9$jne!B~Mb!w-rXn2yh4&b4;K`DgqbI`vN>Ri7hZc6z)=J!H*<4E%L|2J~2MjU|+ zKg5>)rIYyc;~TTIP4zXET%%*RqDRzj$b4~RePyO5*_)5pH_PPhlpv^pQ~r8g*EQrw z+GwQNZh9bn53$@opGjJM8CVQptyoFSYQJWR5Md91*S)gtyeJW(&CTkmY+DV4X(3^T za&}TON5YxgdvchB^_6^Y^q$=DRp-TKotv?x6>s2en6MqI@F~xot zd%WvC)%z5Fnw;#9Y?wUGl+(?*Ygyvjus%mu{SdVvQ!SwtJn66G$h7+`hLJV)YULb! z;>XssRhjG}z8CWRsv;>tY>D%iCyx=3Nc^O?YE>}Ny$d|9iPsh9ebQlB-G+((5KYDlueZO%UDod9Su2|&ui*+x!$M+ ztIrd?`zryYbi7`jt9qd6_ne1gjgS62)C8cR$*nme79Z7Iu6taINMj3nL)-t-7{#pL z-D>uM9DhRWMfJ>Hzhwku2Qs)Yu$4BTL&tf06Kol1Z#Q>wKJ^+v!*nKvFqN<#-el_L z*myH|H3u&^LdaG9ua)WoIQXk(0&88%jsBG`zuHJix7SB&tEQdAm!Vp`RD4x8hnJD_ zE1jnq$l0H$ehejK#-2FH!x_gZOmU!orKHagU((Qj#OzMbT3Jd^;n~H>>*X~#iZEJu zl1$hNj@$csP*Bu+zkfNXY49Ip4mhz}CU!6+x%v(wviOlo>vr5C%d$p83)zobCx@9D z>tYm-SpQ+It<9fbff)4chJD8wtFo1#Xl8L9?t4yEAvC{M)wD0tZ&!Ka!Q$2{(ro7O zA7>%JhVBx(TT*bK9Zk^VMrKDD!Ytv!??FQzy-NQkd){4z$U6Zm?2LsT_o#^6s2lkK zThI1IBNv66BOFo_{pjxAzo*szz%UjRz~Cit&;<70zskngd>qf=B9np1>ky*bQ_U$7 zV;OoBUay$b6qRk%7!NuW#R?2ET9fT&{=|i$jYS$jhuiv2g!KKeCN(PLRyXA{I}!1+8}s! z%dYZk+w}tRpCt`4@yN_X$*W=4BECwc)h>3mk|0!UiwjV*BOEj}-^L4%K z%r+1t8XEHnzYG}%`_Gmxbf#S-m>$Pr$b$Ip0QN^hGEet1{)8;ITi84X?5`G2RklG< zFUg}q<3>d_03Y3VS-K~RivkOJbgQ9jem02yho?)~^Vx}^?&4z{beSM|gR-KgUSCbb z^0K^?&04TXZ&s9Yefd=4Ngb5@77>73iO2$3oF!_pgz5u*8dZl+CmeJY#_n9*1oO!% ztLzFbg=X0IcUiLECt?dZ%LOq00c3ILOr+*b=v&K_VLt3pR6n+)WDq|vQlYmEb3V- zh7f>USnb}hP5_%B8AmYN2xNGn^Tj-LiJ~A%69-rh33w7C)a?^pI6-zyrjnZSQHYWZr#GNi0hG}A_`jD>@~n!V%uW%^in%NzTQ^v4a0l`Rd2 zsZzbnXh;dif4vP%?y-s^)|8vuu6Fodko=~>^R16|U)peM9iTdr4=2*d~CwS0DIvgA8C|bS!+{bPo_x z72ixCy#V-qxOh}gZ5;blXM9e$-{me&fvX0}kb)2~7nxbkP#IH}1H!LB6}5M}2O7bw zlgQlyDA)`uHkD$pqo5O-%<|vGk+K}gS_61Z1oR1i_Q{?!Ew>YBAs3^|>B*8|!B21k z)h%kWrhe^AtQ*}T-TYRvr$fzd5)=MuUrQQXeMA&IeR}Hfaw+9^M4ZJwDJ zy93C|trI`W2Ww2V9Zr5wna}GSE5ESOF(v@~U@=qC=&Afyn~?2~GhmM?XKhrLuwceA z&VOsGO;(067br<*`6@yWA;QI)ZM|WzI^G3Fhm4!SxpJ2)+smZ+qGAh zLC%kpbXXPXIX5UltTdZruKene&K)CHibt4mNx3_@ZQ~CLWH+FzGf+!xh6*XY_7p?!y(^)zK!fA6;JVTHxoD4?O7DB}+pb2lyBb7Ow4&7S(f zuCVD2+Tn2rY))tDi+|I92_)jL@Q(3622f>rtaptClPI5|pn;jrA#i=Vk?9SazI(AD z-MyXv?ZSg$eF^HjZ*yHMH*yD$Num0X3vpQ4_!^Spar;J%l}@fi4oRRL)=HAyvnCtN z!lZQk$im`V_z>&01bedZ;*e8p3VPl{eD&T93w<=jbmwg6H7C8dtx+6ytunzkc!8VA}A=8M(MczQ(bc8Y$F zap4cIYRrR=!>Km+k7m_;y_RNo5gBvKXyl9AG$a%r1!}h{v#n1m-Ss)8*=goZFSbRr zsrXV(Na+)IM`Aa;-yrS)C_f*`K>PDB4POYyrFuud`|7h&NY`9gzo#)m#3Qs zqD*}IA|029E@AUl&o8w5JF!XNFLR5@XBtG!v{i|B+;*sz8L4JG^$c?Q-F)c&mRdB% z-Yvn#TnmLde)HqJb=QV#h^^tfjYG@ln3eTJwMG&qthmpG}(HN@r)hQ=s(Zr zmfbWpaH&LAmDQBVhWN2+btVCgWDV9EdARKvz9?<*=G8`UW9yqWzXU6;OT~|&LHR3szE!Pw5jqoQLu0)1)b{x083>lUIrT(j@7=R!!zEy z%d&t?lZc2~c!F?-Kd#SzK5?c^X7v+Ge!JS@?IccCU6Sf)f0x>@Y{SUe?E36BwXx1G zc>AXNw9;XE339kFYrJLVf%o>jAKd`{5uW-*q)U^w+~zTt8bDlW^zPtAgrPW?4gRQt z7Re=KFt=&EaXZ>;VfN=@V*XRs&QBe599p5pK9J_a|vW1r9nct}A^Dn7G>(KMOszZIZdg84$3m&)OXMxP*^gbc;QV zp!U)2M=WdHLFwEJYgjUiMGaU_@gQ`P6Ti2d4eRq9L&`bmPU$dg?N4#uOW6FB6^J|5 z)D~hjomwWoZa+{GlXVnrB$2y68MLiqI>~O``!I`8Qh!*XH-$?`vaA-$hhjSDC3*{8rh)YJGEDLMhbB#fc9pa57<;Qd)K5+w{>T=XDvoox}Iv)ack@;j+^{Cj~nms^k59!1|6GZDTTD|ukHsN+tSjmMxJIgHr8|Ad=O zYOb)8KkljGmdjXoI-DLO&wBB%E#5tC>@1VnFR4sDbn%c(Pv*LH9HaLvxZP;u>De5v z8zd@;0~L-`B^Ve ze!C^__c%N3$F^K0_V~GH?wd9_BxTKCA#>9k{A{~39$laaiOi@?c_1bj_85BSD2Oz# zHt3o@o87Cg%arfVFQU0`$@+viDXBy_z*bfXb8#FVKBRP$N*FSSLXw=$McLOVGOkeF zu_^wl6YqORc@Ec!m(-?Cr#Qb%z+`1(^oE|XGZ~eA)g%7{KA$D<9vSVTPxEAG4pKkzHqJFx#bnE#`c+S1@{WqP;fjX2jCaez=i}&xRRPS7QKGgC_P`% zInk{hPGB0UKaTRrIYXL_L&s7vI^*_ye==j?A6?MY4#3&1nbTxarO?yj0GX=mI*QJzhD!4zGyj%$j9OPpFD2N4mkxR26 zX1XY#v3_IcPL-SxwO#mv7kkEG?aVU$f0Usr z(yF^~%EKwQec`a=@H9G!nf2A6ZvA4#k*}4L6xM;VJ%gY1QU6gPVCU6k!=?zYU|AJk>P zf1^Hih$)(j>9|DUJx{&Ra&Sv->O7uoUsO6xy^olcUfC$;?YSrq6>iLN^O0n|4!AP3 zd<(yiXcCU7IU81i54o$LDF`LawobO0iLT~8ybJB??kZKw4(aPm>FA{m-r(N3{WTR& zFRz2C67+^^$mijoNbPwb#92Fk%U5AOrLqw>&ae>Hs&EG)`t~}c8s#5!w>jnd9!riN zr=-T@q98!_-sqH_fKys@zg3+2Z+TUP_u?O*FOo%GEiBkOLw4u(7n*0j`amK=Gf6g= zCk<_igym@8r)E_cA;E1!)_ayd5t~H1y`qpRJp0VkK!nics%#ktq3qQr8MBOLU8`Qg zg)0qbhI)O!OnFiTA7~^l6ZGZCt8L8@P{A3!92t1)06RL|p{}kfp%{$w#jPD-)~sd< z^;`4ilN!s5f`$_cgPl0WuzEFluUqO850QUl|0Z-UptY!Z!4JiIkfxfS{QRfNp(4}v zf|SeXlwNNpDMO2D0=U z{U6EsfDw?vU`}Ll5c97PzDCJq!*WY3hDr6MliR#U8w9C8!I;WtP{6MX%ChHJOPQ=G z(FB^Rtod#)<`@h-JeO$}Qe7-l8y2q@^Q?Ri(+*DT*Sw)D<%{m%Lvn|*D#kNWpA{6| zRDWhN(0OCkKt+B$1I^1cl2B4bWc2%sjV+sO!v?#AY*np!bwcZ`>ENfu(XR`YPIUz9 zYH+gQprg_dhG2?Xk}b#Tn28{YGDyEL-s&oHp;c(%U1ZzD+)8g}QqbxujwW?NKdN&L z0eZ6A!6+|PUX+T9;8ddq5P4v7GT@{IUPDXHp&7A~Tb*dp1tEL$^F5Cmx8F*hw3*|D6d?H& z(V!qj8j3hRqxmAIs=#hh6=~_sRWl;pO53D!_Sw2XQESfo`fqDYbl*vuV&~R8au@}x zt$Gy|_8)}BsO8Rp&4%6e@q#I!s<0uEy7_D#S7{e z>!z6y%KY;ca$5<(lOc81OlW`@|NgGRX~lHSwDR5Pd?SUc7sIwTrkt%umyo3|d|Sjq}dK((331=hVm_DN18m6K`P=k(lbw$6tS2 z)p?plAkDX3k(#yah&ItfsK`c5!&n#qE=MJ_*#|o%4TN@kj@J5x*Ve#d&aDe2(8F0tWQCI2}MYP>$4{CpTae{-cWp z9TlcI8DzApxhZE4e7Gici)J(jamCpk?Lbd+zW9ebD9i|4fYLWQ0!P9z6h*r2PboT~ zxF*}naYh`TSEe4R(NrGN=yAP&2!k$Mqb{XMr0<_Xs?Bv{Cc7jjOJzk$s6-O{U{%$g}_oUJKl^G1@J4uw`zUyr#n#B5!>%|AKL5PMOJ$ZD+pf^PI$Xla+3 zVC#Kc2CaiaF?IT`SI~ejQN@?^CbYpTI9S2M#>9FF%=$tNe2))T#=59WYAV&1_AVj< zbUQC*cx@}0%m~AI!;RgDWi6hfw&|-L2%M!#&6zhI@8r?o8*~~`6=UFs*j6>adkClD z;9o@68;N&$`GoU7xSFZ08GQxCV^*aj@9}U*zNnnJ5E@UvbtP1LY4Dvo7~os96C(*{p!|Gz zwV(`Aoh(60V}S#ccK`%RoqpwF&VS+e_VW}nf~wun9sV<>wx@)pP4Ipu>l1-Yj*N-; zNU>GLG2_Me=3>ly4@{E=&j3W1S4L>7kH@6gP5zkG8VSq5sF8gu-NSnKn=|}hD~(PJ zL$uG_0l~}boYFNL>oaDCo@u!`>W1p$7DQ^jraOAcMwGZ4x2)gMQbYES$5i&(v`-Ae zu*(}o80$I|;vgCTa0*%I*W^b#UjH3fDz^5-O>S1jgER}5b3oe{`lJr}BMe$%@q*At zC*s01gS!wQr))#)ZDs#UgMkV#LIjX1Es$?r=@79qvk3tpjg4|cFDCBFBYruf*ht1g z0OfZCZ=m6iL-a*m>jTqE|AASuOntW+ng;HbAkBK~u_=64#~9N2=xXY3{U|QC!oryx zH>}`&OpMH^SFxu>YiIezwjnIQeNpj9_??w3HZL9bUw9lk>Y?o5C9XT^rHfI)E$2UIhhR74HD zL60B4yXUjQ+UND=@QZ5{`|792F0_SQ3T{BeoD_O`&>JaKc=;;hd^-pG#xQ!&$oZ8qM?o*th?8(LJoWoR!b5K@)+A&Aob3R8o+C`zB!HMPLgVy$Z^F-x&Xh)O6XinO4I|u6*(c1Co%%^ znaOO)n{d|OYN!n;U`yOn7v_E0Gxb5G>RV<9rU$m_ zXErZjOrN*$3|0ln{c*x47NxPRov8y&X?Ir)*q!|-d(CtP;+5z%5Vvz%ZMJ*?cPcWQJgkYIH7>ujsg82XmC3PbSI$uH?5^b+R zwLdsH$bo=l46M0=dF_qNYYvuaW1|P1E0y3f7-0RJh$|yMjwEF0wSY?rg8{x~yaZIK zf1{ojQ#(jG7^>a`Y$?IBeg+8ZQC-wGgW22E_cU4~7$@LPK}ubDA65fo*vGOv>*YYg z2(H&H|PMaFU55MG8;1*lkm7#pf^(TnS&(=u9AZSG_AkQ zj)E5~)xGY3UEl*bNJ+;ZMY!hF0X%QO!*;Dl3jl_vXmTL*Vjmv zvz5Jm(Y8#cJjWr$wf8^ysLvco2I{2OK4T=+E&Y&$Cw+R{(FY_4eU&lf@_K(r8k}sb z5u`4rSKgVH3Pi3QPZmEIUm!?~VNALHX#bL}_b9mgIWb9bSAY4mf`0eGFA0O>;aeF= z4sP7I^<;a;;a_h#{X3p`;*no!_jZp^c5?8c?TmvjYB&DTcGFAhrAw96MFgs0bymv? zciOB%Da*+L_ZW=ET}EJZBt5FAWdSC|!SK^w16Q7$oxkg|lt^_L`5x}z*S1c$#TAEX};xYlfxl0WrApHrPoem(NW zvMv|p(K!{Kd{aCo->Gu!18t+hMoOrjY*Gx>eHCAfKex4X;eJB^*8Q@dCouRfehZD{quhTF}PrR&n;uNVK+2g~%ZZJ&08YmS%v?n?#9hm~_Q_^dK%(Bs%r zve!NAgY;fym9yj{(ls%aq=+Pak#l*Qu#-6rgGX7r{AT6 z+K71j_U$Ipa*}=-k3NobI#;wdemNn z5t4&jw{A6JG|v3j-j6ENHYh%Ies=LAXJ@BxdHnH5e!8{MeZRt-!CR$=ja__XJLlkw zo6QEpm_ooA)R1aM0TV(KYaQ zTX?^HTGK&>$5scY`uh(d{jE6KQMW@U3rbV@M-6iN~ z6KCqb|K8EhOUfUVJE{)(hX$NHQ-I|d2eera+dYm| zzuS>^V;RNv)wZr4PQ`dHF>7GrKozlqE?Vz|OcsUVba!7jW z&D=1y96XZ`c^Uc$>!PprY+vPR|24gBB^~!W=|kj&_S%Z8d(i{qn=@YCUh13cF6ler zlj9Asw})NCMwSE|-G5L4^^a8TiZep>Ni^+iu zJLyFZyhRQYAoKv6fy#cT_6Y!~U%h*nnAC@qY!ncsbMGSojrS5b^t-@=AmWLo2iEnw z&n&I=OS&ewYymXMfdh*tnVt9whV`~&LoZ4j)aQz6=|^#u5)u8{^-jIGjZ;4)Q%X+s z&t5WO8%b~ajcfkBd)CMWeN=u(93XJJ{gXYszq}{KDhD@`g*ZWSLi@1Hnm&8+Lmy_W zCmCI?{U9yzINKQC{MMq`BdW;W)8lrDf|T<9|4tl|^y1ZY#M3jQXot}LoXr+Mdf$CaWCd~v| zYx*Le-Jb@;1knF(UXgjiZ?q*I&B9X7;tMut!GF+2!%`TpJdjRbT zca0p-*F^*bT)I!ct3T|cCybs>X#XwWU-Q}Cy=yX6eT8WQI8TqOI;d~O34LCExGy>I zWUaQDu(ovK$-5W#?tdwM6G`xy)s*PhaMAnXx+Zy%Kc$$bygtj|xW_iRA)HuWpLIYJ zafH6jI3;n}#joYv3+^jb7yIHdF?`qH_hQ-DSUT78z4XsL2W&^DE7K3_38^9n^|$RU zn4co7_S)~Kt@@w8IKO!F(b2*GvUY?r$-(WmOz?2~U&{*rVH4`6W)5^h;&eXqFndr- z4UI?)8xl(}jV@{rBL%I&{!V~mV_NsWwpYE5#c#vIO zj<34*pjrzuPjp*BlY-HMmNL^>w}=a6Ny#DwR4V5QWD7h~fF!U>q$t^!;Ng98Fm+o} zM@+m)cMhuTXAcmoU%i=`RNq#j>FIyXkDRb1f9;iVpJ)5j7xk(*RsVD?C4Y~{@ET1CMFP9O^Rp zNW!@--*z9AJ(#dP&Jxxr*Ys@bSmQG*l2hb>M1yB~2zQp5@NtBHRo-24(8Fc-t=S*- zG~Sda9Rue)hnWT4J6yBn@9MAKsW9g0@$f<|zczAk)@BZV;qKk@Z)*D$|7IfxPxtZz z$-({g(xtXk@WrizAKMglV^qw+Fmq5(Cg^d9Vk9I7VtgY(SehE0aQr?8*a|uDQR84} zEGr}uL1lW->ibY89Iiwqd-5o9P=;OufA%XmwvtBzt{yo_Ku*1oU90{Ce02Jx7YBq? z#*=RXfHeS5{q}a!s6Pdg0#kL8Oje!Ji$FsF$nPrWK->!s>6Nzi;3xPvkUD^^wUe$< z_MT3p&jd>K8_(g`iHC5o6R%4iKCPhmbKhaIa5-H6sSU4>dVIbFp_ky24>O@UDRLY1 z;)XH0MGlyp-LL6$DXzET%@g;Q9u$AcrjBonUA40|bLR1%zW0{R*p?Eq%1XcWz4tWD zTHDfp-OHIHKH=6Q2h?xLs24LO!bMWq%_Gyvz}k@5v#&qOIFs~i=R125L=GxPSAU!w zwBOGU508HN?DX_oPfm{hhfn_G*S)ugOC$#`td}menS*-i((h@?IUd=@I7?9EK${w> z(NbzHEj-=!9h4%^&#!Lq7z1nCP-t&K6xeCzfQg@un$9^OP;&Z3pA~R)9L*dg5cMQD zIO86B4(dKK$+aZhGe9qaxN|$8Fkv~{>;<(0hmvKF1k~@vKG~M~At%;z#4eAPi0ZFT z$t6NZyD+GvW0&0%G4)GX2!7s1O6H!tbWZ}=l(2g~;Pp@k4mk9GCY=NvoLNb2Gucr` z{Cz6{i+CwU1$5pviAwU{l$cZ7u50Pa^_1c-#aXgls*6NVGokdKWN#-A^gUhEZ|?VF zav2ZUk#6fV_jpJq#zczmp8xlzwdGe_HuKo-#h!4ZWM$GzG3xl3$W_lTr3?1g2}*C~ zO67<@t~b>${cGlcHsSHls#AD2=9zJZ+5fq{dSwo#4flGDK=P5gm#6sC4{KS0Gaf|> z?z`{4;kS~#$bkk3)vxv_ zlIQu71Me$s!GziK{gims50`t*4!v0A@A5^F0rojzh2)^k97B5cB)D^y!AHg-3_bfN z-zG+k$!j`+wlLUci`KA7*L)VF=dX@Uit!#fpdB5@sM~Zu?WWKC>+$b)rrt;doE%g+ z&uP-B+USu3wc#@c?k^+<#6@CseXb3O{B8EvMh-apQhN=G9Mo^)+Zac3Fb?3y2MTVq z_bZ&8-Tm%cw~oGd?fnWQ2Ol`Sbm>pD4t#j4>^jLoJ-S#k2!o(gW5d$IGtUh|@PLZ3 z6ZQxqk~4#&$N|~X6#&Gtf|R4gqhREd2{M{U%ZcMwVBU@dWSwCr|N-6VyYolE}i08ROmO{=`O-}5EO z;x=$SyKnSHmYzV?Y{FRI@=ezP{ZW1JI=l}lW*oPYe_m+M7G6V`csj-$F>%L-d~2%0|&cnZQ6x^ zAY#BJ1l38WEIF!j#_C;3vJ*q5C|)(PN*Gb);9F5G{6_DHrQ=CWP( zgT%lwLDy2exXr5!$t9N)q$AE8^n9JNU6KDD$U(|Qd?8a|a*>1jU;oAd`*?h`W)3ED z@Z`n$+21%jyYWr!wax#!hsy&wXad*Y-`b8&{_K|MKc{{FkOuk(qcX;dEBV*|>YN<4 z5<`&#o!v~vOL8zYer3!Tl<`G=sD0FSkt47 zlxHmnT*1lFk`dNM);*&+_)`b&pj&dtaR@MUW|A;%;Hm5NdpV;&4#Z#-D6av~n%+vL z(hrxMlD!@1Jc(ZMsp+LF1f>*s^i2mewJGw%1eEG^fRMhqrk(7)CA-Vrv%lLQ0a?%A z)E~8#;(+z{`YL_09)d5EQnIN7eJ{bKB~8afLsydFq)7H*&F+dTCT7Nj_uXTk*QL+hJhi)= z>^`bx2Vv1w-S57Xsheo0B^}3EUsiDZRIcR-iNqQWVhf9FNuh{=_K6iX*Et8m`0DpS z4vvoAcX4s~cP}nZ-t>u|_=*4T7CET-l;7TF4*qzXIryyBftN{<+7qC&4g}U!VJYs} z=f?Lgh&U{Q+pBJ`EGy_Ojmxu&4un;g_8iD)BnJu@PJ4Qw%^jcG=gff&E`!k7^|S(I z^5EEVgdHPx3e!=0z`jQ-`y9Jt;qPgN|njfMj;sK51Hn_5W@WY5Fn}wu<^wFQ| zq^5C~L%XTS!SAZqHMd!SKis~*q$(N}GbVXGoxo}2QuLjZ(}5h+?7^s%We5MzF)Sxg zDSQiKaD(}lKYlMjUO}g&nB6R=&AOJ~3K~xg>xqW-z)t34pK#;u&D%4T0?bJ@H zqZb^>PCeVWZrvBzE&<9PHB3M(JySpTN)FV1PbW?c*jBGE`aSu0FQGVC_7b)FOyW=3 zd*SJk_0&o|3^9*3mZ{YaC;VF|;x5NSmpD ztcMBK?dSFX|LwgCux;5@9d^&>-uLO(t(ID934MqJjwB>mP$1j}N1zUBNiFM7sg+6; zEQd0Tp+2N21%%Y zulxP(J@@=F=iYmqGxj)huC>p7-TKvgqPgdsz4lsj&Ci%)efHW}z37w9yha$pIHb1a z@_4LK2SloGmf!aru+G#k)ZZCDnzn;;4x$*1-mTE+rhAkTo{uxX1@3V@Z?Ul7epxrwFasUN-g>IO+J*D7} zIbuJ8=WzygeO2-n=yqogSScIFlRXFiJ1-CLcQ^rpf{pBZ4xk{vM>jFT$u`c?k%I{I z`L}FjPy$XhMwI+HXxJGM$dOznC*|Pedo@rsFrs!eSwtYFGOKM-FO#cimI6~@JIh2? zVM#W&b(W|iP~_mv?8Lf^MjJKTY-6C^5T$^^fW>7M_)4TGlU@54)sg8{{f66MQ0F!x zuw>uxnG?1{l$f;+l-I-%;zxpfC7+FCi1b-Y-dVp?SFTqc84sNef}EQCSXSP1!uY_x z1UVyLU|ncTBXPq=ah=Hl;#>EsXndkB?hCM;+g05~*s1;G**adLR6pe>7dV$h_yOOW z&)Y$<%2D%;jn2Ar4zgD^qaBa~tj#qNVoHaV$qMIe;xK=8jj(<-a^Voqy!* zZ-2|bPC{febKsf!)wZng=WO}ld#&PU`MCv95T+@3`2Y$#o%!Purw23J6$z(kjnTbr z3OhiJWUw)|0K0u56DLHJ)iqg+BH{E|AVmgc=VySAoSq$C0hJv&3#bSnOODJ*0Qa(k zMW2TNobJ|FlE8t?37dgd!I@=^09x;j?vETYN`8KCrW@^ll)My7qU4|Hk-=9JMmEiv z$%<({C#BfO;dSu)=2>r%&#}%_r_nVpgE+|mp!R!46mTEgKk{$(H%>yh4Ol9INON*E5ZS_i6$!5kNPmnrI-Wa%gKvn1I|Eik$*sskw0kCR{Zn& zcqUl&!v3#=AWgv8@+0)CKl={HhR#xOIgNd`mF5~Riw)Q86L=?qwvW2) zk-$cr5;=%4N89J`{MkuC(?=r#zz+5UFY8Yyw6AC0F41Fun7@?~egvXsF*jSUR{!R7 zwfYNhzyH2pvg^AqEwV;1b1=2fueD``A2wyY(<;6lzO@g?eb5K6#LqRr z6AC;N+4^!jxN2o>Hz(Q>#N6Jk@av<|;xF3gk7qAm+K>aAG5EHtSFiqvRdB!kXRm8+ zg<^7mS3hz9*=ERQ=HSE*TWEJj`mBKq)!&e~wnrk_$Xg@so^!xKrpo0dg=mUMjm{&7 z5*TIyrin8HfGBxqfW^+N)6!ah1aKUn>?ox~s7WjeRIL|NR2qCk$w4jo0C+T!aG-Jj zqCku6RSm2Q(I`*0~4Me(Bkz`MyA7$e=QeQWmN_Os+( zs#B9N>Qj)0enAdc$J}3yCrw;xhv;7Q4V`u`#ZZ(4GH_S_QP9_RN`A=qa-VsSHU!%k z8<_;CENs&VYgDgX7m~ZqG%#kctdYJESCBVbk|_BG`xwWCVoRhqZr}T%G0(B>k1{GT z$b2ZmFFq?Kino!?z}u?~OCt^tF8d-N^x74cQ9U zKLp9iK@9HkAxIib8X#~OOwmRT&B>=0^jUDJlQS4707T#ngR=bWxV0c+Ce6XkZAFBF zfien+D8WbMfI*9$jsrx2jh$SN0Gkew% zXK#m}_Q(K=^%w!1|2C8yXzZ2jqJ3347(Anxj^t*4V?X0Z#W+^DUIluNCFsBAXIVmu zW?o8lu`CT}cgv<68}J?e%YMwitN+wuS^XedHd1{>F{be!#c+m+T)*01NB)W#itD`2 zuQKUu3dba5!{7?-s60F~r}(V67`4v?4CR4QZ5*`ZK=Gm$U#f=)=NftNw#M#IKJ?RP zAAP?Lo>1`bN)B2%cgca3wQAPCvtCX9(%pC8{xh$8-Ro{dw#LlCk?kjVy}eiALpBTW zdMjwJYsQAe_BIy^>lm0JXau#hoBa1vdo?6p>)a}4yVlX%pO6E7YN4jEh#>InfhG_C z-Xk(t>j*TFfgF$Q0eTE>8i-moJ8cQ@vU1Tho3_tRt?k2+Sr6O~4iK)_KiAf)y^IE* z+Az}(w^ainPBv;M4#FrPGkM_C>N635FqlW}*MI=>BdPj#*R75kGCh<)jco*5b3K_~ zYn`RG)xXdWO^Bs-quBP}c!M(oq<)SPToh|r{PFMbdG;%D!H z7-jpheK>Kk->PjgIU`#uZbkZIdAQFyyP@?nIpP@t3`~_gae|I~SpA*%^eE=AUYUqM zZ`zh_Sd7R4>%4>uDksMWbktxlb_3A6eq2vJW8kv|{vXQoV16q{pSbw%hC9Ak@z8R# z{wo&`5C2j2W=4>MbC%e@$Ced7WXin9I&~g12kdO#_|EJ>_lV%!PGWL$fN2f9wgJxJ zdk$hC-u|8e89NOeB3ggZ`WY-ELov8zZR^OMfj$d94nz(P4Kf8R)Llw|C6LqP5CK30 z=-KF(r(Cn-Q5rc%`hguvx~L_pNN*8IP|%D3OqZP$KuWUI95o#0~#l{ z?4Hc8BVeu7q45M?ItvI!w%8{jGY&AAYacRy8$w#6d!yuu_M;@q{p19Ix_Ra!OUz8h z6eI9rAYQ5}=>zgWmZ<&AXV~{xH;OadMueYiqX_HN$0J|KNJfU885VloE+aM!Gx70j zdO|Gwynp87lOvxh#RkVOZSHBcr~R`0{P4ka^y5dP z^-te--+fO-u@7=^-ewKnY;R?Ba`0_d@Ep$^aHm~~?vR`5!0uS$rA=S>-h=J3L)#pj z0~-=KK-vaR@9dih!AX%PpLjoKgt5=q2FlQv)1R` zK;M0=GfQkNyMB%ULj9Tb&3)3}v-?VIL?Bkvg~oI(-c(LaUZwijkFtcQ{>b)^aDtO_ zbR8I)^$UB#c(BBJtm#kvUVWYK$H)}^#~2(X^iteJ{>gpCbtGpbyvS!WGLiWp`pmlL znF>y_=mYniZOj`I)qjWhBI^jB+0XoGg+`ukLn2P5}%5}^$ACcZ_`pc4r)|G*U5|pSMC;KQlE9i2t0K9pZFUzLOR@|1CW53jE ze!Yo}?vy;(0(SFzolLWQ3g&Ek21W*GmN&9@lyo9lBY+4&gC3bGfi|}r5gJ@aoMs6o zN(hl&B45aDecJW=dF09cRsCo7%=E@_ph=~K4{Fbh96{$SKPOPe2u_OZ z>r5UP2h`4rgSEb~PW)a?_8JfB|0wVEfLx&uEWi5#uA?ktZu?vOv_j;I5q?I;Q*+)r zw4I1vmv2bK`)qu+z?T*LKfk8rpx^)PxkKz@Mh^bq=y3A4Z@>M*-@fObdmaztyi>{r zJILs5*REZ2a`0MH&>@opWsi6ZV{Y6J$iE>D8{GA<}ji|uP0jv&N0uBX54h-!pk6hJ>)e(n+H_IK774EZw6w9Fc zsI|{Jf!#{e=28EmHr00QM-jowY#JpY4^9UF-dn;xrGO4#(dj=1$O!zfan{T6G$y~h z0{URxWj{X0_ERfOt3h$1|W(`{VwHp$daIiiy3`P6i1_maG zBj~T$v}}XyhGbcqbW-4F8bpU3K?cns{wO1Kf_`{?lkxb`@%ZTPEtl8-hCQwDXyk*K zIdF3DP9p~&vI<_qB+CRk36=IH9}E7a}YV7FDrzCb)yq@LS@Jr zXle+s%0{`}YbzlSej5TFP`tJmfl)1?vQxs4QP5{V#}1?kDGQ8UhbbT0Q3}>tB2hps zk%J)#jsXsJMaeVMSL73{Hvl-=;UwVgDG5;U=lWR&{;Yn>V4@>4_$B+U>L~)YnjdG^ z)gNp2<&l+_W&J294$)0S4zzy^@amhKfX_k>7^4s;OdR+(O@eCIHd)|N?*2=eB2q9! z_tDH0^byI)x>9nW_`tr82&h=WIF!)H`c4a`p!4L@rzO1gB)D6rxo69$0vWt3VoB4gM}T7j7=Jvgjk8oMR#3{ffZ2#KONch0v>O6q6#>WYvAE0SLr_v2nEPU z&Is(`U<`g7uo@^xI2xRpUhq2{Q)Q@;oU9*84mc=lvha28UkR)g47vY$pZW{HgLTb% zVUS?b5b2opr=K;UMZl&bIM`k7kR_Dt_nIAR2`ch4?mvAAP13c(LM&E8Gfjbvki1W$~O1UK5}Ora?bMK`Ne1~BiaBt z;A>o8Ext6C7(ZS1qe=V7;^C3KP0{{hX#sS_1ipiNIZ<#NWdyUqKYIHq_m^eH@7xaL(>7HXdi*dFKFV$K zLnjB?nbDqrR0V4n17DQ4gAdiGI@yf;BRG&2qBlP#gr0EFAoxM;i!Eg z!O1~1%K<&GZFrX4$KQMn_Od#k98E|6_+T;rZ{PH$H+??L4_zlNIyvxV1-to`*4c&} z_zZwf$1{-nXP-G}_8?f6?X&q-C~UY|8heNWmG>O5V<|YIZgnnnN{x=TBE|OtuiG=h zLC=nd{-PZw2hDHv{Ar|M1(Pg6Xi)KpzLb!nB(jejyjz|F{VeseoI83dL`Y3XB|xst zd@z7!fUEk2{Sn~m4_QLeE&_Z@K+gcpi7E0EO`K8k;-sMMqRvR4B>+=Ua^s8rFdrliSc!N$Xw(v zh=0a8_J8)FC{A^>s(Rpa1{jmsrYaXO9{pAuDORifOa9GeGu&zNS~sxGX12EVv@cF$ zk_lT5jWbU0{@L5aEP<1QhA2$???^x_C{{6sx3e~_7S+B-N7JXqqv=0AJzf3STi<%` z?}z^1-RR2-@39vz`JMw`R@lrOfE;9<_Y)GEJqC8p0XvePkm!Pg9M~#FZ`0S70k#_w z`CkMc3O?`qePQQhveC35W3V)nS)w=nouHt=00RT znDvd@hs+zyX`a&BzUwBFh0AMyI0h6W)Ygg%dN2CGx>iM0>)iyNk%K5uqu};B_9X{A zGS5hgIy1`?jf_<`|DGiS)`teC-}9v=2N4K|j!C07$Oxa|endKDu+4PNdWr0s={+JG z>T_xj4oqC*#DlirTNzo1l1K@F*e4=#;P*yxlqFX66~9-XLuXsDf3ciQ4%*Sp_HA;k zy9j$&fB0NVu2}+OKjh>ETQTPNZ&4D1{`h){WOA}EVUF4~!>$OARVVnaNlyEZKKNfw zHcSqnOO_{!lPE^m4yteUw+s*APe|VQ9{D+bWBD}Z+1Ik9&ayIT*y_2ztiZk);ez@% zFQ0f@IN-<$LPH9=rxkn<%DxF%I3AQ7wBP$161{wPR>BqAckm0d+3Lgh-+%8zAqIC2 zcG1o#c(t z;2f-cEdxhRAXzeL`c4}X)v%h#SOx?p?>UG-il3uZ$6&C~;(8gp zqX5n1<+3URzGurh+D>La1{fs=90Z)4*j^k+nowXnuO}KAXuxS=<30fN6bN7goO7VT z%*!qjIY8oxK%M=J!7B`KdFls!&-A{Jeb9IAizZi$@)Ve%AC67+w}@OQkwDyNtg@d+ zedc;fv=IR{CnxnEPLyhg2tzoYBl~cSt3M#wtG>A%=#U38-VT#Ny&tyX z5$pyN&F3J8*UA3jzr&|X_{C)u%QXoynNSR1+iQRP8n>g@{TlZVdmp%c(^79#uD%wL zO7=axp%r?;6g7*q45{n_|EdVPWTZ>_DT3xOT7Dg4!m4L4vvnl+7k=^+_o}& z`1P-U{bxh$=qlZi1FLX{957SUWP_&_{17Bu+YpBaeA{XJhQr8|P-C3w;pV9ZHnP97 z0Zyw+3aw*yFLJUCAplY+1x_9%Np3>{oxv$`Bn7WXq52z>19l1y44xv@%{K}}wKf%q z{5v~y1mxOA6l@%H3eZvVA#rW zn0@fAZ~dOnM6s=pGJep>f&I66lrc)^tO%buXv%am2dwDU@w(%YySJCYv0(JIT}LwK zB>vjWijZCV#(sk`3Z~ju)_KWqqid0F)n_7`>V1*UqP|73r~n_8 zQQ0#cz+P+zB~}s0bNQh$&i-49U0{=zXZy0;S{M6@`WJKz0svp(nDfsWCZO(!{Av7X zKU8NWUq+uGpW-!Q3S@&HZDjvvqJuhEE|x+4IMXBJpXRn!?sn!NA^@y^|ID(wT-bQX zpo%DwgI1{SAHcd@TZZI0Nbfc^X=$I!2UiHOScxp;ORQbP1fbZwgLYw~{>n zu2Y%p*iGnlqj?4l*f9enmN^=Ev3)Z@MH$$~zbhzt-8^lIy4aSP9W@E5ZnzIhj`SKQ zILOU<!1%3^1BJ_?iMr1pb+$p{yF4jTSkA0zTKnM27(} z>yHAZj_UNjESR#Sr(mzasfjIWKLcd$_Yk=<5afEI#Dd?D{LvPcd{~EgjvE25AR74+ z|Az8hCj+e}$7sZs*+Oj@m1FXyx?sQC2Rt_b*2OQ+T=_NhffKdb1nseYv`pqFj4x3e zET6^$CsY5-$vbL4n;FuW)!0N`n%pBjv#%>YMC3qYgA;HhmtqL_8UDe#&TuA*H?+sZ zgE0bishwd5{Eh_b^GYxT#{L({5n)K?XGr2K6MjRVSSHRB+z#-K_28eG_^@wB zF{HkacDc=6du>l3%m@ek7X$}q7_gpqeBQ``|68u+y$z2W+jiG&U43(F)IMeo&=>f# z{k>|E4T6( z4#`o!M?J0|1yS{n2=O>E~)ixyhiowD z;2RSC9-lej4#Giw=786A*+I}&TekmdXHM>XPh{8~nY$$p08f-4LxUt4e`tV21VI6z z1kwylwIqoE!^ptzWpaQd$e^qQ0brx;MgS1mAkz!i#|bU#yV_!C5(UsDW^4RWr~Lp% zkP+knaw5PQpQhu%F)HB1?4Om~m1Jk|%Iq5f`vy?DeLX|SK~1N)9wjXH8Mbi*j$W1@ zVeYM~+BMa$_FHFG5cf=0GU5;WW=WL&1G2Mzqj=!qscEU z7B@cp<~P6j!N~8hA@RHg>HUvA_SlbFAb*<`JmrNPq$Uz&N+eaB8 z0GMLy5cU#??u8O?2xfj;XKtsvxr1s{zK;#WK+c9opEx)fp#3_pIYq#r;E1{yu+=fO z4A+qbg|@AI&w|j);fPy4gv#sVQCkLtyfhO5geFr>aGXe@pyXhVY>WDtpl14vz*=>y z`gPs3uNYtUd<%d)o6UB18FL>IBkFHWfYT;i)`RLy{ekCT&nH*03 z*}-!Dk^Anu?_sUK=}RZrc>}>W`qK&)toNAk=RIj}Udv3+%0mD+n4Qnu)aydBlj8Hl zj(=>(Kqnxk=`iYYV8#gEf%@?9+(y|v{q6N(27%eL8)wMWD(=@{XHbE0Gf;&Q`@!2k z#3=&$2$)b#!BE?X9G3O0L`us?376Yo$BE=r0>SKLL9KT4?_7UmOUxW)eiF420YzpL zwkP{EKwfuBL*ERj>QmZ2>xh$tmy1UFOukA9E%H0AGfQZ!vr_%4n_4Un@elQ5%-}L6 zMEV2ChrU>rQf%qqfD;h(kYP*~7ZJW{l4spV<#9cWFSSb+XQ~H{FtlOVkTDK^ z54lu6)rk#{H#6$J_{Fk8vLVsd8#YG>XiW46CGFD+9FH!8zj$f6UjEa??Bb8T{q5iR zxhUpA4s4IX;=7$37)f}&6};f&z$^9S&5no9n{`CIo1h~H8W28n;P-$WKuCZw$iddp z+NTuwF^|6Uw#yXTWUwU%4Bl!)cIr?O-Q#;vU~%Hn>%82dhG!Wxs7rvDIWmJD>gF|3 z4I*_K)yYu#BJjw-NQ0p?5-WjHq|3-|HE_l~r6jy-)9sO?(R~bt+`q_AYVFpp*ZN#) z6A768fJsoK|C&5Q^v%A`$w>WI_a7*B`1cz4vmY`@(kFs zY}R}}(mj%QW*63p*RSNjzem`V)u;ZZ1WWakJ*upIjq35bbhd@eSVADi$KTADY#~!p7jBB z^kZU+D5WG3`9MimxW+)sz#sWOkGv6|{5ML53Z_wVf$ThD_1}1kTbJzAw<6h527h&A zS4tkGIM4i!lV>KM%EaHJHr0khl5;6pt6kY|vZRZ95U-k8OLej=te*&zGIAC9BF936 zS5aT|F-_Ga&#Y)XF&3jeZI@>P7~3HKp*=02wo#JGe#7-QpS$}xcANMkauE7c_o$;k z2%s3kGY8m^$TJ5`J{^r7T`osIH6EY-^|!wDt&fJW(KT#uVVr;Sl`B_%*k%siVFtgw zG;`n%fptWX1K)EH2VYAb@F?RB;L0I4o4UJ`7kPR{f!gbx93584L3E$Wx?>zUmw}y! z>tk{-B*{fV0a>DejM%U`m@xB0BvFpk{sG-Ucj#nLP#anys_zSt3$>a-T~!QU8h(ulBQ~92VU&NaK&7LMfT^ipkV`MkASws$?ALzV<$yxrvJw9`w_?6)&m)o={ zxee0Q{`ZVA#tF-tpjY|D#=cU&$VPwnl@$dSL1R0>JTb- zq`L^PSSNbD2E5wF5Fjl9O9afB%_5*gS=GPl(e=;C3qIh#<65TsOdi&S`azZi&_<-k zC~&oZnT-{cqjIHtBXYpD)!5Vc=k|5~0j{YZuh0UeX`R`JRIk)$rxkw4NW%NAvgg{Pj3Yiinb)dxS)nl|t(~xf zyWHQ*94I;Pa?@_NHG&*V3EsBgQPz2J4zH*4Cssc}2d?_Twc5T?&lsth$Mk5Wqe2 zbxp2nXT=1?i_)@!myI5EQ(uW^v}V-?b@z72t^zhbf+wn*fezqMO6E~Q@cZ--8P<>27xh0&2$6%7rmZ7j z%|L#~xw{{@&!u~{{|t6qM+USR&_&5Z%WD06y+mHvuOqp%UiBTnN5M1e2e-xGr~aTm z5heFh8`=-va2DwT$4mQt{46`<<$Xok2lZ2pnaBsUzeDUB#a5PNw0@N_OX5lpvUpaX z$(GH~F7Mk=0)RFnABcQS6Z;T*lxAeT{hI!jpeP>H$U%k~=zFdGnvZRhY#bGsIf$@Z zbCue*`95G-A@miTpqT7AKwCZ*0>MSzJ~}$GyH>xknlFCr#*Mf9!UGSCPNUv!c1D>1 z&#`5N_uDCnKV${J(N0L5BJg|52;B_8CczRp&`z|9-I4=N5D?y}L4O0q_SoYlx#LmE zZVEz!k7o{eWa9Pv_h?OvK}Lg?4XBPADX@F1X}Bh;K+3XfKh(M4SVNd?bZ?f>*kM6l zNgZ9b ztgmVp_+OULhUz#34w->b5{foKM*J@?E2wTF9hH&`WRJ)N;xoGBw?HDaf zu??eT-3+@zAN4m6+CS(^^M{g?9sHsVjht_MS)utZPb+L>=*WS;(?~I?pHH_l2Z%o- z2X^e@!N0X*06ud6{crlD-H+!5dZEtb;F9e(c&D9`_-AcX;{ZSIsa;-yd zH-gp@l{#(&bP9w+5<@9jX>h2H6&!~ozRdoSei0}fKv6Qz$b*8twq5EU^sAr}fsER& zl-O7X1%`d>HN;;^vDRMO?zyR#-7V2g91gxU(^ICeEIHh)pD{Tp313^*$PQUU{ShW{ zd#Hb?zbKaOGqR47bM0w?T3prqKEvIJuxQyDE)U5g9RG?TAXix~XnybZ21NCgbhEL4 zM-H?N5SUv0`-Vi|5aczVo7qhMugvDhANt;RyyI6hJuo@&gOL6cn?3mR_V*1oBEEo1 zK@K1g7>Ivg*=7U$&eQc@A>se>?c)xbdiGUY@`Bud(R ze-uDvAlkkhDw8iJ6|G(wTr=4sT}O$5*)Ka()W5n@?moSuiQ4O}G3(m2den~ya58cb zExTk%GxOOJFh?M-b{^7R3CKzy!=tDO#A*bgmUJ+4mI92-FznhUe#)s7+uDzsj6-x+ zj?w2O)U5fjPi>17=Q#W3{ z9BjPjxK*6kB>!$_qJLM+MVXQhth$*6#wa3^xW!frcr^W*?BsuPtGL!@j5%FJ1#-?Oq& z0v$pQ`o`#wyx0+;&k{M{7k`wJM3fk!z|Z7o=j7z3HYkCO*R5-m8i*MfWez+9+#;Q# zzS^=)G(stX1Iy|6mPU3;Tx&pIyUx0ZNI^vChUl-n zfi?YdT~S|Z_=V*G&PPM?*al^+!HCr`{y7av`mPXFoy55(_P zXfU1 z7#WCUiH+-J0FQt`Wr)~a8Pxmz(?phS7(+X&)uLDZ5U{ExaPD(7?YK|CYa-SDl>lK# zUuqx&Qp0ws)muxl5y+I1Qmv0sa)RE50%q2yh}_irUn3#?{>R6MM==|>TP6oJAdN^+ zW}lkh6Bcg3SL@$5zH7R!?dj3@VHq0$PiAHq|4K13#BZW_0PaO=_AGNW^HI~uP@hNt zv)rTgMC7>S>)P)~uG+FpL=Mz$ns1=L2D@ZgA;PheK6&P#+k~I z9(W);9kE9aI)R?uZA$#FZRX$)SuM?i{}6J(9qJ2vc5=|vS=n=t8ApR73YLf*;5T)C zB>@qTL`K(O-u=E^RzTw1Cy})$NNoSr0xtp^)=e}zD1l2Yk$`9n(SNP3+Vw1Whmx7- z{s7-cz_Y-ar^)iE?-WF(|^JaFb8 zwd9Sy)cgYR72%AxQCpUXu*PHqLPlLNkg$4GmSgD6n+w-OjAF<@Ev+7L&Il5qUn zE;)$W%>jIWa-ecV0aS9jI^eg`MkI#=tVCpng69x2l<70;2mg+#I1T0+5N6<>`OZ*4 z&i$ahGE{H1dK856@;A33FXTXBQG7FYXksYgK_*w$#yGK%e`PgE-H|UKEgnlhtx* zn-CX&$<8$Tgpq^xaf{%ek^?^}@m2Q3g1uv5^&V5)B@?7M42hQ&dZ#9K)Bc)RpDuDx z+mM(UM}Jq)j6hU_H!?!4J$1^O^WgYp4m>3^Swd-l-;#q`TU<|8wgxu)02wEkh=A1U z+NVERGGjo9g0QUH?bR&#WPVob+cR-J(pN2Mo<+y~Mv4i_UyS;6J4PAw;jH z^DN=lbXco5^34c;qP|BmMG1YV3|cOFnj<3ch@E|O!DUN?qa=G&N6n}BI&f9VU9BHC z8yD!4or1IT;-n!&Y14l9Rz|OnWzxs?Gi>*#6_8K-9(!`~>S{Imx%vF`$KU(jcm02M zEuFgCSuivKp8xpckAMH^>HG&)tM%7gg&T6M(2-xsj#=N;* zo%YipttHo55Jz^;z*BV!;-J2p=`pfHNxppnW=O&qk|^0e(dUvs@1LB@dk&&C^}c<| zPb<`P2=L!0IjYY@c17%F=S)ONdmkB4wzgq40{wl+L5=L=gjL3-C`Qln$RzxX2|DA+ z5Zm#+icJ}IL_VW^%Hl%tPVrr3j`9K9YzR5X@TSeL?Yj{)X5pW8qS4OwboR5`mXEBK z>%VvI+~n`t3zr_YYiR&R=RkFp^;rX@q)T?BDDV|*N)ET1 zz_z<#8DQ{v-{hYG^;vCSyRVjfqH`EZzEuO`nml@4^{w*i@!i?|5%{-dFIzt? zlY^+gHNv-_j)re&jO-S@Rh6+UTeC+WbVD%9UP^wYM8^pcb#Qser}3t3^YzT0ob=Hy zV+7;iP@l+bu6-UNU(FX7dzFNgNWzdf0p^$dwdTuy4049mSkh4Zzht2+EaqN2MLyw@$}QS)bKZKC*lA8?svcY$&!8}axk`Y4*t-SPd@n(TUvOp32+I7 zz=gq{1CWKUL~>9|NSuJ#xEVR9B?Gmf+b1UX>miUKHd&QkF7uf^aT0YNR$ zBe1LKp7k}P{^9*S-;l(jzRT?)PMfJ4A@0Nh0Lx+(=YXIy5)^?_-=V+a9dO!EE#)NkP zv%lwI$o;h-EA^*#@6CeDzV%1CJ1a4&wXMXU{XQ%?XLiXp1U{4Gphmd3pLKsq_frj0 zXKCgD6_jPj$w}smQU4=?j@SiJP;B5tli^NDb|$u2xu?sQYl-=+am(`62*^-esrg)% z;KTf2GY47nX8mjbH}RJof`scJkNupx-RIyb2K}+uG+$n=*Z<^nHvfsc?z-dG@4ffl z{&Vosfs7m+J@(j>e{43p{#Wdg#&0(=(Cj*L0bCe=v=OHy@}2`F32j^3CN$yIg2eBx zEi2TLGvtm8r-`5CDUky<F|snA@t!b@Nj2G~+OGkhj@xSmJ;C0d=|k;Uwd%TG{Vuon1fcpEJUk zp#Bs4=*=z5WcZ|QaT4Ts&Xzqgy{Abicv~qf!uJf*$<~${7g?S9J16=fo-ri;hLF-B zIJ6HrsLdQGL166gYvXReFWWP^r^%I;o7q-8b71u@CzH`b^V7xOy>{*NAH4tl@A(7! zt+?SQT`;tL2QRUw7XHHN>EeCX$aCPtK5O9Q0P7`obaeAiiNRLLXPz8H4yO*K!NSZ- z6P_kaB@vmkX33}ow$ZWzw_juQwZ4PAWE+Y~QhbAm7SF5)MJXxYw zz(hSm0I1fcChBtXzBzJ`;logU*JduBZhP$NZolNLNyleiGyTH<%RW?YzZOG7^z7}! z4>>WoE^6eU=4;$O_fyG8t)9~LDA8vmMe7-QPD7+;#{4KQqrTrPUhK$E%L+L=Rd$X}EOWDTS6RYS~X0!GGcyMszMQ9y zBL^iP9nv1h#SpTc`N|MEBHstOQp|%caJ@{z+q-Kxr83rL4tW0v*T2y#J*}YEGqM30 z+I&4fI6OS`cRW5mUoJj+x}5({FM8hdeyg^m(6m)jxNS^))#Hy}{_{o*-eu<>+_keA z(Qb|oLFy-)XLjZw+VB_kNfoJ1on1#?aJ@t{YEB*ByWMlZPK>fy|7xQhmIZyt7(Dl_ zmRNTC*ne7~%mFvHnT-)+zTbAL`UYHcR21?{0OSGH>YwupD`D3Y#TKlz_ z2KmZ#J*0jfX=i%O$N^)%mO+dSBgnZH_aO(0&keR5EYr94X5;{R^XpCyrqiSOaykEv z@rUs&70ik^`&!4mU%$OQ1d7CNlqBRAI7%Q;K9aihR7Y2 zi7-?#EKBrJxj}76A@prbvpI}k=xeu$|6pxL{&6g3ahu^6p4LGdiYI5)Wfm7Zerfq@ zkgs;j3((Kjms$xy24Ek2xA->z9e-xEp8uVb8>@dfWFz9nmbK1XBey^L=o4?fe*MM| z*?}M5Zp7dM8g9-%u%_FM4_gKuJ8w=76lk0JX)QBK<`{4*InZFt-g?G?S_&?V>{$j* zzIE{5vgR!Db70lV)WAslqCgtyy5f z%C+QKBS*FSYyBN<;jd{0e&O-2zGWJzd9-9ucV)W;h6fsbTytGWPovft&2 zt)2B@JYp>2`-b3#VgqE4NOhKwOZEzNl{_hfl+SwL7{rKtRhav(k8e<*F01V7cldL^ zfo!7y03ZNKL_t*S+Hd$zDTzn^Q3FG6XNa!LNw`mr_N}jGGxfnzB8hbIbjwpC6Ip*E zpl2e@{Y31P>^@X)n(SD9|2$;R(>^-q`u0g!XT^ikE2A^p4~ZGpTV#(-9lGB`5(RX? zw)XmT=0I^&@i@x^K6Ai&jxa9rm7#uIjh|%Zd(&p{>I3#CyjTgo4tsWo6t2h9@k7hg z)4z57`syG4$v>IDo;mE}kRUN(F4*3KKX(24$)8>W7<*Gm4PvSxCg^_-TW$x)NK_T3KU z>F-C_lN>}d2Sadhixn+7(AXS;;hA3#^@*lU8{C#~%QqxKHm(<+l^g(XT7MZ`UyoKF zTb>^OxY_yN+pNLqKCw9HV03H9%iaChV~@S_>eb`#Uo2+dY;F7I#1YRNfOTOe0cSe5 zg6@i?&JR%X@>o{LMhp=-P%@z{mW&oDzBNir4l<{Y5|AbvZYvAUt?`FH#~lT1)UPNp z?Bg{3KJI_cK_Aq1U9cbA!^pu9Kv4VF`~^X&b=QJF1ML`u$|1N}Mqhj3qatm)gChJsmYHh^|B5z((NTKI9>hyukXjTyWG z8FGOfu-rl5MNcxc^_Oq|5{Z2AvwdA3PlffQ3a4M05AxVFz9fy`fziRz2VQ+)?T}2!P z>XWPsA8B))JafSJA$Dt|p@v`VV?!}U2~NoeqM3tU{^({7hLVHsEt@Ml4e^Uc5q|dg z_{!gU(TiR*=v)K!{~9v)%A3%)eesJ={n6v&%YVvFPJFYSmU!pdtkW}Aw>i;o)R}__ zgh!J&`RcLBs&Jn<06EZ;rb?s8lJmz&efLqZtd6LErS{g1So%RECHc?F(|X^4SP(D7nt`94#wk;4*~x4oR|+pKCIzCAEF~ zUDI!^zKEP^oJS;XsDIbm&#sr&?1$8;kDuWl_2~!?*e7>@J=y4Yvv$yShLVFC!OjMO z{>oz{df-_`4k8`Y$U*j2(#Up^FJbS)(0D1~XV1p60g>ft>)5^tnf<^%+q;!kSM2}& zvX%MC+3dzIe&6?f-}NEBc(deSboJ`hyPkaV>U}3Cvp?-mFD&M(3!H?oOVR}fIq>VY zPa#~lKcGiZI50pCG~vQPAP2nXKtVN5_H8R!($jnRkQoIiPUc)^&w0C96jr>lQ6>lK z1nQ8rB%hU!66z3#DS=6i_^?iDZDm0dZFtZE1YGNDO+M9kt-j1phLD3OiPVzUkPU^5OVQ_2V#rBhJ7&)Pe)n*uNOxyBB&`&S z``U9zdBmm?Y~Y^8E!)w_ff83vqS@05>@SM9ef*Et{A>OO8EfQV2!3*o+mtVmgD!(L zfBba@ki})T<%F5d9{lEPIs2)@gM**3<%G}Gus4mleQz}3$Coc(e({wn$L~8ix%OY$ zgQhQEE?4JZFudNm6O?xIZm0hNxQ(;myaL&j5WR4zmlV4DKn|kAd}=`C*Lhl>oemBO z@MdP4k%9;$*zhG?XCN`eK9TdYEF~HCJwdHh7vzY7J?lr^M&&&Rc!ZV#2*F>gn`O$% z*6fmvY>?1x}2$1juD;0ib=0z7Mri1dc-z`cSaYavEGpRBFjJ3eNsL_mCM@B{4k1xlHW!3aQ{nvkKznImPaFxA;^dypb<( zTtpiWz0IxPZ1?f8E_~*oE3>j!GCyu-8vOI)`RV^MJy`s!vo0rWVrYmWGlKBNFMjdW zSFg_h^VMqpE_=lB8;sl>8aZfAQ1pL&$JoA75*==?2g?e6uP!S@o1aTS*4Nqa z4T-QLd?fYHF8io=RkvS2sz+{(g&dS zQAP%G2E|(P&^5u#$WGhEM@c^l)Kc))0ILLcS+Yh_XIZy;8%7RbqpZIQh9y$P zs%BlpdfC1>Dbt-o_jM!L_)Ny$f5=FH!R z=qJJrl_^>_s1fqWcthnWk%}5Y*r$!5IHz@H82Oj0XopW2uG%^?K^~RKnPi zby)LN-$!<@dwE_)Hy^sOT(5t1y*T|}ZLt0eKkx(Z|DwrV7p#H;H$@J*PMmxA;V-;q zc6{>g)pGGRn>2X29j1KVraMf&cAr7}U-DjREDy-K9Uf(jz`3bUmKC%d+8vUta$?|( zY+uY0flV#BX2~UDsm}yKU>ght(5I6eD5+8%BEfKAZ+&KaylFL?bp@0h3?+tH{WbgY z@y9iw$@-2Y0vV#DH#A|^lG{){M!p^;t;mmA)+~W@pKF9OBWqmu&^T9J@1u`M4(%WM z9{Gamr6$YGVnj*z=u1Sn&Z?8lPD6fIQoym$!>w*C47q)f7?B$Mmgyjhr^tsgzuL6F zS`2!Pv$nVKkAxg-bJA{($Lk9G@40j5X7;wle}B9<{^=V}&3^WkuYBq64|yH)5F6h# zIp{iZ{=o+ydBwqM_O_GR$vf;RhF2{Xt4nbHmg&SVFk<6!FqCEvm>l@=$r0$*$U$T* zW@AWJz9BIJMebW>cr`#2h^0hayMLdAHpCe+z}V;BULebIOq6h#9B}(vz0?VC1iCf* z5A9Rkw)?#}335Rf3}R8TsI|Y3|3rP>=fzCX{WbDeO4_C5SWB+8#2WcBd=2-yY-f2| zp+?k(*hKYG(^I5-?$3}mvpO=n4oT`6Htvfh897kdbfR3B6%>DJ1S#?}y(h8_lY4#6yjM|9$%me}VC`rh`wdT`&5=zFF=34jSrji}Gjh)Zw%t1Tj?i>6yo~+CEueH_tV8J_R}8U{P|w0%BP~ z198LH=3h$=&{xXAZL6^jX5vq)`MGD_l#Ewd=Lmh`>?7O5+AHM?R;CHX~2) zPoLS)0R`)5-vp0)AzN+cfcp|9^ax`zAB+0BkA1ROs>WEsPa+aBq(1eV67CEk9krPQ zKM6OA?T8#`!jE)}-`IXpxf(eb3v1Cj*uNqSwRayRFAm&pMD+Wpp1En_QPai09ginJ zcY1pL6E|+$`0Ud;W3a{cA(q>tjCEvu<;s;izwm`8{)iEScNj@{qb1m{HwM(4g`npk zENtDx|8u2ciWAfOe25aCH^52R@6%Jpm~F9fabMq&%ZKMgz@*Nn-24JWbzM#c)HTOaUqW!U5ebhbBOPYR zuKnG}!Fu=;3)zS;l3@setBss$$=|Up1I3IOM8qbuwf0wisOq1xG{xnk*iak8e`Nz# zgEbAltlMc@y^oVeL<*SXgmICaeV}@ZpX}N$mFlvO%9;6l$)BPm%YEF39Mo)3O3dD- zzAGWKh2n4)vl^@LVf90h&M0}aF7$YNuMhvVvTonaQ1fNYKTYoH{7-QQGMt{C9^i=t z)7J5HGJe=Z_@w2ypMUD9)&KjN*Sz47r)!Ua`sUL*b0AK4@ppgscV96(UcPy;TKsWS zpEiRR=^7rtIO}nF#uNv&kT&56kuAe z7FZbpb8@8hvoF;2S4xgiFz@zdI5~*)t3H$IEh82Cl7pQjSRe=7*OG6Pbes{7=$_2S z7&vQw62@4!Ji5?~&gqu0@!Lrv)=V*W9BrjJs7?wIAd$5@45>E7QTF%f;$b zw!h$Gv)SSo@4WN2PrvuQ@4asI-_+xZ#n`QZ=gnNVUQHi-@WB_^vzPZ6>-iqD^F8a; z()J~sUUZV+z&5fIu$&z5KV|u?;&!K%5Lg`atbAs*YLsmN?M_=Vo758&)nPQ?G*}{L zeKR`E95w^nA>hnG#0gP@LD@RU*FMQX>%^=<2KuFh!R>Rs@QbML83;tcxhre`?zWxs zo(ryn^#^|}9dg6uHX^t~`d3N_r6e*WsnwFu5I?WAvyZ)o`k}U&=@B+kzt0k1RBz2j zrTz~|_z^xqzEbi-nSGXCBmLI!rPhDEJ0a2oe*v2`4%a!_-J&L})r~K|0 zefP!=rgX~+JfQW2@1(%~__Wqj>(S(4)6@TRbok;^ZJo-T)sa2bu&JT;VXf%z%V9 zxYA<)|P^5TmSaJtVo6o@VRV6 zXcQENB&rDXLGD-=eZrS-Sk=Uwkpq^WfgQiIUezWw|ET$wwud%V_L?2C>oxg?+GS`z zhR7Ku-H4n<2_*8nQXgt^vwlhmQtcG^lKLp{vt-Ms%RcHiCBI^w;H`u;d{n(>eTv9I zWSW9xo%~R5R8_FsWY1py=+$>G-B`@_Qb-! zI#?e5%gN-%@7?UFhePA7@tu7N-%MFk#NlT?^OQUUpC~ZsI$f|!#Z5iRg#r)vc?e||jIl1yFYvBvee)hAk+0zK+7tIWH z&Vl8=WaNO1f8kS~`qT>-v-KZ7n5_TEXnOQ*w(sB-2J3g(RLaH0d^u*v)&zh)}=$r`dW9NWHe3CN0LN4#bUv2L~}_#Dc*R{b$0dI%3ar zM(wGL83D+W7i^N%Q(M-`bb$JznIo2EsE#ud1HV674$klmF`30L<60I={5$Jd@vFI(%o=oMP4tzYNwBaJi{_*8=+s!j z%!Z@a?F|E$?K!>APeNGGg_e2cz+8ZTjE^i{-)X_Clv~rr_r3hA^0d zN9pw72(-!Mfa}YWE844(g9z9(Xfp7q*(?gsECF*r;ozK{WAJXlOY6*jQ=oJ9tjQzm zI}&Y_#5GV$fE8WSx--41Y`UzXfQ!dzqmhT#wa=qw5#eHaG9ce4!PfjKt1FTt1Vd_I zXyS}y(s(Y(9r^H(#08&V+|YI+zt8-O;|rg&4SgIFT3=LuRDOtl)u#}*8vhYSsjruG zQ}e4DNyysQS2Almu%Rv&vi>8x@S}>X3nd4cZ$-~9 z;_H{TZa zYz@%ev-#{#6i#x7+Xe{Zrmo$D;N_Riy=|R%KKjsa_GN3?rp)%?jHKHP?7_t9$D^wW1bH?rHga!rrBYxcTS$ZBrye0zOxWKRpR zt+)N&@bOJsE`#c3E6CXT#&3`7pO-$FOdCmE%^sp{n?5r*bweS!=|NlG219G}%uO5Uwx0pjiwnEoJM6l#O8t4S zt$zH#KCf%+79TgEWm(I$+LT$@Z*7eGU~AHRwuz0_am^zT7na0YnN4+5E7p8YUZ1;N zPjB1s3G=r9tz6!gA7iu8*XDaCHvQ=nHS>JeUuQk|zn=_Xl{ZP+_VZgWY)EN6wNbg< z-p0I((e=~g(R#CRUvGA_jSr?i*=&kw&eq+uZeix4o0GYPtm{_0AA{lX*7&O#%M!dz zZZBun+RXH3I|;{jRPp-6V)fW6zh zw$ijEf{E)?W*W86iG#@lCGAZDYXhzgktUgKg06L_HaWHubj3D~)|PDnwUxC?NVvly zV!XCsu?@2Rrfr9V$z<%*xM9P_YAqQw_qzzq-!|x64oB{_Etgrsb13qg9APXH{k!kE zHTrD7JO63}+A+zZx6ke0rqeAsSlK~Z zp7oo1{A0J)*y@OqBEFm6U0f66!1_G#9m4+FQv&Cvet*cgtGB7PaWexA?_D!mXxnt{ zSX!_QV?bixO&?=_6vyB23hmM9;W|K@? znrT%!fpI&yF3k^Sjhg3kw}ao&{%uK$|L(udH$FEWA2pvRlll7e)IXa-%oF@KYqR+~ zw;jm-*G_md9h@}vpF20U@;)*%2kL&axHs~@rN3OJz2A`xBf9NBU_e{%x!yI~ z4Bh+gHlHnLb_%T#1j{q4)lnnk>S#GS?AmU;@^CdeTpjlC(iLeyKc2g$?0V;0ZC_o< z?g?JksJ-v-(DU(XWc|1Au9wkhifm?D^sD2k{Wxxk)N0=9s~HYiVgEd}>*jaP=+66h zccA94IZdk*-y%0YH2)hfRug|FuBo`W*M3_rr{n3=uNf<`f0kU$JC|eo)tJMUb$Ym2 zP?-aGeT#_!r7f>JA!*6X_MiK>mopg*3EbVi+{(6&S?>1w?S9X=R=o?iT3Mi&2q45B z<4p$~8%FE4=XS@^9Mk@14ZBZT?=4s?_8cGVlQX)xeeeWZ^#vR4DH+FkJNe1NH|`EH_G+*zECOat@rVtuq&8ik!N z%uy^tZ!DLS)AQ#ii}BdJ&;EG;xEv=Z&sr>QyEgyE=RS9S{rdIAZMWSv|4Nz(=-aLS z?JJTTKy1gZU;gD^zGwjXEDNm{93CEh<79I5ADf50*o^dbX42=IJ3reDbDKH)d2?I^At5w>L8IMEX`m0$^Ory&FZ!PHRx{tSzm0&tbZO`{dVMr zIsEBqJ9XB?PV?6iO_zW?f!S=1wPQ59NqQ@jZFDl8&KJwM^EE4NS;^#F9a#eQq|+v! zQ~PVQ!VtC5ev|B76NWB_7Lg}j)x;7Y#xQMy_uskx+E z9Ua}dp3k4!)NQ`nYX`n;No4Jb%9E4-cmDj{O}UekM|v^nzt3imHrKq5wjpVK@#2fu z$H$-B)O+dD%cu=MNp<_rj#6!|-Eqeq&0pK)yeVsd)qH;b^Pk`RwQ0;yR@8R+vOP`J z{d@V#U*3Fv^wCx}{bvWV6zd9ZNy|II^IRFVv#p?^Pdu@y@AUL}hAY=s=g-g9 zW~0^TKIbv?%8gsS>}9jH>2XuuW5(mf=%QY8_u^#zA z$1|g)M@JohSCEm0W{S9|~3Rxnh&sKP`8HxJ!Ho;q>bOvjQeCe$ido>Z9sk$_$r?!pN;J+sStFB;P;Aui$#&ALf!Tm;d1$QKDp_8zVT0wH zr88fvZfPUJ)r}h~yJxjLvi$0S)+W58Cg~j=%`K_jWeKefIuE$J?`{*|qmO!$n>C-C zB=%xUVitgxUiPx}jV|aAa9)O!QJ;lb?cs68n~r_TN?OU z(7;y>Ibdabg8$gZK6Z5B!i7UiN=KGtZ7;&%#dGHlE?J_uU?af`mgtNmjBm3c@Hra? zH$&ce^B#egjoJ@B%jMIO&1lv+fw9kanBNctCk!^Yw!}S~9auFpPud%-6}u1*_*q^WBKACGtc2ern|4!s^=M z`ud`0aGRa-(WU>ra>d)dWaS@g?z!{MJ6E2FZNkpJzhK3TH)6XkKSq5z;_DLZSL{01 z*FsR;>ccG!+|s};4Scn0;H#1xL`t`uJ^th;KRLD$=h&y`Y-BpNHK6hN^H25qc`$A0{`1x8P@9JHsjG0BR;OsQ(XULqZrZ#x>iudDpRrCmIiKV;Fbn%Y2cOyzC0SZMGn3^dcW1`Ee+h#z%32j(!ebZe8p Date: Wed, 24 Sep 2025 17:59:07 +0200 Subject: [PATCH 133/146] check blueutil dependency and add comment --- .../magic-keyboard-switcher.template.sh | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/commands/system/magic-keyboard-switcher/magic-keyboard-switcher.template.sh b/commands/system/magic-keyboard-switcher/magic-keyboard-switcher.template.sh index 7efd926cf..e27d2b939 100755 --- a/commands/system/magic-keyboard-switcher/magic-keyboard-switcher.template.sh +++ b/commands/system/magic-keyboard-switcher/magic-keyboard-switcher.template.sh @@ -1,5 +1,8 @@ #!/bin/bash +# Dependency: This script requires `blueutil` cli installed: https://github.com/toy/blueutil +# Install via homebrew: `brew install blueutil` + # Required parameters: # @raycast.schemaVersion 1 # @raycast.title Magic Keyboard switcher @@ -24,6 +27,12 @@ CMD_VAL="$($BIN --is-connected $BTMAC)" CMD_UNPAIR="$BIN --unpair $BTMAC" CMD_PAIR="$BIN --pair $BTMAC" CMD_CONN="$BIN --connect $BTMAC" + +if ! command -v blueutil &> /dev/null; then + echo "blueutil command is required (https://github.com/toy/blueutil)."; + exit 1; +fi + if [[ "$CMD_VAL" -eq 1 ]]; then echo "Connected to $BTMAC" echo "Going to disconnect $BTMAC" From d0e43baa72cd1ee785d64e522f285b701430a5de Mon Sep 17 00:00:00 2001 From: blastik <3662083+blastik@users.noreply.github.com> Date: Wed, 24 Sep 2025 18:09:52 +0200 Subject: [PATCH 134/146] fix space in readme --- commands/system/magic-keyboard-switcher/README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/commands/system/magic-keyboard-switcher/README.md b/commands/system/magic-keyboard-switcher/README.md index 1c19ed6a6..295fd7d06 100644 --- a/commands/system/magic-keyboard-switcher/README.md +++ b/commands/system/magic-keyboard-switcher/README.md @@ -8,6 +8,7 @@ Script command to easility switch the bluetooth connectivity of a single Magic K

    Bluetooth menu
    + 3. Open the script file, set your Magic Keyboard bluetooth MAC address in the `BTMAC` variable and review the blueutil binary location set in the `BIN` variable. 4. Remove `.template` from the file name. 5. Say Ok when prompted about giving Bluetooth permissions to Raycast after executing the script command. From 38a7a07c80547627a18bafe41c39d2a13ee07812 Mon Sep 17 00:00:00 2001 From: blastik <3662083+blastik@users.noreply.github.com> Date: Wed, 24 Sep 2025 18:10:46 +0200 Subject: [PATCH 135/146] update readme --- commands/system/magic-keyboard-switcher/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/commands/system/magic-keyboard-switcher/README.md b/commands/system/magic-keyboard-switcher/README.md index 295fd7d06..a6ce88ad3 100644 --- a/commands/system/magic-keyboard-switcher/README.md +++ b/commands/system/magic-keyboard-switcher/README.md @@ -13,7 +13,7 @@ Script command to easility switch the bluetooth connectivity of a single Magic K 4. Remove `.template` from the file name. 5. Say Ok when prompted about giving Bluetooth permissions to Raycast after executing the script command. -## How to switch keyboards +## How to switch the Magic Keyboard between computers It's desirable to have Raycast and this script command installed in both computers. From 975739cda9cf173078e515124aff59a54ebcf782 Mon Sep 17 00:00:00 2001 From: Andrii Barabash Date: Sat, 27 Sep 2025 20:40:28 +0200 Subject: [PATCH 136/146] Added SSH Tunnel SOCKS Proxy script command --- .../toggle_ssh_proxy_tunnel.template.sh | 49 +++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 commands/developer-utils/toggle_ssh_proxy_tunnel.template.sh diff --git a/commands/developer-utils/toggle_ssh_proxy_tunnel.template.sh b/commands/developer-utils/toggle_ssh_proxy_tunnel.template.sh new file mode 100644 index 000000000..c5fc15793 --- /dev/null +++ b/commands/developer-utils/toggle_ssh_proxy_tunnel.template.sh @@ -0,0 +1,49 @@ +#!/bin/bash + +# Raycast Script Command +# +# Required parameters: +# @raycast.schemaVersion 1 +# @raycast.title Toggle SSH SOCKS Tunnel +# @raycast.mode silent +# +# Optional parameters: +# @raycast.icon 🔒 +# @raycast.packageName developer-utils +# +# Documentation: +# @raycast.description Toggles an SSH SOCKS proxy tunnel on and off. +# @raycast.author Andrii Barabash +# @raycast.authorURL https://github.com/AndriiBarabash + +# --- Configuration --- +# Replace these with your own values +SSH_USER="" +SSH_HOST="" +SSH_PORT="" +INTERFACE="" # e.g., "Wi-Fi" or "Ethernet" +PROXY_PORT="" # e.g., 1080 +# --- End Configuration --- + +if pgrep -f "ssh -D $PROXY_PORT" >/dev/null; then + echo "SSH SOCKS tunnel is running. Turning it off..." + + # Kill the SSH process + pkill -f "ssh -D $PROXY_PORT" + + # Disable the SOCKS proxy + networksetup -setsocksfirewallproxystate "$INTERFACE" off + + echo "Tunnel and proxy disabled." +else + echo "SSH SOCKS tunnel is not running. Turning it on..." + + # Start the SSH tunnel + ssh -D "$PROXY_PORT" -f -C -q -N -p "$SSH_PORT" "$SSH_USER"@"$SSH_HOST" + + # Enable the SOCKS proxy + networksetup -setsocksfirewallproxy "$INTERFACE" 127.0.0.1 "$PROXY_PORT" + networksetup -setsocksfirewallproxystate "$INTERFACE" on + + echo "Tunnel and proxy enabled." +fi From 589b4494970952441558120dbe710751dcab6b9c Mon Sep 17 00:00:00 2001 From: Andrii Barabash Date: Sat, 27 Sep 2025 20:44:06 +0200 Subject: [PATCH 137/146] Added SSH Tunnel SOCKS Proxy script command --- commands/developer-utils/toggle_ssh_proxy_tunnel.template.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/commands/developer-utils/toggle_ssh_proxy_tunnel.template.sh b/commands/developer-utils/toggle_ssh_proxy_tunnel.template.sh index c5fc15793..80f8e054d 100644 --- a/commands/developer-utils/toggle_ssh_proxy_tunnel.template.sh +++ b/commands/developer-utils/toggle_ssh_proxy_tunnel.template.sh @@ -9,7 +9,7 @@ # # Optional parameters: # @raycast.icon 🔒 -# @raycast.packageName developer-utils +# @raycast.packageName Developer Utilities # # Documentation: # @raycast.description Toggles an SSH SOCKS proxy tunnel on and off. From 0c548165515cd39d6106bb3eee1e1121f6d13f37 Mon Sep 17 00:00:00 2001 From: Raycast Bot Date: Mon, 29 Sep 2025 08:56:20 +0000 Subject: [PATCH 138/146] Update Script Commands documentation --- commands/README.md | 1 + commands/extensions.json | 53 ++++++++++++++++++++++++++++------------ 2 files changed, 39 insertions(+), 15 deletions(-) diff --git a/commands/README.md b/commands/README.md index 6d50888c0..cfd63a6df 100644 --- a/commands/README.md +++ b/commands/README.md @@ -1498,6 +1498,7 @@ This repository contains sample commands and documentation to write your own one | | [Copy Finder Selection to Clipboard](system/copy-selection-to-clipboard.applescript) | Copy contents of selected items in Finder to the clipboard. If there's more than one file selected, they will be combined and added to the clipboard. | [Felipe Turcheti](https://felipeturcheti.com) | | | | | 💁 | [Copy Last Download](system/copy-last-download.swift) | Copy the last downloaded file to the clipboard. | Raycast | | | | | 📸 | [Copy Last Screenshot](system/copy-last-screenshot.swift) | Copies the last screenshot to the clipboard. | Raycast | | | | + | 📝 | [Copy Meeting Summary](system/meeting_summary_script.swift) | Copies a summary of today's meetings to the clipboard. | Raycast | | | | | 📟 | [Copy Wi-Fi Password](system/wifi-password.sh) | Copy Wi-Fi password from current session | [Astrit Malsia](https://github.com/astrit) | | | | | 📧 | [Create Email](system/new-email.sh) | Opens default email application, and creates a new email with the given inputs. | [Brandon Escamilla](https://github.com/brandonescamilla) | ✅ | | | | 📄 | [Create New File](system/create-new-file.applescript) | Create files in the front window or desktop of the visit | [LokHsu](https://github.com/lokhsu) | | | | diff --git a/commands/extensions.json b/commands/extensions.json index 20801e73e..ceaf294b2 100644 --- a/commands/extensions.json +++ b/commands/extensions.json @@ -7212,6 +7212,29 @@ "title" : "Network Status", "updatedAt" : "2021-03-11T11:38:48-08:00" }, + { + "authors" : null, + "createdAt" : "2025-09-05T10:08:41-05:00", + "currentDirectoryPath" : null, + "description" : "Copies a summary of today's meetings to the clipboard.", + "filename" : "meeting_summary_script.swift", + "hasArguments" : false, + "icon" : { + "dark" : null, + "light" : "📝" + }, + "identifier" : "3542086084234d14d5e94041c7c2915b", + "isTemplate" : false, + "language" : "swift", + "mode" : "silent", + "needsConfirmation" : null, + "packageName" : "System", + "path" : "system\/", + "refreshTime" : null, + "schemaVersion" : 1, + "title" : "Copy Meeting Summary", + "updatedAt" : "2025-09-05T10:08:41-05:00" + }, { "authors" : null, "createdAt" : "2020-09-30T12:56:01+01:00", @@ -24110,25 +24133,15 @@ } ], "languages" : [ - { - "displayName" : "Ruby", - "icon" : "icon-ruby.png", - "name" : "ruby" - }, { "displayName" : "Node", "icon" : "icon-nodejs.png", "name" : "node" }, { - "displayName" : "Bash", - "icon" : "icon-bash.png", - "name" : "bash" - }, - { - "displayName" : "Swift", - "icon" : "icon-swift.png", - "name" : "swift" + "displayName" : "Ruby", + "icon" : "icon-ruby.png", + "name" : "ruby" }, { "displayName" : "Python", @@ -24139,11 +24152,21 @@ "displayName" : "AppleScript", "icon" : "icon-applescript.png", "name" : "applescript" + }, + { + "displayName" : "Bash", + "icon" : "icon-bash.png", + "name" : "bash" + }, + { + "displayName" : "Swift", + "icon" : "icon-swift.png", + "name" : "swift" } ], "metadata" : [ ], - "totalScriptCommands" : 838, - "updatedAt" : "2025-08-25T09:08:49Z" + "totalScriptCommands" : 839, + "updatedAt" : "2025-09-29T08:55:39Z" } \ No newline at end of file From d54f4f6e220b4331ed8c93d086cfea2cdd89f247 Mon Sep 17 00:00:00 2001 From: Raycast Bot Date: Mon, 29 Sep 2025 13:44:07 +0000 Subject: [PATCH 139/146] Update Script Commands documentation --- commands/README.md | 7 ++++ commands/extensions.json | 71 ++++++++++++++++++++++++++++++---------- 2 files changed, 60 insertions(+), 18 deletions(-) diff --git a/commands/README.md b/commands/README.md index cfd63a6df..39fc611ce 100644 --- a/commands/README.md +++ b/commands/README.md @@ -162,6 +162,7 @@ This repository contains sample commands and documentation to write your own one - [Samsung TV](#samsung-tv) - [System](#system) - [Audio](#audio) + - [Magic Keyboard Switcher](#magic-keyboard-switcher) - [VPN](#vpn) - [Vpnutil](#vpnutil) - [Web Searches](#web-searches) @@ -1590,6 +1591,12 @@ This repository contains sample commands and documentation to write your own one | 🎙 | [Toggle Microphone](system/audio/toggle-mic.applescript) | Toggles microphone. | [Matthew Morek](https://github.com/matthewmorek) | | | | | 🔔 | [Toggle Mute Notifcation Sounds](system/audio/toggle-mute-notification-sounds.applescript) | Toggles notification sounds. | [Annie Ma](http://www.anniema.co/) | | | | +#### Magic Keyboard Switcher + +| Icon | Title | Description | Author | Args | Templ | Lang | +| :--: | ----- | ----------- | :----: | :--: | :---: | :--: | + | | [Magic Keyboard switcher](system/magic-keyboard-switcher/magic-keyboard-switcher.template.sh) | Switch a single magic keyboard between computers | [blastik](https://github.com/blastik) | | ✅ | | + #### VPN | Icon | Title | Description | Author | Args | Templ | Lang | diff --git a/commands/extensions.json b/commands/extensions.json index ceaf294b2..1917234f9 100644 --- a/commands/extensions.json +++ b/commands/extensions.json @@ -7485,6 +7485,41 @@ } ] }, + { + "name" : "Magic Keyboard Switcher", + "path" : "magic-keyboard-switcher", + "readme" : "system\/magic-keyboard-switcher\/README.md", + "scriptCommands" : [ + { + "authors" : [ + { + "name" : "blastik", + "url" : "https:\/\/github.com\/blastik" + } + ], + "createdAt" : "2025-09-24T17:50:16+02:00", + "currentDirectoryPath" : null, + "description" : "Switch a single magic keyboard between computers", + "filename" : "magic-keyboard-switcher.template.sh", + "hasArguments" : false, + "icon" : { + "dark" : null, + "light" : "images\/logo.png" + }, + "identifier" : "ebd6d04790272dd639e870be745a66db", + "isTemplate" : true, + "language" : "bash", + "mode" : "silent", + "needsConfirmation" : null, + "packageName" : "System", + "path" : "system\/magic-keyboard-switcher\/", + "refreshTime" : null, + "schemaVersion" : 1, + "title" : "Magic Keyboard switcher", + "updatedAt" : "2025-09-24T17:59:07+02:00" + } + ] + }, { "name" : "Vpnutil", "path" : "vpnutil", @@ -24134,39 +24169,39 @@ ], "languages" : [ { - "displayName" : "Node", - "icon" : "icon-nodejs.png", - "name" : "node" - }, - { - "displayName" : "Ruby", - "icon" : "icon-ruby.png", - "name" : "ruby" + "displayName" : "Bash", + "icon" : "icon-bash.png", + "name" : "bash" }, { "displayName" : "Python", "icon" : "icon-python.png", "name" : "python" }, + { + "displayName" : "Swift", + "icon" : "icon-swift.png", + "name" : "swift" + }, + { + "displayName" : "Ruby", + "icon" : "icon-ruby.png", + "name" : "ruby" + }, { "displayName" : "AppleScript", "icon" : "icon-applescript.png", "name" : "applescript" }, { - "displayName" : "Bash", - "icon" : "icon-bash.png", - "name" : "bash" - }, - { - "displayName" : "Swift", - "icon" : "icon-swift.png", - "name" : "swift" + "displayName" : "Node", + "icon" : "icon-nodejs.png", + "name" : "node" } ], "metadata" : [ ], - "totalScriptCommands" : 839, - "updatedAt" : "2025-09-29T08:55:39Z" + "totalScriptCommands" : 840, + "updatedAt" : "2025-09-29T13:43:40Z" } \ No newline at end of file From 577158ea25030b06b1b8d58e466d1993666903c7 Mon Sep 17 00:00:00 2001 From: Raycast Bot Date: Mon, 29 Sep 2025 13:44:50 +0000 Subject: [PATCH 140/146] Set scripts as executable --- commands/developer-utils/toggle_ssh_proxy_tunnel.template.sh | 0 1 file changed, 0 insertions(+), 0 deletions(-) mode change 100644 => 100755 commands/developer-utils/toggle_ssh_proxy_tunnel.template.sh diff --git a/commands/developer-utils/toggle_ssh_proxy_tunnel.template.sh b/commands/developer-utils/toggle_ssh_proxy_tunnel.template.sh old mode 100644 new mode 100755 From b55bd77947350e563985aa1607a403cb12d78c84 Mon Sep 17 00:00:00 2001 From: Raycast Bot Date: Mon, 29 Sep 2025 13:46:58 +0000 Subject: [PATCH 141/146] Update Script Commands documentation --- commands/README.md | 1 + commands/extensions.json | 58 +++++++++++++++++++++++++++++----------- 2 files changed, 44 insertions(+), 15 deletions(-) diff --git a/commands/README.md b/commands/README.md index 39fc611ce..c50ff8db0 100644 --- a/commands/README.md +++ b/commands/README.md @@ -1018,6 +1018,7 @@ This repository contains sample commands and documentation to write your own one | 🔐 | [Strong Password Generator](developer-utils/strong-password-generator.sh) | Generate a strong password of requested character length | [Nitin Gupta](https://twitter.com/gniting) | ✅ | | | | 🕒 | [Time Between Dates](developer-utils/time-between-dates.js) | Given two dates returns the time between them in multiple units of measure. | [Federico Miraglia](https://github.com/Mitra98t) | ✅ | | | | 🕒 | [Time Calculator](developer-utils/time-calculator.js) | Add or Subtract specified amount of time from given date. | [Federico Miraglia](https://github.com/Mitra98t) | ✅ | | | + | 🔒 | [Toggle SSH SOCKS Tunnel](developer-utils/toggle_ssh_proxy_tunnel.template.sh) | Toggles an SSH SOCKS proxy tunnel on and off. | [Andrii Barabash](https://github.com/AndriiBarabash) | | ✅ | | | 🔠 | [Transform Case](developer-utils/transform-case.sh) | Transform the case of clipboard content. Defaults to lower case if no conversion type is specified. | [Nitin Gupta](https://twitter.com/gniting) | ✅ | | | | ✂ | [Trim Git Commit Hash](developer-utils/trim-git-commit-hash.sh) | Trim full git commit hash down to seven characters. | [Caleb Stauffer](https://github.com/crstauf) | ✅ | | | | 🔗 | [Unshorten URL](developer-utils/unshorten-url.sh) | Unshortens clipboard content url and copies the result again. | [Nikita Galaiko](https://github.com/ngalaiko) | | | | diff --git a/commands/extensions.json b/commands/extensions.json index 1917234f9..ded9889a8 100644 --- a/commands/extensions.json +++ b/commands/extensions.json @@ -6210,7 +6210,7 @@ "url" : "https:\/\/github.com\/AndriiBarabash" } ], - "createdAt" : "2025-03-10T10:57:38+01:00", + "createdAt" : "2025-03-10T00:16:14+01:00", "currentDirectoryPath" : null, "description" : "Put your Mac to sleep (in X minutes).", "filename" : "sleep-timer.applescript", @@ -6219,7 +6219,7 @@ "dark" : null, "light" : "😴" }, - "identifier" : "44762fff108fef0069a546e2cf83c966", + "identifier" : "ff43a32961d94da6001ad37ab79dd032", "isTemplate" : false, "language" : "applescript", "mode" : "silent", @@ -8299,6 +8299,34 @@ "title" : "Is It Up?", "updatedAt" : "2023-02-21T22:56:29-05:00" }, + { + "authors" : [ + { + "name" : "Andrii Barabash", + "url" : "https:\/\/github.com\/AndriiBarabash" + } + ], + "createdAt" : "2025-09-27T20:40:28+02:00", + "currentDirectoryPath" : null, + "description" : "Toggles an SSH SOCKS proxy tunnel on and off.", + "filename" : "toggle_ssh_proxy_tunnel.template.sh", + "hasArguments" : false, + "icon" : { + "dark" : null, + "light" : "🔒" + }, + "identifier" : "aae74278107ffa5f34b3733eb2c8a813", + "isTemplate" : true, + "language" : "bash", + "mode" : "silent", + "needsConfirmation" : null, + "packageName" : "Developer Utilities", + "path" : "developer-utils\/", + "refreshTime" : null, + "schemaVersion" : 1, + "title" : "Toggle SSH SOCKS Tunnel", + "updatedAt" : "2025-09-29T13:44:50Z" + }, { "authors" : [ { @@ -24168,40 +24196,40 @@ } ], "languages" : [ + { + "displayName" : "Python", + "icon" : "icon-python.png", + "name" : "python" + }, { "displayName" : "Bash", "icon" : "icon-bash.png", "name" : "bash" }, { - "displayName" : "Python", - "icon" : "icon-python.png", - "name" : "python" + "displayName" : "Node", + "icon" : "icon-nodejs.png", + "name" : "node" }, { "displayName" : "Swift", "icon" : "icon-swift.png", "name" : "swift" }, - { - "displayName" : "Ruby", - "icon" : "icon-ruby.png", - "name" : "ruby" - }, { "displayName" : "AppleScript", "icon" : "icon-applescript.png", "name" : "applescript" }, { - "displayName" : "Node", - "icon" : "icon-nodejs.png", - "name" : "node" + "displayName" : "Ruby", + "icon" : "icon-ruby.png", + "name" : "ruby" } ], "metadata" : [ ], - "totalScriptCommands" : 840, - "updatedAt" : "2025-09-29T13:43:40Z" + "totalScriptCommands" : 841, + "updatedAt" : "2025-09-29T13:46:20Z" } \ No newline at end of file From bbb460588d0b6eeea653ae998bfbe0b012eb9f49 Mon Sep 17 00:00:00 2001 From: Aaqif Shafi <63208372+aaqifshafi@users.noreply.github.com> Date: Fri, 24 Oct 2025 17:32:55 +0530 Subject: [PATCH 142/146] Added Kill Processes Running od specific ports (#1005) --- commands/system/kill-a-process-on-port.sh | 31 +++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100755 commands/system/kill-a-process-on-port.sh diff --git a/commands/system/kill-a-process-on-port.sh b/commands/system/kill-a-process-on-port.sh new file mode 100755 index 000000000..c97f38f87 --- /dev/null +++ b/commands/system/kill-a-process-on-port.sh @@ -0,0 +1,31 @@ +#!/bin/bash + +# Required parameters: +# @raycast.schemaVersion 1 +# @raycast.title Kill a process on PORT +# @raycast.mode compact + +# Optional parameters: +# @raycast.icon 🚫 +# @raycast.argument1 { "type": "text", "placeholder": "Ports (e.g. 3000 5000)" } + +# Documentation: +# @raycast.description Kill running processes on the given ports +# @raycast.author aaqifshafi +# @raycast.authorURL https://github.com/aaqifshafi + +if [ $# -eq 0 ]; then + echo "Provide at least one port number." + exit 1 +fi + +for port in "$@" +do + pid=$(lsof -ti tcp:$port) + if [ -n "$pid" ]; then + kill -9 $pid + echo "Killed process $pid on port $port" + else + echo "No process found on port $port" + fi +done From 9250fe367004167ca57c182710a3489498481682 Mon Sep 17 00:00:00 2001 From: AlexGadd Date: Sat, 25 Oct 2025 01:03:45 +1300 Subject: [PATCH 143/146] Add script to type clipboard content character by character (#1006) This script takes the current clipboard content and types each character using System Events. --- commands/system/paste-clipboard.sh | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 commands/system/paste-clipboard.sh diff --git a/commands/system/paste-clipboard.sh b/commands/system/paste-clipboard.sh new file mode 100644 index 000000000..b2b738d0d --- /dev/null +++ b/commands/system/paste-clipboard.sh @@ -0,0 +1,24 @@ +#!/bin/bash + +# Required parameters: +# @raycast.schemaVersion 1 +# @raycast.title Type Clipboard +# @raycast.mode silent + +# Optional parameters: +# @raycast.icon 📋 +# @raycast.packageName Type Clipboard in Search + +# Documentation: +# @raycast.description Takes your clipboard then types each character in the clipboard +# @raycast.author AlexGadd +# @raycast.authorURL https://raycast.com/AlexGadd + +osascript -e 'set clipboardContent to the clipboard' \ +-e 'set charCount to count of characters of clipboardContent' \ +-e 'tell application "System Events"' \ +-e ' repeat with i from 1 to charCount' \ +-e ' set theChar to character i of clipboardContent' \ +-e ' keystroke theChar' \ +-e ' end repeat' \ +-e 'end tell' From 4c49372088111d028bc0a291c7ee0d485fdd5b75 Mon Sep 17 00:00:00 2001 From: Raycast Bot Date: Fri, 24 Oct 2025 12:04:19 +0000 Subject: [PATCH 144/146] Update Script Commands documentation --- commands/README.md | 1 + commands/extensions.json | 56 ++++++++++++++++++++++++++++++---------- 2 files changed, 43 insertions(+), 14 deletions(-) diff --git a/commands/README.md b/commands/README.md index c50ff8db0..113373d20 100644 --- a/commands/README.md +++ b/commands/README.md @@ -1525,6 +1525,7 @@ This repository contains sample commands and documentation to write your own one | 💨 | [Flush DNS](system/flush-dns.sh) | Flush DNS cache | [Felipe Turcheti](https://felipeturcheti.com) | | | | | 🔫 | [Kill AirDrop Processes](system/kill-airdrop.processes.sh) | Force kill all AirDrop processes | [Linus Salzmann](https://github.com/linus569) | | | | | ⚠️ | [Kill Running Process](system/kill-process.sh) | Force kill a running process | [Gustavo Santana](https://github.com/gumadeiras) | ✅ | | | + | 🚫 | [Kill a process on PORT](system/kill-a-process-on-port.sh) | Kill running processes on the given ports | [aaqifshafi](https://github.com/aaqifshafi) | ✅ | | | | 📈 | [Largest CPU Process](system/largest-cpu-process.sh) | Report process with largest system CPU usage. | [Caleb Stauffer](https://github.com/crstauf) | | | | | 📈 | [Largest RAM Process](system/largest-ram-process.sh) | Report process with largest system RAM usage. | [Caleb Stauffer](https://github.com/crstauf) | | | | | 🔋 | [Low Power Mode](system/Low Power Mode.sh) | N/A | [Kailash Yellareddy](https://github.com/kyellareddy) | | | | diff --git a/commands/extensions.json b/commands/extensions.json index ded9889a8..626f5aa2a 100644 --- a/commands/extensions.json +++ b/commands/extensions.json @@ -6808,6 +6808,34 @@ "title" : "CPU Usage", "updatedAt" : "2024-04-22T06:25:56Z" }, + { + "authors" : [ + { + "name" : "aaqifshafi", + "url" : "https:\/\/github.com\/aaqifshafi" + } + ], + "createdAt" : "2025-10-24T17:32:55+05:30", + "currentDirectoryPath" : null, + "description" : "Kill running processes on the given ports", + "filename" : "kill-a-process-on-port.sh", + "hasArguments" : true, + "icon" : { + "dark" : null, + "light" : "🚫" + }, + "identifier" : "71d24aef7a640392ef09a32800fd05e3", + "isTemplate" : false, + "language" : "bash", + "mode" : "compact", + "needsConfirmation" : null, + "packageName" : "Kill A Process On Port", + "path" : "system\/", + "refreshTime" : null, + "schemaVersion" : 1, + "title" : "Kill a process on PORT", + "updatedAt" : "2025-10-24T17:32:55+05:30" + }, { "authors" : [ { @@ -24197,14 +24225,14 @@ ], "languages" : [ { - "displayName" : "Python", - "icon" : "icon-python.png", - "name" : "python" + "displayName" : "AppleScript", + "icon" : "icon-applescript.png", + "name" : "applescript" }, { - "displayName" : "Bash", - "icon" : "icon-bash.png", - "name" : "bash" + "displayName" : "Ruby", + "icon" : "icon-ruby.png", + "name" : "ruby" }, { "displayName" : "Node", @@ -24217,19 +24245,19 @@ "name" : "swift" }, { - "displayName" : "AppleScript", - "icon" : "icon-applescript.png", - "name" : "applescript" + "displayName" : "Python", + "icon" : "icon-python.png", + "name" : "python" }, { - "displayName" : "Ruby", - "icon" : "icon-ruby.png", - "name" : "ruby" + "displayName" : "Bash", + "icon" : "icon-bash.png", + "name" : "bash" } ], "metadata" : [ ], - "totalScriptCommands" : 841, - "updatedAt" : "2025-09-29T13:46:20Z" + "totalScriptCommands" : 842, + "updatedAt" : "2025-10-24T12:03:52Z" } \ No newline at end of file From 2b66097a169b3a588fa33796e0fd4285a545ebbb Mon Sep 17 00:00:00 2001 From: Raycast Bot Date: Fri, 24 Oct 2025 12:04:57 +0000 Subject: [PATCH 145/146] Set scripts as executable --- commands/system/paste-clipboard.sh | 0 1 file changed, 0 insertions(+), 0 deletions(-) mode change 100644 => 100755 commands/system/paste-clipboard.sh diff --git a/commands/system/paste-clipboard.sh b/commands/system/paste-clipboard.sh old mode 100644 new mode 100755 From 0933fd73829ede5715ea4fa491e917b217ef258e Mon Sep 17 00:00:00 2001 From: Raycast Bot Date: Fri, 24 Oct 2025 12:06:59 +0000 Subject: [PATCH 146/146] Update Script Commands documentation --- commands/README.md | 1 + commands/extensions.json | 64 +++++++++++++++++++++++++++++----------- 2 files changed, 47 insertions(+), 18 deletions(-) diff --git a/commands/README.md b/commands/README.md index 113373d20..88289b6ac 100644 --- a/commands/README.md +++ b/commands/README.md @@ -1575,6 +1575,7 @@ This repository contains sample commands and documentation to write your own one | | [Toggle Wi-Fi](system/wifi.template.applescript) | Toggle your Wi-Fi connection. | [Vincent Dörig](https://github.com/vincentdoerig) | | ✅ | | | 😴 | [Turn Off Do Not Disturb](system/dnd-off.sh) | Turn off "do not disturb" mode. Does [not work on Big Sur](https://github.com/sindresorhus/do-not-disturb-cli/issues/2). | [Caleb Stauffer](https://github.com/crstauf) | | | | | 😴 | [Turn On Do Not Disturb](system/dnd-on.sh) | Turn on "do not disturb" mode. Does [not work on Big Sur](https://github.com/sindresorhus/do-not-disturb-cli/issues/2). | [Caleb Stauffer](https://github.com/crstauf) | | | | + | 📋 | [Type Clipboard](system/paste-clipboard.sh) | Takes your clipboard then types each character in the clipboard | [AlexGadd](https://raycast.com/AlexGadd) | | | | | 🗑 | [Uninstall with AppCleaner](system/uninstall-with-appcleaner.applescript) | Uninstall applications with AppCleaner | [Felipe Turcheti](https://felipeturcheti.com) | ✅ | | | | ♻️ | [Update Community Scripts](system/update-scripts-command.template.py) | Updates community Script Commands to their last available version from the GitHub repository. | [Quentin Eude](https://www.github.com/qeude) | | ✅ | | diff --git a/commands/extensions.json b/commands/extensions.json index 626f5aa2a..a245b43c1 100644 --- a/commands/extensions.json +++ b/commands/extensions.json @@ -7314,6 +7314,34 @@ "title" : "Toggle Battery Charging", "updatedAt" : "2022-08-18T12:53:36Z" }, + { + "authors" : [ + { + "name" : "AlexGadd", + "url" : "https:\/\/raycast.com\/AlexGadd" + } + ], + "createdAt" : "2025-10-25T01:03:45+13:00", + "currentDirectoryPath" : null, + "description" : "Takes your clipboard then types each character in the clipboard", + "filename" : "paste-clipboard.sh", + "hasArguments" : false, + "icon" : { + "dark" : null, + "light" : "📋" + }, + "identifier" : "b6b6c23a4d07188552b17cba337131f8", + "isTemplate" : false, + "language" : "bash", + "mode" : "silent", + "needsConfirmation" : null, + "packageName" : "Type Clipboard in Search", + "path" : "system\/", + "refreshTime" : null, + "schemaVersion" : 1, + "title" : "Type Clipboard", + "updatedAt" : "2025-10-24T12:04:57Z" + }, { "authors" : null, "createdAt" : "2020-09-30T12:56:01+01:00", @@ -24225,19 +24253,9 @@ ], "languages" : [ { - "displayName" : "AppleScript", - "icon" : "icon-applescript.png", - "name" : "applescript" - }, - { - "displayName" : "Ruby", - "icon" : "icon-ruby.png", - "name" : "ruby" - }, - { - "displayName" : "Node", - "icon" : "icon-nodejs.png", - "name" : "node" + "displayName" : "Bash", + "icon" : "icon-bash.png", + "name" : "bash" }, { "displayName" : "Swift", @@ -24250,14 +24268,24 @@ "name" : "python" }, { - "displayName" : "Bash", - "icon" : "icon-bash.png", - "name" : "bash" + "displayName" : "Ruby", + "icon" : "icon-ruby.png", + "name" : "ruby" + }, + { + "displayName" : "AppleScript", + "icon" : "icon-applescript.png", + "name" : "applescript" + }, + { + "displayName" : "Node", + "icon" : "icon-nodejs.png", + "name" : "node" } ], "metadata" : [ ], - "totalScriptCommands" : 842, - "updatedAt" : "2025-10-24T12:03:52Z" + "totalScriptCommands" : 843, + "updatedAt" : "2025-10-24T12:06:29Z" } \ No newline at end of file