ja fe mr al ma jn jl au se oc no de
...are the two-letter month abbreviations in Canada, for bilingual use.
JA | January | janvier |
FE | February | février |
MR | March | mars |
AL | April | avril |
MA | May | mai |
JN | June | juin |
JL | July | juillet |
AU | August | août |
SE | September | septembre |
OC | October | octobre |
NO | November | novembre |
DE | December | décembre |
(Very important: this web page is not an official specification. This is just what I've observed on packages and then checked against official specifications.)
I have seen these abbreviations where there's room to print only a few characters, like:
2013 MR 24
...when there's no room to write it out in full, like:
Meilleur avant: le 24 mars 2013
Best before: March 24, 2013
The reason that the abbreviations are a little odd at points is that they're based on a compromise between the full English month names and the full French month names:
JA FE MR JAnuary FEebruary MaRch JAnvier FEvrier MaRs AL MA JN ApriL MAy JuNe AvriL MAi JuiN JL AU SE JuLy AUgust SEptember JuiLlet AoUt SEptembre OC NO DE OCtober NOvember DEcember OCtobre NOvembre DEcembre
Remember: "MA" is May/mai, and "MR" is March/mars.
But if you forget when you see "MA" or "MR" on a package, here's a mnemonic:
Say the letters "M A"— "emm may"— it sounds like "a May".
Say the letters "M R"— "emm arr"— it sounds like "a Mar",
missing only the end of the syllable, "...ch".
There are principles behind this:
Incidentally, from these, you get that the only possible abbreviation for May/mai is "MA", because the "m" and the "a" are the only letters they have in common. So, May/mai has to be "MA". And because "MA" is taken by May/mai, then March/mars can't use it, so, March/mars must be something else. The only possible abbreviation, once "MA" is already taken, is "MR".
To get dates with those abbreviations from Unix, you can do this:
date [any other options] '+%F' | \
perl -pe '@m= qw(x ja fe mr al ma jn jl au se oc no de); s/-(\d\d)-/ \U$m[$1] /'
That will produce output like "2013 JN 18".
If you want to drop the century and just get "13 JN 18", use this:
date [any other options] '+%y-%m-%d' | \
perl -pe '@m= qw(x ja fe mr al ma jn jl au se oc no de); s/-(\d\d)-/ \U$m[$1] /'
Note that in theory, the official format for dates in Canada is the completely numeric format yyyy-mm-dd, for example, "2013-04-15". To get that from Unix, it's simply:
date [any other options] '+%F'
Sources:
Official Canadian government standards documents that actually state these abbreviations aren't exactly easy to find— but here they are!
I hope this has helped!
— sburke@cpan.org, 2014-10-28