Shortcut Launcher is an iOS shortcut that has been designed to streamline the use of the Shortcuts App widget. In addition, it provides a method to categorize the Shortcuts App Library shortcuts.
It is convenient to launch shortcuts from the Shortcuts App widget. But as more shortcuts are configured to appear on the widget, valuable vertical space on the widget screen is filled since shortcuts appear only two abreast. Shortcut Launcher provides quick access to all shortcuts without sacrificing this valuable space.
Shortcut Launcher can be used as-is or, if needed, easily customized. The following videos include much more information:
Shortcut Launcher - Part 1: Features
Shortcut Launcher - Part 2: Configuration
All of the information in the two videos is also included in the Shortcut Launcher Comments and Import Questions.
Download Shortcut Launcher here. [superseded - 2018-10-03 Update below recommended]
Reddit Cross-Post here.
2018-10-03 Update:
During my recent use of Shortcut Launcher I encountered a nasty bug with iOS Shortcuts v2.0. If one has the following circumstances:
- a shortcut is launched from the Shortcuts App widget,
- the Shortcuts App Library is large (e.g., >100 shortcuts), and
- the shortcut executes the Get My Shortcuts action,
then the shortcut will sometimes not be able to render the list within the Shortcuts App widget. I was able to reproduce this bug with a very simple shortcut on my iPhone 8 Plus and my iPad Pro 10.5".
Interestingly, even with the above conditions, rendering native lists (within the Shortcuts App) is not a problem. Thus, one solution is to run the Continue Shortcut in App action before the shortcut attempts to render a list. Another solution is to use the Get My Shortcuts action in a helper shortcut, write the Library shortcut names to an iCloud file, and then in the widget-launched shortcut, read this file rather than use the Get My Shortcuts action. (Aren’t bugs like this fun?)
So…
I’ve updated Shortcut Launcher and created Shortcut Launcher (helper). [superseded - 2018-10-19 Update below recommended]
The updated version of Shortcut Launcher (dated 2018-10-03) includes two new Import Questions (Always Open Shortcuts App & Use Shortcut Launcher (helper)). [superseded - 2018-10-19 Update below recommended]
Always Open Shortcuts App
0 = No [default]
1 = Yes
2018-10-03: This import question and the next [Use Shortcut Launcher (helper)] were added to circumvent a bug sometimes observed when the ‘Get My Shortcuts’ action runs with a large Shortcuts App Library (>100 shortcuts). This bug only occurs when ‘Shortcut Launcher’ is run (tapped) from the ‘Shortcuts App Widget’, and can be identified by one of two behaviors: 1) no menu is generated, and no message appears, that is, this shortcut appears unresponsive to the tap; 2) no menu is generated and the following message appears: Unable to Load.
Use Shortcut Launcher (helper)
0 = No [default]
1 = Yes
If Always Open Shortcuts App = 1 (refer to the previous Import Question), then the ‘Get All Shortcuts’ action in this shortcut will never cause a problem, thus this setting will be ignored and ‘Shortcut Launcher (helper)’ will not be required.
This new version of Shortcut Launcher performs exactly like the original version (and the helper is not needed) if the default values (0 & 0) are used for the new Import Questions.
But if you are like me, and have a large Shortcuts App Library, you might have to adjust one of these new Import Questions. Since I like to render lists in the Shortcut App widget whenever possible, on my iPhone and iPad, I’ve opted to set these as follows: Always Open Shortcuts App = 0 & Use Shortcut Launcher (helper) = 1. (Note: The helper only needs to be run manually when a shortcut is added or deleted from the Shortcuts App Library. This isn’t ideal, but it really isn’t too bad as the helper runs very quickly and the new version of Shortcuts Launcher is snappier with these settings (reading and parsing one file seems to be faster than running the Get My Shortcuts action). (And, yes, I tried running the helper from Shortcut Launcher using the Run Shortcut action, but this performed no better than the original version that always ran Get My Shortcuts regardless of the settings.)
2018-10-19 Update:
Revised Shortcut Launcher and Shortcut Launcher (helper). [superseded - 2018-11-12 Update below recommended]
Shortcut Launcher Revisions:
a) Improved comments throughout.
b) No longer ignore Use Shortcut Launcher (helper) Import Question if Always Open Shortcuts App = 1 because the former can be used to improve performance if the shortcut Library is large.
c) Changed the name of Import Question Continue Shortcut in App before Launching Shortcut to better describe its function.
d) Added a new Import Question Ignore Categories that can be used to ignore Category items in the Dictionary (=1) or be used to bypass the first list completely (=2). 1 & 2 provide two simplified modes of operation: this shortcut can be used without modifying the Dictionary action and without changing the names of any shortcuts.
Shortcut Launcher (helper) Revisions:
- Fixed a typo in the alert
2018-11-12 Update (RoutineHub v1.0):
Revised Shortcut Launcher and Shortcut Launcher (helper).
Shortcut Launcher Revisions:
a) Uploaded this shortcut, Shortcut Launcher, and Shortcut Launcher (helper) to RoutineHub.
b) Included UpdateKit, but only run the update check if Shortcut Launcher is launched from Shortcut Launcher (helper). For future updates (of v1.0 or greater) of Shortcut Launcher, before the update check, the Dictionary action values will be saved to /iCloud Drive/Shortcuts/Shortcut Launcher (helper)/Dictionary-Shortcut Launcher_v[version].txt and to a new note in the Notes app. Thus if the Dictionary action default values were previously changed to customize the behavior of Shortcut Launcher, the changes can be more easily restored by returning to the new note (or opening the text file) and then copying the customized values back to the default Dictionary after the Shortcut Launcher update.
c) Changed Use Shortcut Launcher (helper) Import Question default value to 1.
d) If Use Shortcut Launcher (helper) = 1, but it appears that the helper has not been run on the device, check for it. If it is not found, offer to download it; if it is found, run it.
e) Shortcut Launcher (helper) now writes to an iCloud folder based on its name, not the name of Parent (this shortcut). This change was made to better accommodate cases where a user might have more than one copy of this shortcut with different Dictionary settings, e.g., Shortcut Launcher - Categories and Shortcut Launcher - Shortcuts. Note, only one helper shortcut (i.e., Shortcut Launcher (helper)) is required for all Parents. But there is a Text action at the top of the helper that must be modified to add each Parent name.
f) Checks the version of Shortcut Launcher (helper) last run; if it is older than the version specified in this shortcut, the latest version is downloaded.
g) Prior to this version, Dictionary entries with an undefined value (e.g., X) were assumed to be Category items. They are now ignored. This provides a method to easily disable a Category or Shortcut but leave it in the Dictionary for subsequent reactivation.
h) Changed Match Text Pattern from [^ \t]{1} to ([^\s]+). The original pattern was defined to return the first non whitespace character. For almost all emojis, this worked as expected. But for a few emojis (e.g., , #⃣) the result would be different than the emoji. For example with #⃣ XYZ, the first pattern would return #, not the emoji hashtag. Thus the Match Text Pattern was changed to find all characters up to the first space.
i) In the Dictionary, modified the example Categories ‘C’ to ensure that all had at least one space after the leading emoji.
j) For the [ Filter by Shortcut Name ] option, trimmed leading and trailing whitespace from the user’s response. Also, in the prompt, warned that the search is case sensitive.
WARNING: If you have used a previous version of Shortcut Launcher (prior to v1.0, 2018-11-12) and you modified the Dictionary by adding your own Categories ‘C’ or Shortcuts ‘S’, consider renaming the previously used version before downloading this version. Once v1.0 (or later) is modified, this precaution will not be necessary as the Dictionary settings will be copied the the file and note as mentioned above.
Shortcut Launcher (helper) Revisions:
a) Uploaded this shortcut, Shortcut Launcher (helper), and its Parent Shortcut, Shortcut Launcher, to RoutineHub.
b) Added UpdateKit check every time this shortcut is run.
c) By default, the Parent Shortcut is Shortcut Launcher. But some users might choose to have multiple copies of the parent, each with different Dictionary settings. In all cases, however, only one copy of this helper shortcut is required.
d) At the end of this shortcut, if the version of this shortcut has changed, run the Parent Shortcut(s) passing integer 1. The Parent(s) uses UpdateKit also, but only makes an update check when it is passed this 1. Thus, the Parent(s) bypasses the update check when it is routinely run by the user.
2018-11-14 Update (RoutineHub v1.1):
Revised Shortcut Launcher and Shortcut Launcher (helper).
For future revisions, refer to the Latest Release Notes in RoutineHub.