Title Case for French
What is Title Case?
Basically it is using "Capital and Lowercase Letters in Titles". This means only using capital letters for the principal words. Articles, conjunctions, and prepositions do not get capital letters unless they start the title. For example:
- The Last of the Mohicans
In English
There are quite a few nice libraries to Title Case a text in English. This implementation by John Resig is one of them and works well. In English, the first word in the title and all subsequent "important" words (everything except articles, conjunctions, and prepositions) are capitalized.
In French
The capitalization of titles in French and English is quite a bit different. The rules are more complicated in French, so complicated, in fact, that even Le Petit Robert (the quintessential French dictionary) and Le Bon Usage (the French grammar bible) can't seem to agree on how to capitalize titles.
It is clear that either there is no standard system or that the standard is not well known. As a French person I tried to apply the rules that I have most commonly seen.
Using the package
Installation
npm install titlecase-french
Basic usage
You just need to require the package and call the convert('mon texte de démonstration')
function.
var titleCaseFrench = ; var myText = titleCaseFrench;console; // => Mon Texte de Démonstration
API
addLowerCaseWords
Description
If you do not want specific words to be capitalized then include them to the list with the function.
Signature
addLowerCaseWords(words: String)
Where words
is a list of words separated by Commas.
Example
In the first example the 'démonstration' word is added to the list and won't be capitalized. In the second example both words 'démonstration' and 'texte' won't be capitalized.
var titleCaseFrench = ;titleCaseFrench; var myText = titleCaseFrench;console; // => Mon Texte de démonstration titleCaseFrench; var myText = titleCaseFrench;console; // => Mon texte de démonstration
removeLowerCaseWords
Description
If you want to remove specific words from the default list (see words in the rules below) then call this function with your list of words.
Signature
removeLowerCaseWords(words: String)
Where words
is a list of words separated by Commas.
Example
In this example the 'de' word should have been in lowercase because it is in the default list of words that are not capitalized. We are going to remove it from the list to get it capitalized.
var titleCaseFrench = ;titleCaseFrench; var myText = titleCaseFrench;console; // => Mon Texte De Démonstration
keepCapitalizedSpecials
Description
Sometimes you do not want to replace all the capitalized special letters. You can avoid replacement by declaring which letter you want to keep.
Signature
keepCapitalizedSpecials(letters: String)
Where letters
is a list of uppercase special letters separated by Commas.
Example
var titleCaseFrench = ;titleCaseFrench; var myText = titleCaseFrench;console; // => Ça Va!
Tests
npm test
The rules
There are 5 main rules:
- A title always starts with a word in uppercase
- A specific list of words are in lowercase
- After a quote ' words can be in lowercase or uppercase depending of the word before the quote
- Acronyms are in uppercase
- Special uppercase letters (with accent for example) are replaced with their simple version
Some examples (see below for a bigger list).
/*Le Dernier des MohicansDu Vent dans les BranchesJunior l'AventurierCa m'intéresseAvec S.A.M.Cet Eté à la Plage*/
List of lowercase words
-
Definite articles:
- le, la, les
-
Indefinite articles:
- un, une, des
-
Partitive articles:
- du, de, des
-
Contracted articles:
- au, aux, du, des
-
Demonstrative adjectives:
- ce, cet, cette, ces
-
Exclamative adjectives:
- quel, quels, quelle, quelles
-
Possessive adjectives:
- mon, ton, son, notre, votre, leur, ma, ta, sa, mes, tes, ses, nos, vos, leurs
-
Coordinating conjunctions:
- mais, ou, et, donc, or, ni, car, voire
-
Subordinating conjunctions:
- que, qu, quand, comme, si, lorsque, lorsqu, puisque, puisqu, quoique, quoiqu
-
Prepositions:
- à, chez, dans, entre, jusque, jusqu, hors, par, pour, sans, vers, sur, pas, parmi, avec, sous, en
-
Personal pronouns:
- je, tu, il, elle, on, nous, vous, ils, elles, me, te, se, y
-
Relative pronouns:
- qui, que, quoi, dont, où
-
Other words:
- ne
After a quote
-
Words after a quote are in lowercase if the word before the quote is:
- c', j', m', n', s', t'
-
Words after a quote are in uppercase if the word before the quote is:
- d', l'
Special uppercase letters
- All the following special uppercase letters are replaced:
- À, Â, Ä, É, È, Ê, Ë, Ç, Î, Ï, Ô, Ö, Û, Ü, Ù
Samples of converted titles
/*Le Triangle RougeLoki, le Détective MythiqueLa SecteLeon la CameLittlest Petshop les AventuresLes BanquiersJunior l'AventurierL'AccordeurJe Suis un VampireUn MessagerIl Etait une Fois...Une Histoire de FranceLe Haut des ArbresDes MohicansDanse du TempsDu Côté de chez PojeLe Masque de FerDe Beaux MomentsLe Marteau des SorcièresDes BêtesRentre au PaysAu Pays des MonstresRentrez aux PaysAux Pays des MonstresHistoires du PasséDu Vent dans les BranchesAvant des LustresDes RépétitionsRegarde ce CheminCe Chemin Est LongA la Plage cet EtéCet Eté à la PlageIls Font cette ListeCette ListeRegarde-Moi ces HommesCes Longs TrajetsDis Moi quel NomQuel Beau PaysageEn quel PaysQuels Sapins pour NoëlEn quelle SaisonQuelle VilleElles Font quelles RecettesQuelles CouleursSauf mon PèreMon AncètreVis ton RêveTon Espoir ne Meurt pasLouna et son FilsSon Coeur RésisteraA notre BourseNotre VieAvec votre AccordVotre AvisC'est leur ChoixLeur StyleTout Est de ma FauteMa MèreRange ta ChambreTa LumièreUn Père et sa FilleSa DulcinéPourtant mes Choix Etaient BonsMes DevoirsPrends tes ResponsabilitésTes Dessins Sont BrillantsLui et ses FrèresSes Cousins et CousinesCe Sont nos FemmesNos ClientsA vos MarquesVos IdéesJamais sans leurs BicyclettesLeurs Régions Ont du TalentsIl Est Studieux mais TurbulentMais Comment Font-Ils?Ici ou LàOu BienEntre Ciel et TerreBoule et BillJe Pense donc je SuisDonc nous PartonsLe Temps Est Chaud or il A FroidOr il TombaJe ne Bois, ni ne FumeNi Eux ni MoiPart car il Est TempsCar il PartaitDeux voire TroisVoire Même TroisIl Faut que je ParteQue FaireA Moins qu'elle ParteQu'en Dise les GensElle Rêve quand elle DorsQuand Viendra le TempsElle Est Belle comme le JourComme si nous PouvionsNous Sommes Allé si LoinSi LoinElle Partit lorsque tu ArrivasLorsque tu ParsIl Partit lorsqu'elle ArrivaLorsqu'elle ArrivaIl Est Là puisque je l'Ai VuPuisque tu ParsIls Viennent puisqu'elle PartPuisqu'elle PartIl Ira quoique tu FassesQuoique nous FassionsIl l'Aime quoiqu'elle FasseQuoiqu'elle FasseMotards à JamaisA Toute AllureViens chez nousChez nousLe Pont dans la VaseDans mes VeinesLe Jour entre les LattesEntre Lui et elleDepuis Là jusque dans la MaisonJusque Par-Dessus la TêteRévêr jusqu'au JourJusqu'au LendemainSortez hors de chez MoiHors la LoiDeçue par la ViePar Dessus les NuagesTout pour le ToutPour la VieVivre sans LimiteSans Foi ni LoiLe Regard vers le LargeVers l'Infini et Au-DelàArgent sur ProvidenceSur LuiIl ne Faut pasPas ToiL'Intru parmi EuxParmi nousLui avec ses AmisAvec EuxL'Eau sous la GlaceSous la NeigeEn RouteEscales en Terres InconnuesPourquoi je PleureJe Suis MoiToi au Moins, tu Es Mort AvantTu Mourras Moins BêteAprès il Est PartiIl Etait SeulEn Chemin elle Rencontre...Elle et LuiAprès on Ira au BoisOn nous Dit RienLe Monde Est à nousNous RentronsSi vous AcceptezVous et EuxAprès ils Sont PartisIls Etaient DixComme ellesElles Etaient DixLaisse Moi me Prendre en ChargeMe PerdreJe te RejoindraiTe Dira pasIl Faut se Connaître Soi-MêmeSe PerdreIl y AvaitY A pasCeux qui Ont des AilesQui Est La?Pendant que le Roi de Prusse...Que sa Volonté Soit FaiteA quoi BonQuoi FaireCelui dont on ParleDont nous Aimons la CompagnieLe Pays où il Est NéOù Aller?Il ne Viendra pasNe Fais pas CaCa, c'est ParisC'est TristeLe Marquis d'AnaonD'ArtagnanDites-Moi que j'existeJ'ai Tué FrançoisMoi l'HommeL'EmmerdeurCa m'intéresseAvoue tu m'aimesJe n'ai pas RaisonN'ai pas PeurElle s'est Fait MalS'affoler pour RienSimon's CatSi tu Freines t'es un LâcheT'abuses IkkoEn Extrême-OrientExtrême-OrientComment s'appelle-t-il?Ce Mot Existe-t-il?Avec S.A.M.S.A.M.Motards à JamaisA Toute AllureLe Bruit de l'EchoEcho des SavanesPost Ere ModerneEre ModerneCa m'intéresseTu Aimes Ca*/