Quote:
Originally Posted by enuddleyarbl
I found a thread of yours on the Sigil forum from about 10 years ago where you asked about converting these clumps of ALL CAP words to sentence case. Have you found anything that works well in Calibre?
|
I wrote about this back in:
and more recently in:
There were a few other discussions in there:
But honestly, proper Title Casing is a very hard problem, and all tools I've tested have flaws. "Edge cases" wrong like:
- Names
- Acronyms
- Accents
- Roman Numerals
- Letters after punctuation
(For example, I
do not recommend CapitalizeMyTitle anymore. Whatever algorithm they used years ago has progressively gotten worse, I believe ever since they got purchased by that rotten Grammarly.)
There are a few python libraries, like:
but this, too, has serious flaws.
Calibre does a decent job with ALL CAPS -> Titlecase... definitely one of the better ones.
What you would need is a custom TitleCasing plugin where you can check options (like what to do after hyphens).
- - -
Side Note: Personally, what I do when having to work on hundreds/thousands of chapter titles, is:
- Export a giant list of all titles.
- For example, ripping out every <h2>ALL CAPS TITLE</h2>
- Run entire list through a capitalize tool.
- Run original list through secondary capitalize tool.
- Compare both lists together.
- Skim down list to make manual corrections.
- Words like "of", "and", ...
Then I could easily map:
Code:
<h2>ALL CAPS TITLE</h2>
to the equivalent line in:
Code:
<h2>All Caps Title</h2>
and do a mass Search/Replace.
This means I could also have an "All Caps" title in the TOC while still keeping the "ALL CAPS" visually in the book itself (just like I described in
Post #15).
Quote:
Originally Posted by Turtle91
Not completely automatic...but 130 chapters shouldn't take more than a few minutes.
|
Heh. Yeah, I still do a lot of manual stuff.
To this date, I still haven't found a satisfactory tool for me.
One of the best capitalizers I've found is in
TeXStudio. It has an
Edit > Text Operations > To Titlecase (smart) which is quite good.
So sometimes, I even copy/paste text into there, then run it, then paste back where needed.