Tags - Lower Case Only?

I absolutely agree with this. In the ‘real world’ different letters in cases and combinations of these actually mean something, they’re not just letters and the case doesn’t matter. Some items are specific abbreviations (such as MB vs. Mb mentioned), others are just perhaps trade names, company names, or place names where case matters. An ‘apple’ (fruit) is very different from ‘Apple’ (the tech company). ‘Hope’ (a village in Derbyshire, England) is different from ‘hope’ (an optimistic state of mind). I kind of think tags should follow the same rules as languages and allow that flexibility to use whatever case you want.

I appreciate that many people have requested this feature, but given that many other pieces of software also have similar limitations to what you can put in tag names (including not allowing mixed case), I can understand why this would be given low priority to address.

Laurent has stated (earlier in this thread) that he doesn’t think it is as simple to change as one might think, but also that he is open to someone else implementing it.

Tags have to be normalised somehow or else there has to be some tooling to allow the user to rename tags, merge them with others, etc. I'd be keen to support lowercase, uppercase but last I checked it was quite complicated to do so. Or if someone thinks it's an easy problem to solve the source code is there to be fixed :slight_smile:

So not having this feature for years means that no-one with the technical knowledge to change this has cared enough to contribute this change.

You don't need to rename. Say you wanted to rename tag1 to tag2 but tag2 already exists. Just select the notes with the tag1, tag them all with tag2 and delete tag1.

Ok, so I had a thorough read through this thread and it seemed that although some people had done analysis for implementing this feature, no-one ever went through with testing their theory and actually creating a PR for this. There were some additional considerations to be made, but overall I’ve managed to implement this is a reasonably straightforward manner, providing it’s ok to not completely have case insensitivity for unicode characters which are outside of the ASCII range.

I have created a PR for this change here Desktop, Mobile: Add support for mixed case tags by mrjo118 · Pull Request #12931 · laurent22/joplin · GitHub

So lets see if this solution is considered ok to be accepted into the codebase

Thanks for this, hopefully it’s good to go! I’m not a technical coding person, so pleased you’ve pushed this as a PR as I wouldn’t have known how to do that. Hopefully this will get some attention.

As others have mentioned, it would be ideal if this is a switchable option (so those who don’t like case sensitivity can keep it off), as Joplin does seem to value customisation and flexibility, but we’ll see what’s doable.

From what I can tell the PR appears to have passed its tests. Also Laurent has tagged the PR as "3.5" so I guess that it is being considered for merging into v3.5.x.

I know that v3.5.x is not due until early next year and I know that occasionally "sh**t happens", but after nearly six years I cannot help it and I am starting to get TEARS OF JOY!

happy_tears

@mrjo118 thankyou for attempting this. If it gets into Joplin you will be my "coding hero of the decade". If it doesn't you will still be my "coding hero of the decade" just for trying.

EDIT:

Forgot to add...

As someone else has resurrected this post I thought I would take the opportunity to say that although it is five years and nine months later I am still not "used to it" :grinning:

I think that would add some unnecessary complexity (and user confusion) to be honest, and would not give consistent behaviour if you used mix case tags and then decided to turn it off.

What I can say though is that the tag association screens on both desktop and mobile do not use auto capitalisation currently, so an existing user is unlikely to accidentally include some capital letters in a new tag they create, unless the text is copy and pasted from somewhere. Even so, you can just rename the tag straight after to replace any uppercase characters if you did not want them. Also the tag matching is fully case insensitive when adding tags from the ui, so you won’t be expected to match the case when searching tags

The PR has now been accepted and will be released in Joplin 3.5

Joplin 3.5.4 Pre-release

And so this epic tale draws to a close and the thread is solved........ or is it?

The full release is not due until the end of December. Will our mixed case hero survive? Will the Riddler (Laurent) revert the PR? Tune in next week; same Bat-time, same Bat-channel!

(Apologies for that - emotions briefly got a bit too much for me)