OVH Cloud OVH Cloud

Pb avec calendar

47 réponses
Avatar
Blue.Dian
Bonjour =E0 tous,

Bien cela fait maintenant qq temps que j'essaye de franciser mon
calendrier... et que j'y arrive pas ou pas compl=E9tement. De plus mon
niveau en Lisp est proche du n=E9ant et je ne comprend pas certaines
erreurs.
J'utilise une version Emacs 21.1.4 (Debian testing).
Sinon, j'ai consult=E9 le news group mais les info dispo ne sont plus
bonnes :
http://groups.google.fr/group/fr.comp.applications.emacs/browse_thread/thre=
ad/ed077968989c393f/1dfc0718c786aa70?q=3Dcalendrier&rnum=3D10#1dfc0718c786a=
a70
http://groups.google.fr/group/fr.comp.applications.emacs/browse_thread/thre=
ad/3a933e465fcb18eb/8fc7ab5af7cd0cfd?q=3Dcalendrier&rnum=3D7#8fc7ab5af7cd0c=
fd


Bon, voici la liste de mes pb :

Probleme n=B01

1) Je n'arrive pas =E0 virer les vacances am=E9ricaines pourtant j'ai
cela :
; on efface les jours feries non fran=E7ais
(setq general-holidays nil)
(setq christian-holidays nil)
(setq hebrew-holidays nil)
(setq islamic-holidays nil)
(setq oriental-holidays nil)
(setq solar-holidays nil)
; on ajoute les jours de vacances franchouillards
(setq other-holidays
'((holiday-fixed 1 1 "Nouvel an")
(holiday-fixed 5 1 "F=EAte du travail")
(holiday-fixed 5 8 "Victoire 1945")
;(feries-paques)
(holiday-fixed 7 14 "F=EAte nationale")
(holiday-fixed 8 15 "Assomption")
(holiday-fixed 11 11 "Armistice 1918")
(holiday-fixed 11 1 "Toussaint")
(holiday-fixed 12 25 "No=EBl")
;; fetes a date variable
(holiday-float 5 0 2 "F=EAte des m=E8res")
(holiday-float 6 0 3 "F=EAte des p=E8res")
))


Pourtant, dans calendrier, si je vais sur le 11 novembre, j'ai droit =E0
un Veteran's day comme description !


Probl=E9me n=B02
2) Pourquoi, pour avoir un format de date europ=E9en partout, il faut
que je fasse :
; on utilise le format europ=E9en (Jour Mois Ann=E9e) et non am=E9ricain
(M J A)
(european-calendar) ; apparement cela marche mieux comme cela
; (setq european-calendar-style t)

car le setq ne semble pas fonctionner, pourquoi ?

Probl=EAme n=B03
3)
Pour franciser les dates, pourquoi faut il que je passe par un setq et
non par un defvar (qui ne marche pas) dans la ligne suivante ?

Par exemple :

; Traduction des jours et mois apparaissant dans le calendrier
; j'utilisais avant defvar mais cela ne marche plus pourquoi ?
(setq calendar-day-abbrev-array
["dim" "lun" "mar" "mer" "jeu" "ven" "sam"])

Probl=EAme n=B04
4)
J'avais r=E9cup=E9r=E9 cette fonction, mais displayed year n'est plus une
variable reconnue dans calendar et je n'ai pas r=E9ussi =E0 trouver la
variable qui renvoit maintenant l'ann=E9e actuelle, des id=E9es ?
un "apropos-variable year" ne m'a pas donn=E9 grand chose !

;; **********************
;; Calculer les jours de f=EAtes
;; **********************
;; Trouv=E9 chez Philippe Dumont
;; http://pro.dumontweb.com/pages/emacs/Calendrier.html


;; Gestion des f=EAtes religieuses
;; **********************
(defun feries-paques ()
"Liste des jours de vacances relatifs a paques."
(let* ((century (1+ (/ displayed-year 100)))
(shifted-epact ;; Age of moon for April 5...
(% (+ 14 (* 11 (% displayed-year 19));; ...by Nicaean rule
(- ;; ...corrected for the Gregorian century rule
(/ (* 3 century) 4))
(/ ;; ...corrected for Metonic cycle inaccuracy.
(+ 5 (* 8 century)) 25)
(* 30 century));; Keeps value positive.
30))
(adjusted-epact ;; Adjust for 29.5 day month.
(if (or (=3D shifted-epact 0)
(and (=3D shifted-epact 1) (< 10 (% displayed-year 19))))
(1+ shifted-epact)
shifted-epact))
(paschal-moon ;; Day after the full moon on or after March 21.
(- (calendar-absolute-from-gregorian (list 4 19 displayed-year))
adjusted-epact))
(abs-easter (calendar-dayname-on-or-before 0 (+ paschal-moon 7)))
(day-list
(list
(list (calendar-gregorian-from-absolute abs-easter)
"P=E2ques")
(list (calendar-gregorian-from-absolute (+ abs-easter 1))
"Lundi de P=E2ques")
(list (calendar-gregorian-from-absolute (+ abs-easter 39))
"Jeudi de l'ascension")
(list (calendar-gregorian-from-absolute (+ abs-easter 49))
"Pentec=F4te")
(list (calendar-gregorian-from-absolute (+ abs-easter 50))
"Lundi de Pentec=F4te")))
(output-list
(filter-visible-calendar-holidays day-list)))
output-list))


Probl=EAme n=B05
5)
Bon, c'est pas sp=E9cifique =E0 calendar, c'est juste peut =EAtre un pb de
lisp, si une bonne ame veut bien m'aider :

Pourquoi cette commande ne fonctionne pas ?
(setq diary-file (concat BLD-repertoire-cfg "/BLD-diary"))
alors que celle-ci, oui
(setq diary-file "/home/BlueDian/personnel/plans/diary")

et que BLD-repertoire-cfg a =E9t=E9 d=E9fini par un :
(defconst BLD-repertoire-emacs (expand-file-name "~/.dir-emacs"))
(defconst BLD-repertoire-cfg (concat BLD-repertoire-emacs "/cfg"))


Bon, dsl c'etait un peu long !

BlueDian

10 réponses

1 2 3 4 5
Avatar
Sébastien Kirche
Le 16 novembre 2005 à 10:11, Blue s'est exprimé ainsi :

Bonjour à tous,

Bien cela fait maintenant qq temps que j'essaye de franciser mon
calendrier... et que j'y arrive pas ou pas complétement. De plus mon
niveau en Lisp est proche du néant et je ne comprend pas certaines
erreurs.
[...]
Bon, voici la liste de mes pb :

Probleme n°1

1) Je n'arrive pas à virer les vacances américaines pourtant j'ai
cela :
; on efface les jours feries non français
(setq general-holidays nil)
(setq christian-holidays nil)
(setq hebrew-holidays nil)
(setq islamic-holidays nil)
(setq oriental-holidays nil)
(setq solar-holidays nil)
; on ajoute les jours de vacances franchouillards
(setq other-holidays


^^^^^^^^^^^^^^
Essaie de remplacer par local-holidays

'((holiday-fixed 1 1 "Nouvel an")
(holiday-fixed 5 1 "Fête du travail")
(holiday-fixed 5 8 "Victoire 1945")
;(feries-paques)
(holiday-fixed 7 14 "Fête nationale")
(holiday-fixed 8 15 "Assomption")
(holiday-fixed 11 11 "Armistice 1918")
(holiday-fixed 11 1 "Toussaint")
(holiday-fixed 12 25 "Noël")
;; fetes a date variable
(holiday-float 5 0 2 "Fête des mères")
(holiday-float 6 0 3 "Fête des pères")



Ah, je n'avais jamais fait gaffe aux fêtes flottantes. J'ai récupéré ça :)

))
[...]

Probléme n°2
2) Pourquoi, pour avoir un format de date européen partout, il faut
que je fasse :
; on utilise le format européen (Jour Mois Année) et non américain
(M J A)
(european-calendar) ; apparement cela marche mieux comme cela
; (setq european-calendar-style t)

car le setq ne semble pas fonctionner, pourquoi ?



,----[ C-h v european-calendar-style RET ]
| european-calendar-style is a variable defined in `calendar.el'.
| Its value is nil
|
| Documentation:
| [...]
| To take effect,
| this variable should be set before the calendar package and its associates
^^^^^^
| are loaded. Otherwise, use one of the functions `european-calendar' or
| `american-calendar' to force the appropriate update.
| [...]
`----
Donc il faut positionner la variable *avant* de charger calendar.el *ou*
utiliser la fonction (european-calendar)

Perso je n'avais jamais creusé l'utilisation du calendrier mais j'avais
redéfini le format de date avec
(setq calendar-date-display-form '(dayname " " day " " monthname " " year))
Ce qui doit revenir au même.

Problême n°3
3)
Pour franciser les dates, pourquoi faut il que je passe par un setq et
non par un defvar (qui ne marche pas) dans la ligne suivante ?

Par exemple :

; Traduction des jours et mois apparaissant dans le calendrier
; j'utilisais avant defvar mais cela ne marche plus pourquoi ?
(setq calendar-day-abbrev-array
["dim" "lun" "mar" "mer" "jeu" "ven" "sam"])



Chez moi ça marche © :

;; Nom en clair des jours et mois apparaissant dans le calendrier
(defvar calendar-day-abbrev-array
["dim" "lun" "mar" "mer" "jeu" "ven" "sam"])
(defvar calendar-day-name-array
["dimanche" "lundi" "mardi" "mercredi" "jeudi" "vendredi" "samedi"])
(defvar calendar-month-abbrev-array
["jan" "fév" "mar" "avr" "mai" "jun"
"jul" "aoû" "sep" "oct" "nov" "déc"])
(defvar calendar-month-name-array
["janvier" "février" "mars" "avril" "mai" "juin"
"juillet" "août" "septembre" "octobre" "novembre" "décembre"])


Problême n°4
[...]
Problême n°5



Là je ne sais pas.

--
Sébastien Kirche
Avatar
Blue.Dian
Re,

Merci pour ces réponses, Sébastien.

Bon, le remplacement de
(setq other-holidays
'((holiday-fixed 1 1 "Nouvel an")..
par
(setq local-holidays
'((holiday-fixed 1 1 "Nouvel an")..
ne change pas mon pb (en fait j'avais cela avant).

Mais ta réponse au pb 2 me fait m'interroger sur la notion de
chargement de calendar.
En fait, je ne le charge jamais, le mode calendar, un (require
calendar) me renvoit une erreur (fonctionnement apparaissant depuis
emaces 21.1.4), donc je supposais qu'il était maintenant intégré
directement dans Emacs !
Ou alors, c'est Debian qui le fait pour moi ?
Avatar
Sébastien Kirche
Le 16 novembre 2005 à 12:11, Blue vraute :

Re,

Merci pour ces réponses, Sébastien.

Bon, le remplacement de
(setq other-holidays
'((holiday-fixed 1 1 "Nouvel an")..
par
(setq local-holidays
'((holiday-fixed 1 1 "Nouvel an")..
ne change pas mon pb (en fait j'avais cela avant).



Ah ? Bizarre c'est pourtant ce que j'ai changé chez moi pour avoir mes
éphémérides locales.

Si le courage t'en dit, tu peux jeter un oeil sur ma config complète
(mais en chantier) :
http://sebastien.kirche.free.fr/emacs_stuff/emacs.html

Mais ta réponse au pb 2 me fait m'interroger sur la notion de
chargement de calendar.
En fait, je ne le charge jamais, le mode calendar, un (require
calendar) me renvoit une erreur (fonctionnement apparaissant depuis
emaces 21.1.4),



Encore plus bizarre. Quoi que chez moi il est chargé avec un
load-library, mais ça fait partie des scories qui traînent dans ma
config que je nettoie doucement.

donc je supposais qu'il était maintenant intégré directement dans
Emacs ! Ou alors, c'est Debian qui le fait pour moi ?



Intégré, et depuis longtemps quand on regarde la révision du fichier
dans le cvs (1.178)

Tu es sûr de ne pas avoir un problème de version ?
M-x locate-library RET calendar RET => indique le fichier
lisp/calendar/calendar.elc *de la version actuelle* d'Emacs.

Regarde si tu n'as pas calendar en double avec
M-x list-load-path-shadows


--
Sébastien Kirche
Avatar
Denis Bitouzé
Le 16 nov 2005 à 14h02
Sébastien Kirche a écrit :

Si le courage t'en dit, tu peux jeter un oeil sur ma config complète
(mais en chantier) :
http://sebastien.kirche.free.fr/emacs_stuff/emacs.html



J'en ai drôlement envie, d'un .emacs aussi beau, propre, bien rangé et
dont la configuration pour Gnus me permette de, enfin, m'y mettre !
Sébastien, y aurait-il un moyen (simple, qui ne te coûte pas de temps),
de faire ressortir les éléments qui te sont propres et qui serait à
modifier dans ce .emacs pour qu'il soit adapté à quelqu'un d'autre ?

En tous cas, merci !
--
Denis
Avatar
Sébastien Kirche
Le 16 novembre 2005 à 14:11, Denis Bitouzé a formulé :

Le 16 nov 2005 à 14h02
Sébastien Kirche a écrit :

> Si le courage t'en dit, tu peux jeter un oeil sur ma config complète
> (mais en chantier) :
> http://sebastien.kirche.free.fr/emacs_stuff/emacs.html

J'en ai drôlement envie, d'un .emacs aussi beau, propre, bien rangé et
dont la configuration pour Gnus me permette de, enfin, m'y mettre !



Oulà. Tu n'as pas dû dépasser la première page pour parler de bien
rangé :p

Il y a pas mal de code mort en commentaires résultant d'essais
successifs depuis 2 ans.

Sébastien, y aurait-il un moyen (simple, qui ne te coûte pas de
temps), de faire ressortir les éléments qui te sont propres et qui
serait à modifier dans ce .emacs pour qu'il soit adapté à quelqu'un
d'autre ?



Beaucoup des réglages persos sont en haut des fichiers (j'essaie).

Une particularité de me config c'est que je la partage entre deux Macs
(goudurix et zebigbos (x86)), une Sun (falbala) et un ou deux pécés
(idefix, bonnemine) et que je positionnes certains réglages spécifique à
une machine en testant le nom ou le type de plate-forme.

Et j'essaie le plus possible de placer des require qui ne provoquent pas
d'erreur si la lib est absente (require 'truc nil t) pour ne pas bloquer
le chargement car elles ne sont pas installées toutes sur chaque
machine.

Il faudrait que je regarde pour regrouper tous les réglages persos a
début mais d'un autre côté le tuning d'un emacs est assez personnel.

C'est comme les goûts et les couleurs : certains de mes réglages peuvent
ne pas plaire à d'autres.

En tous cas, merci !



--
Sébastien Kirche
Avatar
Sébastien Kirche
Le 16 novembre 2005 à 14:11, Denis Bitouzé a formulé :

Le 16 nov 2005 à 14h02
Sébastien Kirche a écrit :

> Si le courage t'en dit, tu peux jeter un oeil sur ma config complète
> (mais en chantier) :
> http://sebastien.kirche.free.fr/emacs_stuff/emacs.html

J'en ai drôlement envie, d'un .emacs aussi beau, propre, bien rangé et
dont la configuration pour Gnus me permette de, enfin, m'y mettre !



Oulà. Tu n'as pas dû dépasser la première page pour parler de bien
rangé :p

Il y a pas mal de code mort en commentaires résultant d'essais
successifs depuis 2 ans.

Tu as vu qu'il y avait un gnus.html à la même adresse (et qui est encore
plus en chantier) ?

Sébastien, y aurait-il un moyen (simple, qui ne te coûte pas de
temps), de faire ressortir les éléments qui te sont propres et qui
serait à modifier dans ce .emacs pour qu'il soit adapté à quelqu'un
d'autre ?



Beaucoup des réglages persos sont en haut des fichiers (j'essaie).

Une particularité de me config c'est que je la partage entre deux Macs
(goudurix et zebigbos (x86)), une Sun (falbala) et un ou deux pécés
(idefix, bonnemine) et que je positionnes certains réglages spécifique à
une machine en testant le nom ou le type de plate-forme.

Et j'essaie le plus possible de placer des require qui ne provoquent pas
d'erreur si la lib est absente (require 'truc nil t) pour ne pas bloquer
le chargement car elles ne sont pas installées toutes sur chaque
machine.

Il faudrait que je regarde pour regrouper tous les réglages persos a
début mais d'un autre côté le tuning d'un emacs est assez personnel.

C'est comme les goûts et les couleurs : certains de mes réglages peuvent
ne pas plaire à d'autres.

En tous cas, merci !



--
Sébastien Kirche
Avatar
Blue.Dian
Bon,
J'ai pas l'impression de progresser dans mon pb, mais j'apprends plein
de trucs !

locate-library calendar me renvoit qq chose de rassurant, je suis bien
sur la librairie 21.4.

Par contre, le M-x list-load-path-shadows ne trouve pas de librairie
calendar (ce qui est bon signe, non ?), mais un paquet de librairies
qui recouvrent les bibliothèques 21.4 pas des 21, du genre, une au
hasard :
/usr/share/emacs21/site-lisp/gnus/binhex hides
/usr/share/emacs/21.4/lisp/gnus/binhex

C'est inquiétant ?

Du coup, cela vaut peut être le coup de passer en emacs snapshot ?
J'utilise gnus, planner (bon, j'aimerai bien l'utiliser à fond d'ou ma
question sur le calendrier et diary), muse, erc, emacs-goodies, ecb
(avec des pb, d'ailleurs), bbdb, w3m, template, color-mode, cua (pour
la gestion simplifié des rectangles), dmacro
Il y a des pb de compatibilité avec la version CVS sur ces modes ?


Pour tes fichiers de config, hé hé, je les ai déjà pas mal pillé !
Avatar
Bastien
"" writes:

J'utilise gnus, planner (bon, j'aimerai bien l'utiliser à fond d'ou ma
question sur le calendrier et diary)



Attention: la francisation de calendar risque de perturber planner (et
diary, et le reste...).

Il y a des pb de compatibilité avec la version CVS sur ces modes ?



Pour ecb j'ai eu quelques problèmes avec emacs-snapshot, je ne me
souviens plus très bien, mais à tester avec des pincettes... Je n'ai
pas ces problèmes en compilant à la maison, donc j'en reste là pour
l'instant.

--
Bastien
Avatar
Sébastien Kirche
Le 16 novembre 2005 à 14:11, Blue a formulé :

Bon,
J'ai pas l'impression de progresser dans mon pb, mais j'apprends plein
de trucs !



C'est déjà ça.

locate-library calendar me renvoit qq chose de rassurant, je suis bien
sur la librairie 21.4.



Bien.


Par contre, le M-x list-load-path-shadows ne trouve pas de librairie
calendar (ce qui est bon signe, non ?),



Oui, list-load-path-shadows comme son nom l'indique liste les libs qui
sont en double dans le load-path et comme elles sont chargées dans
l'ordre du load-path (première trouvée, première chargée) ça peut être
gênant.

Parfois ça peut être voulu : par exemple Gnus fait partie d'Emacs et est
installé avec lui mais c'est un 5.10.7. Moi j'ai installé NoGnus 0.4
dans un répertoire de mon home qui est ajouté en tête du load-path aussi
ma version locale masque la version stable sans toucher aux fichiers de
la distribution. S'il y avait un autre utilisateur sur mes systèmes, il
aurait accès au Gnus stable.

mais un paquet de librairies
qui recouvrent les bibliothèques 21.4 pas des 21, du genre, une au
hasard :
/usr/share/emacs21/site-lisp/gnus/binhex hides
/usr/share/emacs/21.4/lisp/gnus/binhex

C'est inquiétant ?



Il faudrait vérifier les versions de ce qui se trouve sans
emacs21/site-lisp mais on dirait que tu as plusieurs version d'Emacs
installées ?

Du coup, cela vaut peut être le coup de passer en emacs snapshot ?
J'utilise gnus, planner (bon, j'aimerai bien l'utiliser à fond d'ou ma
question sur le calendrier et diary), muse, erc, emacs-goodies, ecb
(avec des pb, d'ailleurs), bbdb, w3m, template, color-mode, cua (pour
la gestion simplifié des rectangles), dmacro
Il y a des pb de compatibilité avec la version CVS sur ces modes ?



De compatibilité, pas que je sache. Peut-être des réglages nouveaux
comme l'environnement francais ou l'affichage des caractères de
contrôle.

Par contre il y a un monde entre 21.4 et le cvs actuel au niveau de la
gestion des encodages (entre autres).

Pour tes fichiers de config, hé hé, je les ai déjà pas mal pillé !



=o)

--
Sébastien Kirche
Avatar
Blue.Dian
Merci pour ta réponse Sébastien.
Bon, en fait c'est justement la meilleure gestion des encodages qui me
fait envie dans la version CVS.

Je vais m'accorder un petit temps de réflexion. Peut être que
d'autres ont rencontré le même pb et vont me répondre.

Par contre, je vais poser une question sur les utilisateurs de la
version snapshot d'Emacs.

Bon, et laisser tomber, dans l'immédiat, la francisation du
calendrier, car apparemment d'après Bastien c'est pas sans poser pb
avec planner (par contre avec diary, cela me surprend) et ma priorité
c'est planner.

Merci pour tes réponses. Je vais regarder ce pb de version d'Emacs (je
pensais n'en avoir qu'une de version, mais bon ca pourrait être un
mélange de Deban testing et unstable, j'ai un peu joué avec cela ces
derniers temps).
1 2 3 4 5