From: Jean Forget <J2N-FORGET@orange.fr>
To: 19174@debbugs.gnu.org
Subject: bug#19174: Wishlist/suggestion for emacs/lisp/calendar/cal-french.el
Date: Mon, 24 Nov 2014 22:01:13 +0100 [thread overview]
Message-ID: <1416862873.3063.5.camel@jf-xubuntu> (raw)
The head comments of lisp/calendar/cal-french.el give your
name and address as the maintainer of this file.
So, here is a wish item for lisp/calendar/cal-french.el.
It is implemented in my github repo :
https://github.com/jforget/emacs-lisp-cal-french
I used cal-french.el from the master branch of
https://github.com/emacs-mirror/emacs
in late October 2014.
There are 4 steps for the wish item, tagged with v1, v2, v3 and v4.
Here is a copy of the README file, showing the new features:
**** beginning of copy-paste
Changes
=======
Day Name
--------
Instead of just displaying "18 Brumaire an 8 de la Révolution",
cal-french.el now displays "Octidi 18 Brumaire an 8 de la Révolution".
Available with commit e4365c5, tag v1.
Additional Days
---------------
Displaying "Jour du Travail de l'année 222 de la Révolution" is not
very convenient, you cannot guess whether this day is before or after
"Jour du Génie de l'année 222 de la Révolution". This changes gives a
number in the 1-to-5 range (or 1-to-6 on leap years). Additionally, I
found in a book from the French Revolution era that these days bear
the same names as the other: "Primidi", "Duodi" etc. So cal-french.el
will display:
"Duodi 2 jour complémentaire an 222 de la Révolution, Jour du Génie"
"Tridi 3 jour complémentaire an 222 de la Révolution, Jour du
Travail"
See http://datetime.mongueurs.net/Histoire/s-c/01-g.en.html.
In addition, when using "g f", you can now reply with the pseudo-month
"jour complémentaire", and then a number in the 1-to-5 or 1-to-6
range.
Available with commit b6dc17c, tag v2.
Feasts
------
Actually, not only the 5 or 6 end-of-year additional days, but also
the 360 normal days had a feast. So cal-french.el will display the
feast for all days, for example:
"Primidi 1 Vendémiaire an 223 de la Révolution, Jour du Raisin"
Of course, all feasts are available when answering to "g f".
A big disadvantage is that the size or F<cal-french.el> inflates from
about 10 K to about 30 K.
Available with commit 6060f52, tag v3.
Feasts (second take)
--------------------
There are two problems with the functionality above, when using the
calendar-french-goto-date function, triggered by "g f".
First, if the user enters a normal (non-leap) year and then types "j"
and auto-complete twice (tabulation), he gets a list of 366 entries:
the pseudo-month "jour complémentaire" and the 365 feasts for the 365
days of the year.
Second, if the user is not a native French-speaker (*) he will have
trouble sorting masculine and feminine words: is it "jour du
coriandre" or "jour de la coriandre"?
(*) and even for native French-speakers as myself. For example, for a
long time I did the mistake with "coriandre".
The update consists of giving a list which no longer contains "jour du
raisin", "jour de la coriandre" and the like, but only "raisin" and
"coriandre".
Available with commit 68384aa, tag v4.
**** end of copy-paste
Which version do you prefer to implement into Emacs? Will you clone
my Github repo or should I send you the full source or a diff output?
Or a pull request? I do not know yet how to send a pull request, but
I can learn that if necessary.
Problems and unknowns
I have tested only the multibyte version of strings, I do not know
how to activate the singlebyte option. We need to check especially
28 Fructidor jour du maïs ("mai\"s") and 18 Germinal jour de la
ciguë ("cigue\"").
Some historical sources say that "4 jour complémentaire" is "jour de
la raison", other sources say that it is "jour de l'opinion".
When choosing "jour du" vs "jour de la", I was not able to find the
word "bagarade" (26 Fructidor). I have chosen "jour de la bagarade"
because in modern French, there is a word "bigarade" for some kind
of orange and it would give "jour de la bigarade".
For version v3, if the user types "j" TAB TAB, he gets a 366-item
completion list. Performance-wise, it does not seem to be a burden for
Emacs, but you might have a different opinion. In this case, you
should adopt version v4 instead.
Best regards,
Jean Forget
next reply other threads:[~2014-11-24 21:01 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-11-24 21:01 Jean Forget [this message]
2014-11-26 19:14 ` bug#19174: Wishlist/suggestion for emacs/lisp/calendar/cal-french.el Glenn Morris
2021-05-28 2:00 ` Lars Ingebrigtsen
2021-06-07 19:32 ` Jean Forget
2021-06-08 9:34 ` Lars Ingebrigtsen
2021-06-08 17:47 ` Jean Forget
2021-06-09 10:07 ` Lars Ingebrigtsen
2021-06-10 5:56 ` bug#19174: JEAN FORGET Jean Forget
2021-06-09 14:11 ` bug#19174: Wishlist/suggestion for emacs/lisp/calendar/cal-french.el Mattias Engdegård
2021-06-10 5:40 ` Jean Forget
2021-06-10 9:09 ` Mattias Engdegård
2021-06-15 5:55 ` Jean Forget
2021-06-15 10:29 ` Mattias Engdegård
2021-06-15 13:58 ` Lars Ingebrigtsen
2021-07-23 13:27 ` Lars Ingebrigtsen
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1416862873.3063.5.camel@jf-xubuntu \
--to=j2n-forget@orange.fr \
--cc=19174@debbugs.gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.