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.
Another update to Text Case has just hit the store!
Just a small one this time though, to tie up a few things, before anything big can be planned or worked on. In fact it can be boiled down to three things:
A new text format, this time it’s KebabCase. And as usual it was requested, so I added it! There’s no chance that I can come up with every format possible, so if you want one added then please just let me know.
About section added (website links, App Store link, app version…)
And I’ve fixed a bug in the Action Extension. As the UI used to inherit some of the styles from the encompassing app, but it wouldn’t always look correct. I’ve fixed this by keeping it matching with the rest of the app, along with the chosen accent colour.
It’s not an extravagant update, but then again, they can’t all be.
Well in this update, Text Case will now be accessible via Siri! And you will also get to set a different accent colour in the app.
There’s not that much UI in Text Case, as it’s been intentionally kept rather simple. However there are now 6 colours, that will be used for the navigation bar, switches, and buttons:
With iOS 12 now being released, Siri has gotten a whole lot more powerful, and you’ll expect quite a lot of apps to try and make use of it. Which meant I just had to add support to Text Case.
There’s only one function in Text Case, and that is to convert text into various different formats. And that means it’s also really easy to use! The formats will be applied to any text that you have copied, and the formatted text will replace it on the clipboard, ready for you to paste anywhere.
From Settings, you will find the “Add to Siri” option at the bottom. If you tap this, you will then get to select a format, and then record a custom phrase.
That’s not all the ways you can use Text Case with Siri. Because as you use Text Case, iOS will learn what formats you are using, and begin to suggest them to you.
These suggestions will also appear in the new Siri Shortcuts app, where you will be able to automate them with everything else!