BUG: The Title Case Function Does Not Lowercase Letters When It Should.
I have my "Lower case words for title case" set to:
a;an;and;as;at;but;by;de;etc;for;in;nor;of;on;or;per;so;the;to;v;via;von;vs;yet
But the Title case function does not lowercase letters when it should.
For example...
This: these are the files that try men's souls.txt
Becomes: These Are the Files That Try Men's Souls.txt
(Correct)
But this: THESE ARE THE SOLES THAT TRY MEN'S FEET.txt
Is unchanged!
It needs to be: These Are the Soles That Try Men's Feet.txt
In 99.9% of cases, lower-casing where needed is both the expected and desired outcome.
In the hyper-rare cases where the user has some FUBAR acronym that they want to keep uppercase, they can handle that in a separate step.
a;an;and;as;at;but;by;de;etc;for;in;nor;of;on;or;per;so;the;to;v;via;von;vs;yet
But the Title case function does not lowercase letters when it should.
For example...
This: these are the files that try men's souls.txt
Becomes: These Are the Files That Try Men's Souls.txt
(Correct)
But this: THESE ARE THE SOLES THAT TRY MEN'S FEET.txt
Is unchanged!
It needs to be: These Are the Soles That Try Men's Feet.txt
In 99.9% of cases, lower-casing where needed is both the expected and desired outcome.
In the hyper-rare cases where the user has some FUBAR acronym that they want to keep uppercase, they can handle that in a separate step.
Reply to #1:
It will not change any characters to lower case, only upper case the first letters of every word that are not in the ignore list. You might need to add a second new case method that lower cases the whole filename and set it as the first method in the sequence.
It will not change any characters to lower case, only upper case the first letters of every word that are not in the ignore list. You might need to add a second new case method that lower cases the whole filename and set it as the first method in the sequence.
Reply to #2:
That is not how title case (should) work(s)!
Reference https://titlecapitalize.com/ or ANY style manual.
And yes, I've already kludged up some workarounds. That's not the point. The point is to stop the bleeding, not tell the user to just buy more bandaids. ;)
Note also that every online tile-case generator that I've seen works correctly, and as expected. As do programming libraries that have that function. Only Aren does not work this way.
That is not how title case (should) work(s)!
Reference https://titlecapitalize.com/ or ANY style manual.
And yes, I've already kludged up some workarounds. That's not the point. The point is to stop the bleeding, not tell the user to just buy more bandaids. ;)
Note also that every online tile-case generator that I've seen works correctly, and as expected. As do programming libraries that have that function. Only Aren does not work this way.
Reply to #3:
To allow for maximum flexibility, this is how it has been chosen to be implemented. This is not a bug - it's by design.
To allow for maximum flexibility, this is how it has been chosen to be implemented. This is not a bug - it's by design.
Reply to #4:
Note that this is the only way to deal with all-caps acronyms and edge cases where, for instance, a word needs to be all caps or partially capped for emPHAsis. :) Well, short of another dictionary of acronyms and capped words.
Best,
DF
Note that this is the only way to deal with all-caps acronyms and edge cases where, for instance, a word needs to be all caps or partially capped for emPHAsis. :) Well, short of another dictionary of acronyms and capped words.
Best,
DF
Reply to #5:
No it is not the only way!
In fact Aren is the first and only time, in over 50 years, that I've seen a tool or guideline that handles title-case like this.
Hell, we were doing it correctly in FORTRAN and COBOL (and ever since) -- including properly handling acronyms like FBI, NATO, IBM, etc.
~~~~
As for extreme edge cases like JavaScript, emPHAsis, etc. ...
Those are rare enough to be perfect candidates for List-Replace or manual override.
~~~
Apropos of nothing:
https://fluent-eng.com/top-40-used-acronyms-in-english-and-w hat-they-mean/
Note that many of those make scant sense as part of filenames (excluding extensions).
Regards,
Randy
No it is not the only way!
In fact Aren is the first and only time, in over 50 years, that I've seen a tool or guideline that handles title-case like this.
Hell, we were doing it correctly in FORTRAN and COBOL (and ever since) -- including properly handling acronyms like FBI, NATO, IBM, etc.
~~~~
As for extreme edge cases like JavaScript, emPHAsis, etc. ...
Those are rare enough to be perfect candidates for List-Replace or manual override.
~~~
Apropos of nothing:
https://fluent-eng.com/top-40-used-acronyms-in-english-and-w hat-they-mean/
Note that many of those make scant sense as part of filenames (excluding extensions).
Regards,
Randy
Reply to #6:
So, that is not true at all. Just searched the web for a title case converter tool, and the first one I found did not make any characters lower case by default. Also, the spec I followed did not specify to lower case anything, only to capitalize. There are many specs and style guides and Advanced Renamer doesn't allow for multiple implementations. It also only works in English as standard.
If the software were to lower case on its own, it would make a word like "iPhone" into "Iphone". Advanced Renamer will most likely make "iPhone" into "IPhone", which is not perfect, but better. I have seen implementations that will make "iPhone" into "I Phone" when using title case.
Anyway, title case is a little odd and will almost always have little quirks. Comparing a 50 years old implementation with a modern one will almost always reveal differences when exploring edge cases.
I also don't know how much title case is used in Advanced Renamer. It wasn't added until version 4.09 - 24 years after the first release. I don't remember if someone asked for it or if it was just me getting the idea to include it some afternoon.
So, that is not true at all. Just searched the web for a title case converter tool, and the first one I found did not make any characters lower case by default. Also, the spec I followed did not specify to lower case anything, only to capitalize. There are many specs and style guides and Advanced Renamer doesn't allow for multiple implementations. It also only works in English as standard.
If the software were to lower case on its own, it would make a word like "iPhone" into "Iphone". Advanced Renamer will most likely make "iPhone" into "IPhone", which is not perfect, but better. I have seen implementations that will make "iPhone" into "I Phone" when using title case.
Anyway, title case is a little odd and will almost always have little quirks. Comparing a 50 years old implementation with a modern one will almost always reveal differences when exploring edge cases.
I also don't know how much title case is used in Advanced Renamer. It wasn't added until version 4.09 - 24 years after the first release. I don't remember if someone asked for it or if it was just me getting the idea to include it some afternoon.
Reply to #7:
You had the "Keep Words in All Caps" option checked. OPTION being the key word and not at all standard.
Anyway, it appears that this bug will not be fixed, and I may be the only one who cares, so far.
This just increases the need for method groups and method libraries that we can "include" in a batch so that we do not have to edit dozens of saved batches whenever a one of our core functions changes.
You had the "Keep Words in All Caps" option checked. OPTION being the key word and not at all standard.
Anyway, it appears that this bug will not be fixed, and I may be the only one who cares, so far.
This just increases the need for method groups and method libraries that we can "include" in a batch so that we do not have to edit dozens of saved batches whenever a one of our core functions changes.
Reply to #8:
So, THIS is what happens when we go too long without an interesting question from the user base!
BTW, R, I'm in complete agreement with your last point about includes.
Truthfully, I could personally care less about the title case thing. I've written several in js to do what I want them to do. If we had include capability I'd have only written it once... :)
LOLs,
DF
So, THIS is what happens when we go too long without an interesting question from the user base!
BTW, R, I'm in complete agreement with your last point about includes.
Truthfully, I could personally care less about the title case thing. I've written several in js to do what I want them to do. If we had include capability I'd have only written it once... :)
LOLs,
DF
Reply to #9:
>> So, THIS is what happens when we go too long without an interesting question from the user base!
To be fair, one of my pic capturing tools got replaced, causing new naming problems. That's when I noticed the title-case problem.
But, yes, things like an include/library system have been asked for several times, IIRC. And would help with batch maintenance so much. :)
Regards,
Randy
>> So, THIS is what happens when we go too long without an interesting question from the user base!
To be fair, one of my pic capturing tools got replaced, causing new naming problems. That's when I noticed the title-case problem.
But, yes, things like an include/library system have been asked for several times, IIRC. And would help with batch maintenance so much. :)
Regards,
Randy
Reply to #8:
I really don't want to get into a long argument with you (that may be too late). When I go to the website the "Keep word in all caps" is set by default. I read that as being the standard implementation for that specific tool.
I could probably add more options to the New Case method so that you don't need a second New Case method, but I don't know if that will make you happy.
Again, it is not a bug. It is by design to give the users as much flexibility as possible and to be consistent with the other case options. When using "Upper case" "First letter of every word" it will not change anything to lower case. The same with the other options.
I really don't want to get into a long argument with you (that may be too late). When I go to the website the "Keep word in all caps" is set by default. I read that as being the standard implementation for that specific tool.
I could probably add more options to the New Case method so that you don't need a second New Case method, but I don't know if that will make you happy.
Again, it is not a bug. It is by design to give the users as much flexibility as possible and to be consistent with the other case options. When using "Upper case" "First letter of every word" it will not change anything to lower case. The same with the other options.
Reply to #11:
>> I could probably add more options to the New Case method so that you don't need a second New Case method, but I don't know if that will make you happy.
That would resolve the issue enough to make me happy.
>> I could probably add more options to the New Case method so that you don't need a second New Case method, but I don't know if that will make you happy.
That would resolve the issue enough to make me happy.
In my humble opinion, it's not a bug; it depends on your approach to the problem, or rather, your way of thinking.
If the first letter is already in uppercase, it's only natural that the option won't make any changes, since the first letter is already in uppercase. This has also been the case in all previous versions of ARen since the days of WinXP.
I'm not a programmer, but I think the ARen interface is already full of options that few users find useful.
If the first letter is already in uppercase, it's only natural that the option won't make any changes, since the first letter is already in uppercase. This has also been the case in all previous versions of ARen since the days of WinXP.
I'm not a programmer, but I think the ARen interface is already full of options that few users find useful.