[
https://issues.apache.org/jira/browse/FREEMARKER-97?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16519775#comment-16519775
]
T X commented on FREEMARKER-97:
-------------------------------
Note that Gouch's implementation doesn't capture Chicago Manual of Style (CMS)
completely. In CMS, all prepositions are made lowercase, including the longer
words, not merely the short set listed in the JavaScript code:
[https://en.wikipedia.org/wiki/List_of_English_prepositions]
> Header capitalization using standard styles
> -------------------------------------------
>
> Key: FREEMARKER-97
> URL: https://issues.apache.org/jira/browse/FREEMARKER-97
> Project: Apache Freemarker
> Issue Type: Wish
> Components: engine
> Affects Versions: 2.3.28
> Reporter: T X
> Priority: Minor
>
> FreeMarker offers a couple of simple algorithms for changing the case of
> titles:
> *
> [https://freemarker.apache.org/docs/ref_builtins_string.html#ref_builtin_cap_firs|https://freemarker.apache.org/docs/ref_builtins_string.html#ref_builtin_cap_first]
> *
> [https://freemarker.apache.org/docs/ref_builtins_string.html#ref_builtin_capitalizet|https://freemarker.apache.org/docs/ref_builtins_string.html#ref_builtin_cap_first]
> Neither of these capitalize the text in ways that adhere to various standard
> styles:
> * [Chicago Manual of
> Style|https://en.wikipedia.org/wiki/The_Chicago_Manual_of_Style]
> * [Associated Press|https://en.wikipedia.org/wiki/AP_Stylebook]
> * [MLA Style Manual|https://en.wikipedia.org/wiki/MLA_Style_Manual]
> * [APA Style|https://en.wikipedia.org/wiki/APA_style]
> Consider the following texts:
> * On iPhone the Transcript Extends Outside of Screen Frame
> * PEAR And GNA Report Performance
> * BCMailPlusFTPClient Sends Document without Document ID
> * JWebUnit: Non-PEN Orders main.xhtml Meta Refresh Tag Issue
> These are correct as written and must not be adjusted by an algorithm that
> changes the text title. There are a couple of web sites that produce the
> expected titles (note that the second site capitalizes the word "without,"
> which implies the algorithm does not use Chicago conventions):
> * [https://titlecaseconverter.com/]
> * [http://individed.com/code/to-title-case/]
> There are a variety of implementations that perform such a feat:
> *
> [JavaScript|https://github.com/gouch/to-title-case/blob/master/to-title-case.js]
> * [Perl|https://gist.github.com/gruber/9f9e8650d68b13ce4d78]
> * [PHP|https://gist.github.com/HipsterJazzbo/2532c93a18db7451b0cec529c95b53c4]
> These implementations do not require a whitelist. (So "iPhone" and
> "ClassName" will remain as given.) Apache Commons' {{WordUtils}} class does
> not implement Chicago Style, and I suspect it is also a fairly simple
> algorithm.
> Since {{?capitalize}} and {{?cap_first}} are taken, I propose {{?title_case}}
> with an optional parameter (default is Chicago):
> * chicago
> * ap
> * apa
> * mla
>
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)