It’s time for Text Case to receive its first update for 2020. Only a relatively small one this time, but it brings with it two new formats, and some work under the hood that should go unnoticed.
The new formats are quite straight forward:
Straight Quotes. This does the opposite of the “Smart Quotes” format, and converts all curvy quotation marks to the simple straight versions.
Slug. A bit of a weird one if you’re not already aware of what a slug is, but essentially it’s the more human-readable part of a URL that identifies what the page is. For example, a blog post will have a slug usually based on the title of the article. So this format will strip out all non-alphanumeric characters, and separate each word with a hyphen.
This update also contains a few extra things that shouldn’t be noticed, for example the way the UI is managed, and rounding corners, etc. It looks the same, except it’s done in a much more reliable way.
There is another less-than-tiny update to the UI that you may notice, and that is the gradients at the top of each format in the list view. These are now slightly more prominent.
I’m guessing you would have noticed the 2020.1 version number, this is something I’m adopting from now on with all of my apps. The format will simply be YEAR.INCREMENT, where this is the first update to Text Case in 2020.
The updates to Text Case have been quite small and more incremental updates recently, and that I think is down to the maturity of the app. There’s not that many text transformations that people do regularly enough to need it in an app such as Text Case, and there’s only a limited amount of ways you can interact with the app.
So until there’s an advancement in iOS/iPadOS/macOS I can take advantage of, I would expect the updates to continue being small tweaks, and the occasional new format.
In the mean time I should really be working out what app I’m going to be building next!
There’s yet another update to Text Case, and it brings with it three new formats, theme syncing, and an action extension for the macOS version!
Smart Quotes – This changes any straight single of double quotation marks, into their curly equivalents, all based on your localisation.
Small Caps – ᴛᴜʀɴ ʏᴏᴜʀ ᴛᴇxᴛ ɪɴᴛᴏ sᴏᴍᴇᴛʜɪɴɢ ʟɪᴋᴇ ᴛʜɪs!
Upside Down – Just another fun one, this attempts to flip the characters upside down.
These new formats are available on all versions of Text Case, iOS, iPadOS, and macOS.
Automatic Theme Syncing
Text Case has support for themes, but previously you would have to manually switch between them. With this version, you can select “Automatic” to have the Text Case theme sync with the light/dark mode of your system. This works on both iOS, iPadOS, and macOS!
Format Text Action Extension for macOS
On the iOS/iPadOS version of Text Case, there’s an Action Extension that lets you select text anywhere, and then get direct access to the different formats in Text Case. This is now coming to the macOS version, with essentially the same behaviour.
Now you can select a portion of text anywhere in macOS, right-click, and under “Share”, there should be a “Convert Text” action. (If it doesn’t appear, you will have to go to System Preferences, Extensions, Actions, etc enable it.)
That will bring up the Text Case UI, and selecting a format will result in the formatted text being copied to your clipboard!
I’ve been slowly working on this for quite a few months now, but I think it’s finally time to release Text Case for Mac.
With it comes all 32 formats that are currently supported in the iOS app, and the same customisation options (except custom app icons).
To recap all of those:
Title Case (AP, APA, CMOS, MLA)
Markdown Code Block
Markdown Ordered/Unordered List
Markdown to HTML
In fact the macOS version is 2.4.4, and the iOS version is sitting at just 2.4.3. The only differences being some improvements to the Emoji format, where some localisations could cause the format to not work at all (it now defaults to English if it doesn’t support the language). And also some macOS specific changes, which are mainly to remove parts of the app that won’t work such as Siri Shortcuts support, and also fine tuning the macOS experience.
There are things that I’m already planning on adding the Mac version, such as an Extension so you can format text from outside the app, similar to how the Action Extension works in IOS, and also other automation support such as URL schemes. However, I feel that it’s much more beneficial for people to have Text Case for Mac now, rather than waiting even longer to get it into peoples hands. Because just like the iOS app, I really like to adapt the app to users feedback, and I already have a few extra formats (such as small caps) that I plan on adding soon. I also want to see what I can do with the Touch Bar!
I feel like I post more updates to Text Case here than real blog posts. Oh well, this one I’m blaming Jason Snell. We exchanged a few tweets about Text Case, and he suggested a feature where Text Case could have a list of manually capitalised nouns that would be used when converting text. I immediately saw the benefit of this idea, and started mapping it out in my head.
In just over a day, the update has been developed, and worked its way through Apple’s review process.
It contains what I’m calling the “Custom Dictionary”, and it lets you store words capitalised in a specific way. So that whenever you use Title Case or Sentence Case, these capitalisations have the highest precedence. It’s perfect for brand and product names, and that’s also why I’ve included a few common nouns in the app to start off.
The words themselves are stored in a .json file, which you can find in the Text Case folder in iCloud Drive. This can be edited manually outside Text Case (I would recommend an app called Jayson), and the changes will then be picked up when Text Case is next used.
One more thing, I also added a new dark theme. Previously the dark option had pure black as a main colour, but this is a bit too dark for some people. I’ve renamed that theme to “Black”, and added an option that is a dark grey.
It’s time for another update to Text Case! This time it brings another 5 formats, all relating to Markdown.
There’s support for creating Blockquotes, which supports multiple paragraphs (which I personally wanted a lot), Code Blocks, and also ordered and unordered lists. You can also convert any Markdown to HTML!
All of these formats are, of course, available to use via the app, the Action Extension, and also in the Shortcuts app. And with these new additions, Text Case now has 32 different formats! Including four variants of Title Case.
There’s a new update to Text Case for me to tell everyone about!
It’s not exactly a huge update with tons of new features, but it’s one I think will make the use of Text Case much more efficient. I talked about the way Text Case is evolving recently here on the blog, but essentially the main new “feature” is the new Shortcuts action.
In Text Case 2.2, you’ll have just the one action in Shortcuts, and that will be able to have an input parameter for the text you wish to format, an option to select the specific format, and then it will have the formatted text as an output. Previously each format had its own action, which meant it was always a bit messy. And, of course, Shortcut actions didn’t have parameter support before, so it always relied upon the clipboard.
However, now you have access to one magical action that has all the functionality of Text Case. It can slot directly into any Shortcut, and then get out of your way.
I didn’t just stop there with the update. I also added a few extra new formats. You now have the option to remove all whitespace, or just trim the leading/whitespace with the new formats “Strip Whitespace” and “Trim Whitespace”. And there’s another fun one called “Shuffled” which will randomise the order of any text that is passed as an input.
Back in July of last year when I first released Text Case to the App Store, my idea behind it was for it to be a small utility app that you could use to format text into a few different formats. The main format was title case, and although it was a standalone app, I always thought of it being used primarily by selecting text and using the Action Extension to copy a formatted version of that text to the clipboard.
However, since that first release, there’s been 10 updates. Some of them were minor bug fixes, but most of them were adding new formats. In the current version that’s in the App Store, there are 24 different formats to use. Which is a pretty big number in my opinion. Especially as it was just meant to be a small utility app.
As Text Case as grown, the primary way people were using Text Case became through the Shortcuts app. Simply because it’s just easier to use it in that way. It can slot into your writing workflow, and you would never really need to open the app.
But as we all know, the original way that third-party apps could provide functionality to the Shortcuts app, was by “donating” different actions to the system. And then magically they would appear as selectable actions in the Shortcuts app, and that could either perform a task in the background, or it could launch your app directly into a specific part.
As Text Case is really just something that takes an input, does some fancy things to it, and then provides that result as an output, it was held back by the original limitations of how Shortcuts worked. The only way you would be able to use functionality from Text Case without launching the app was to copy text to the clipboard, have Text Case perform its changes on the clipboard, and then overwrite that with the newly formatted text. It only took a couple of extra steps, but it was nowhere near the ideal solution.
However, in iOS/iPadOS 13, there is a whole load of new advancements to how apps integrate with the Shortcuts app. The benefits at least from the perspective of Text Case is that you can make use of parameters. So within the format text action, you will be able to provide the source text as a parameter, there will be no specific need to make use of the clipboard. These actions can also return values as well, so your formatted text will be directly available to use as either a direct result or as an input into another action. It just turns the functionality of Text Case into customisable building blocks, that can be part of a bigger workflow.
That new functionality, that will be released very soon, is making me think about what Text Case is becoming. I can’t say that I see it as a standalone app anymore. Sure, it will always be an app. But that’s not really how it’s going to be used. Text Case is becoming a kind of “directory” of text formatting tools, which will directly integrate into different parts of the system.
It means that when I add more formats to Text Case, just like I am with the next update (which will add three new options), I don’t feel like I’m simply just making my app better. It feels like I’m providing the system with additional functionality. Whether it’s through an Action Extension that can be launched by sharing text, or within the Shortcuts app, Text Case is becoming more of a framework for using elsewhere, rather than something people would use directly.
And you know what? I’m completely fine with that. It’s really interesting to see how Text Case is changing, and how you can get all the functions of the app, without even remembering that you have it installed.
As you may have already seen on my Twitter, or in my journal entries, I’ve started to work on the second major version of Text Case, 2.0. The major changes will be to the user interface, so I want it to be slightly more colourful, fit more in what I see as the latest design language Apple has set out in the Shortcuts app, and also have the formats structured better.
The project started with me making a list of all the things that I will need to implement for it to be level with the functionality of the current version. Here’s that list:
Drag and Drop
Use Copied Text
Tap to Copy
Hold to Share
Siri Shortcuts Support
Add to Siri
Title Case Format
Custom App Icons
I started working on the most important section of the app, the formats list. Over the past few days I’ve been building up the style similar to the Shortcuts app, so instead of being simple white boxes that contain the formatted text, they’re more colourful and even have a slight gradient to add a bit of depth (I’m planning on experimenting with a small shadow as well).
So once the list was working, I added the core logic from the current version and made the formats work. I did adapt it slightly though, as it now groups similar formats together, which I think makes the app look a lot tidier. This change means that when I add the reordering feature, it will most likely me limited to reordering the groups rather than individual formats. You’ll still be able to hide any you don’t want to see though.
Then I added the input field. It’s also a bit cleaner, and fits with the new style. But it has essentially the same capabilities as before. I plan on investigating importing text from a file, and implementing drag and drop, but I think that’s supported automatically.
After I had the list displaying, input working, and the text being formatted, I worked on the interaction with the resulting formatted text. I’ve had a few bits of feedback in the past saying they would appreciate one-touch copying, and now I’ve added it! So you can simply tap any formatted text in the app, and you’ll get a nice alert at the bottom showing the exact text you’ve copied. Or alternatively, you can still tap and hold on formatted text to bring up the contextual actions, which are the same as before, copy and share.
The next step from here will be to start working on the settings section of the app, as that also allows me to test the rest of the app in different scenarios much easier. I’m already planning two changes to the settings in this new version. The first is changing the idea of an accent colour to a theme, as I want the format groups to control the colour. But I also appreciate that a light and dark theme is a minimum. The second change is custom app icons, they may be a basic selection, but the app no longer has a “main colour” so I’d like to give a few options.
It’s time for an update to Text Case! It contains four changes, and three of them were taken from user feedback! Which I really like, as it means I can tailor the app to how the app is actually being used, not an idea in my head.
So, here are the improvements:
A new format! Strip HTML will clear any HTML tags and any whitespace either side of the result.
You can now alter the order of the way formats appear in the app.
Pasting text via the keyboard shortcut (CMD + V) will now work even if the textfield is not selected, meaning you can get the formats much faster.
Any settings in the app are now synced between your devices.