As a software developer, I’ll always have to think about the user using my software. It does not matter if its an API for another system or if it is an user interface for a human. There can be system limits which do inhibits you from implementing a feature like you want, but sometimes its just overlooked. I hope that this is just overlooked.
What are Tags?
A small background on tags. A tag is a short text to mark an article like a hashtag. Then that article can be found with additional keywords or multiple articles can be linked together by that tag. So its a good feature, and should be used. I’ve done that as you can see in this picture. So how do i tag with Squarespace?
What is the problem?
In order to add or edit a tag you have to go to that post you and hit those “…” and then “SETTINGS”.
After that go to “Tags”.
Now we can see my already added tags, but for you it might be empty for now. You can type “Test Tag” and end that tag with a “,” (comma). Hitting that “,” is important, so that Squarespace can group those strings together as one. We do not want “TestTag” because that is something no one will search for.
But now comes the thing which is not that optimal. For my YouTube Videos i do create a list of hashtags in the description like “#tag1, #tag2, #tag3”. I thought it would be easy, just remove that “#” with a find&replace and then copy that into that tag field, but no that won’t work… Squarespace will try to make that one tag instead of three.
So if we copy “tag1, tag2, tag3”, we get that as a tag instead of “tag1”, “tag2”, “tag3”. Hopefully it is just overlooked, but i can work with that for now, because i have a trick. And I’ll share that with you 😉
AutoHotkey for the win!
There is a cool program called AutoHotkey. Its a tool that let’s you create a scripts which will do what we want. You can do many things with AutoHotkey or AHK. Like using hot-string, so if you type “kr,” it could automatically transform that to “Kind Regards,” or whatever you want.
We want to use this tool to:
- Take that copied string
- Modify it to remove those “#” hashtags
- Convert split all those Snake Case strings “TestTag” to “Test Tag”
- Write it all character by character so that Squarespace does think that we are the ones typing 😉
The code that works like magic
; <- this is a sign for comments #NoEnv ; Recommended for performance and compatibility with future AutoHotkey releases. ; #Warn ; Enable warnings to assist with detecting common errors. SendMode Input ; Recommended for new scripts due to its superior speed and reliability. SetWorkingDir %A_ScriptDir% ; Ensures a consistent starting directory. ; this is our keyboard combination. ^ = Ctrland + = Shift and v = v :D ^+v:: ; this will be a name for storing the copied string clip := clipboard ; now we want to remove all "#" StringReplace,clip,clip,#,,All ; now we add spaces tags := RegExReplace(clip, "([A-Z])", " $1") ; and finally i still want to have my own Name without spaces, so i'l replace the wrong one StringReplace, tags, tags, Casual Ben, CasualBen, All ; last but not least we will use "sendraw" this will send all string as if we typed them sendraw, % tags ; necessary to show that this command is finished return
Copy this code into a new file and change the file extension to “.ahk”. Now you can start the program. There will be a little green icon in your task menu with an “H”. That shows that you program is running. Now we can test.
This is one of my used tag lists:
#LetsPlay, #MonsterTrain, #Gameplay, #CasualBen, #Hellhorned, #Awoken, #TopFloor, #HornedWarrior, #HornbreakerPrince, #ThornedHollow, #Multistrike, #Quick, #Fragile, #Largestone, #Ascend, #Overstacking, #SeraphTheChaste, #TalosTheArchitect, #ArchusDarknessIncarnate
We copy that with Ctrl+C and then paste with Ctrl+Shift+V instead of Ctrl+V and we get!
Lets Play, Monster Train, Gameplay, CasualBen, Hellhorned, Awoken, Top Floor, Horned Warrior, Hornbreaker Prince, Thorned Hollow, Multistrike, Quick, Fragile, Largestone, Ascend, Overstacking, Seraph The Chaste, Talos The Architect, Archus Darkness Incarnate
Just add a last “,” and we’re good to go. Yeah! 😀 Small hack, huge time saver!