Listify

Create Rich lists with Icons, Titles and Subtitles


Description

Listify

How to use Listify

In your shortcut, get the images that you want to use for your list icons, and use the Set Name action on each in the following format

{Set Name}

This text becomes list item Title [text in brackets becomes Subtitle]

Once you have a collection of images that include a Title and/or Subtitle in their names, use a Run Shortcut action and select Listify. The images will be sent to Listify which will format them into a pretty list and return the list to your shortcut. Then simply place a Choose from List action below the call to Listify and you’re done.

If you would prefer to not have the border that Listify overlays on your images, simply include the word (noframe) in parenthesis at the end of the image’s Set Name.

At the bottom of this page you can download an Example Shortcut which will demonstrate Listify in action.


How it Works

I was frustrated with Shortcut's inability to create Choose from List menus that could contain images as well as information, and discovered (at least for myself) a clever way of getting around the limitation.

Previously, I'd found that if I passed a dictionary to a Choose from List, I could get a Title text and a Subtitle text by reading the dictionary's Key for the top line, and Value for the second line. This is great but doesn't give me images.

One solution I'd seen was to create a list that included both images as well as some other type of item like a Text item, and using the Set Name action on the images which would then show next to the image as a Title. The downside of this is that these lists always include the word "Image" below the Title, and the secondary item required in those lists would say "Text". Not pretty.

Eventually I discovered that one type of list item that would give me all I wanted was a list of Contacts. vCards can contain an image file, and the person's Name would show up on one line, and their Company if specified would show up underneath.

I opened up a vCard in a text editor, found them to be quite simple to create from blank text that specifies a "person's" Name, Company and Photo (in base64), and voila, I could now generate Contacts on the fly, pass them into a Choose from List action, and then read whatever information I wanted from the chosen item for the rest of my workflow.


I used this method for my list-heavy bill management shortcut ₿𝕚𝕝𝕝𝕪 - Demo, so feel free to check that out if you'd like.

I've also created a simple Example Shortcut which you can download alongside Listify. With it, you can specify some images (preferably square), and get back a pretty list from Listify. You can even use animated Gif images to have animated icons!

Let me know if you have any questions down below or on Reddit.


Latest Release Notes

1.01 - Nov. 29, 2018, 8:29 a.m.

Implemented fix from u/NikoUY to allow Titles to now include Square Brackets.

Only the last set of text within [square brackets] in a passed-item’s Name will be considered the Subtitle.


Version history