;ELC ;;; compiled by jwz@thalidomide on Sun Jan 2 02:56:29 1994 ;;; from file /th/jwz/emacs19/lisp/calendar/cal-french.el ;;; emacs version 19.9 Lucid (beta10). ;;; bytecomp version 2.22; 22-dec-93. ;;; optimization is on. ;;; this file uses opcodes which do not exist in Emacs 18. (if (and (boundp 'emacs-version) (or (and (boundp 'epoch::version) epoch::version) (string-lessp emacs-version "19"))) (error "This file was compiled for Emacs 19.")) (byte-code "!" [require calendar ["Vende'miaire" "Brumaire" "Frimaire" "Nivo^se" "Pluvio^se" "Vento^se" "Germinal" "Flore'al" "Prairial" "Messidor" "Thermidor" "Fructidor"] french-calendar-month-name-array ["Primidi" "Duodi" "Tridi" "Quartidi" "Quintidi" "Sextidi" "Septidi" "Octidi" "Nonidi" "Decadi"] french-calendar-day-name-array ["de la Vertu" "du Genie" "du Labour" "de la Raison" "de la Recompense" "de la Revolution"] french-calendar-special-days-array] 2) (fset 'french-calendar-leap-year-p #[(year) ">>VĦUƦ>?ȦU?" [year (3 7 11) (15 20) 20 4 0 400 (100 200 300) 4000] 2 "\ True if YEAR is a leap year on the French Revolutionary calendar. For Gregorian years 1793 to 1805, the years of actual operation of the calendar, uses historical practice based on equinoxes is followed (years 3, 7, and 11 were leap years; 15 and 20 would have been leap years). For later years uses the proposed rule of Romme (never adopted)--leap years fall every four years except century years not divisible 400 and century years that are multiples of 4000."]) (fset 'french-calendar-last-day-of-month #[(month year) "W‡ !ŇƇ" [month 13 30 french-calendar-leap-year-p year 6 5] 2 "\ Return last day of MONTH, YEAR on the French Revolutionary calendar. The 13th month is not really a month, but the 5 (6 in leap years) day period of `sansculottides' at the end of the year."]) (fset 'calendar-absolute-from-french #[(date) "@A@AA@ S_ W ƥ Sƥ Sǥ[ Sȥ Sɥ[\\\\\\ S_\n\\\\\\\\+" [date year day month 365 20 4 100 400 4000 30 654414] 6 "\ Compute absolute date from French Revolutionary date DATE. The absolute date is the number of days elapsed since the (imaginary) Gregorian date Sunday, December 31, 1 BC."]) (fset 'calendar-french-from-absolute #[(date) "W‰EZĥɉTE!Y\\Tg*\\\n   \n\"\nE!V\\ T b*T  \nE!SZ \nE," [date 654415 0 654414 366 approx sum y calendar-absolute-from-french 1 year m french-calendar-last-day-of-month month day] 7 "\ Compute the French Revolutionary equivalent for absolute date DATE. The result is a list of the form (MONTH DAY YEAR). The absolute date is the number of days elapsed since the (imaginary) Gregorian date Sunday, December 31, 1 BC."]) (fset 'calendar-print-french-date #[nil " !AA@S !@ !A@ !AA@ S_\\ V _\\ͥZ ˦UϦUЦU T  , _ ˥ ϥ[ Х\\\\\\\\)!AA@@A@W!USH#SͥT\"SͦH SH%," [calendar-french-from-absolute calendar-cursor-to-date error "Cursor is not on a date!" prior-years month day year 31 day-of-year 2 4 23 10 0 100 400 365 french-date y m d 1 message "Date is pre-French Revolution" 13 "Jour %s de l'Anne'e %d de la Revolution" french-calendar-special-days-array "Decade %s, %s de %s de l'Anne'e %d de la Revolution" make-string 73 french-calendar-day-name-array french-calendar-month-name-array] 8 "\ Show the French Revolutionary calendar equivalent of the selected date." nil]) (fset 'calendar-goto-french-date #[(date &optional noecho) " !!! " [calendar-goto-date calendar-gregorian-from-absolute calendar-absolute-from-french date noecho calendar-print-french-date] 4 "\ Move cursor to French Revolutionary date DATE. Echo French Revolutionary date unless NOECHO is t." (byte-code " AA@S @ A@ AA@ S_\\ V _\\ϥZ  ͦU ѦU ҦU T  ,_ͥѥ[ҥ\\\\\\\\)!AA@!#  !\"\"A\"\"$!#\"AV媄\"*VZ\"V*S_\\ E.C" [calendar-read "Anne'e de la Revolution (>0): " (lambda (x) (> x 0)) int-to-string calendar-french-from-absolute calendar-current-date prior-years month day year 31 day-of-year 2 4 23 10 0 100 400 365 mapcar list append french-calendar-month-name-array french-calendar-leap-year-p #[(x) " P" ["Jour " x] 2] french-calendar-special-days-array #[(x) " P" ["Jour " x] 2] month-list t completion-ignore-case assoc capitalize completing-read "Mois ou Sansculottide: " nil calendar-make-alist 1 (lambda (x) (capitalize (car x))) 12 "De'cade (1-3): " (lambda (x) (memq x '(1 2 3))) decade "Jour (1-10)): " (lambda (x) (and (<= 1 x) (<= x 10))) 13] 12)]) (fset 'diary-french-date #[nil " AA@S @ A@ AA@ S_\\ V _\\˥Z ɦU ͦU ΦUT,\n_\nɥ\nͥ[\nΥ\\\\\\\\)!AA@@A@VUSH#S˥T\"S˦HSH%," [calendar-french-from-absolute date prior-years month day year 31 day-of-year 2 4 23 10 0 100 400 365 french-date y m d 13 format "Jour %s de l'Anne'e %d de la Revolution" french-calendar-special-days-array "Decade %s, %s de %s de l'Anne'e %d de la Revolution" make-string 73 french-calendar-day-name-array french-calendar-month-name-array] 8 "\ French calendar equivalent of date diary entry."]) (provide 'cal-french)