diff --git a/lib/modules/Calendar.pmod/Swedish.pmod b/lib/modules/Calendar.pmod/Swedish.pmod index 21e475b48a3f129c2753feee52b609e505c086c2..fc5905e18d072034dc5c2a208b49150263430cc8 100644 --- a/lib/modules/Calendar.pmod/Swedish.pmod +++ b/lib/modules/Calendar.pmod/Swedish.pmod @@ -41,11 +41,9 @@ class Year array(array(string)) a; - // insert test for year here - if (!(a=namedays_cache[this->leap()+" "+this->leap_day()])) + if (!(a=namedays_cache[nameday_group(this)])) { - // insert test for year here - a=namedays_1993; + a=nameday_list(this); if (this->leap()) { @@ -55,7 +53,7 @@ class Year a[this->leap_day()..]; } - namedays_cache[this->leap()+" "+this->leap_day()]=a; + namedays_cache[nameday_group(this)]=a; } return _namedays=a; @@ -65,7 +63,7 @@ class Year { if (!_nameday_lookup && !(_nameday_lookup= - namedays_lookup_cache[this->leap()+" "+this->leap_day()])) + namedays_lookup_cache[nameday_group(this)])) { mapping m=([]); int i; @@ -92,11 +90,26 @@ class Day } } -// --- namnsdagar, data ------------------------------------------------- +// --- swedish namedays, data and functions ------------------------------ mapping namedays_cache=([]); mapping namedays_lookup_cache=([]); +string nameday_group(object year) +{ + return (year->number()<1993)+":"+ + (year->leap())+":"+ + (year->leap_day()); +} + +array(array(string)) nameday_list(object year) +{ + if (year->number()<1993) + return namedays_1986; + else + return namedays_1993; +} + /** Name database from alma-1.0, @@ -233,3 +246,183 @@ array(array(string)) namedays_1993= ({"Adam"}), ({"Eva"}), ({}), ({"Stefan","Staffan"}), ({"Johannes","Hannes"}), ({"Abel","Set"}), ({"Gunl�g","�sl�g"}), ({"Sylvester"}), }); + + +array(array(string)) namedays_1986= +({ ({"Svea","Sverker"}), ({"Alfred","Alfrida"}), ({"Rut","Ritva"}), + ({"Hanna","Hannele"}), ({"Baltsar","Kasper"}), ({"August","Augusta"}), + ({"Erland","Erhard"}), ({"Gunnar","Gunder"}), ({"Sigurd","Sigmund"}), + ({"Hugo","Hagar"}), ({"Frideborg","Fridolf"}), ({"Knut"}), + ({"Felix","Felicia"}), ({"Laura","Liv"}), ({"Hjalmar","Hervor"}), + ({"Anton","Tony"}), ({"Hilda","Hildur"}), ({"Henrik","Henry"}), + ({"Fabian","Sebastian"}), ({"Agnes","Agneta"}), ({"Vincent","Veine"}), + ({"Emilia","Emilie"}), ({"Erika","Eira"}), ({"Paul","P�l"}), + ({"Bodil","Boel"}), ({"G�te","G�ta"}), ({"Karl","Karla"}), + ({"Valter","Vilma"}), ({"Gunhild","Gunilla"}), ({"Ivar","Joar"}), + ({"Max","Magda"}), ({"Marja","Mia"}), ({"Disa","Hj�rdis"}), + ({"Ansgar","Anselm"}), ({"Lisa","Elise"}), ({"Dorotea","Dora"}), + ({"Rikard","Ricky","Rigmor"}), ({"Berta","Bert","Bertram"}), + ({"Fanny","Sanny","Sonny"}), ({"Eugenia","Egon","Eira"}), + ({"Yngve","Yvette","Yvonne"}), ({"Evelina","Elaine","Evelyn"}), + ({"Agne","Alin","Alina"}), ({"Valentin","Valentina","Vally"}), + ({"Sigfrid","Sigbert","Sigbritt"}), ({"Julia","Juliana","Juliette"}), + ({"Alexandra","Sandor","Sandra"}), ({"Frida","Fride","Frode"}), + ({"Gabriella","Ella","Elna"}), ({"Hulda","Haldis","Haldo"}), + ({"Hilding","Hildeborg","Hildemar"}), ({"Martina","Tim","Tina"}), + ({"Torsten","Toivo","Torun"}), ({"Mattias","Matti","Mats"}), + ({"Sigvard","Sigvald","Sigvor"}), ({"Torgny","Torvald"}), + ({"Lage","Laila","Lave"}), ({"Maria","Marie","Mary"}), + ({"Albin","Alba","Alban"}), ({"Ernst","Erna","Ernfrid"}), + ({"Gunborg","Gunbritt","Gunvald"}), ({"Adrian","Adrienne","Astor"}), + ({"Tora","Toini","Tor"}), ({"Ebba","Ebon","Evonne"}), + ({"Ottilia","Petra","Petronella"}), ({"Filippa","Gunl�g","�sl�g"}), + ({"Torbj�rn","Torben","Torgun"}), ({"Edla","Edling","Ethel"}), + ({"Edvin","Diana","Edna"}), ({"Viktoria","Vibeke","Viking"}), + ({"Greger","Grels","Greta"}), ({"Matilda","Maud","Moa"}), + ({"Kristofer","Christel","Christer"}), ({"Herbert","Herta","Hervor"}), + ({"Gertrud","Gertie","G�lin"}), ({"Edvard","Eda","Eddie"}), + ({"Josef","James","Janet"}), ({"Joakim","Jockum","Kim"}), + ({"Bengt","Bengta","Benita"}), ({"Viktor","Vimar","V�ge"}), + ({"Gerda","Anngerd","Gerd"}), ({"Gabriel","Gabrielle","Gunni"}), + ({"Mary","Marion"}), ({"Emanuel","Emanuella","Immanuel"}), + ({"Rudolf","Rode","Rudi"}), ({"Malkolm","Elma","Elmer"}), + ({"Jonas","Jon","Jonna"}), ({"Holger","Olga"}), + ({"Ester","Estrid","Vasti"}), ({"Harald","Hadar","Hardy"}), + ({"Gudmund","Gudmar","Gunder"}), ({"Ferdinand","Gunvi","Gunvor"}), + ({"Ambrosius","Irene","Irina"}), ({"Nanna","Nancy","Nanny"}), + ({"Vilhelm","William","Willy"}), ({"Ingemund","Ingemo","Irma"}), + ({"Hemming","Heimer","Helmut"}), ({"Otto","Orvar","Ottar"}), + ({"Ingvar","Ingvald","Ingvor"}), ({"Ulf","Ylva","Yrsa"}), + ({"Julius","Gillis"}), ({"Artur","Aldor","Atle"}), + ({"Tiburtius","Ellen","Elly"}), ({"Olivia","Oliver","Ove"}), + ({"Patrik","Patricia","Percy"}), ({"Elias","Elis","Elise"}), + ({"Valdemar","Valdis","Volmar"}), ({"Olavus Petri","Olaus Petri"}), + ({"Amalia","Amelie","Amy"}), ({"Anselm","Annevi","Annvor"}), + ({"Albertina","Alida","Allan"}), ({"Georg","Georgina","J�rgen"}), + ({"Vega","Viggo","Viveka"}), ({"Markus","Marika","Mark"}), + ({"Teresia","Terese","Tessy"}), ({"Engelbrekt","Engelbert","Enok"}), + ({"Ture","Turid","Tuve"}), ({"Tyko","Toralf","Torulf"}), + ({"Mariana","Marianne","Marina"}), ({"Valborg","Maj","Maja"}), + ({"Filip","�sa","�se"}), ({"G�ta","G�rel","G�tmar"}), + ({"Monika","Majne","Mona"}), ({"Gotthard","Gotthild","Gotty"}), + ({"Sigmund","Sigge"}), ({"Gustava","Gullvi","Gullbritt"}), + ({"�ke","�ge","�got"}), ({"Jonathan","John","Johnny"}), + ({"Esbj�rn","Elvy","Essy"}), ({"M�rta","Meta","M�rit"}), + ({"Charlotta","Charlotte","Lotta"}), ({"Linnea","Linn","Lis"}), + ({"Halvard","Hallvor","Halvar"}), ({"Sofia","Sia","Sofie"}), + ({"Hilma","Helvi","Hilmer"}), ({"Rebecka","Renee","Rosita"}), + ({"Erik","Erk","Jerker"}), ({"Alrik","Alda","Altea"}), + ({"Karolina","Carola","Caroline"}), + ({"Konstantin","Conny","Konstatia"}), ({"Henning","Henny","P�l"}), + ({"Desideria","Dennis","Desiree"}), ({"Ragnvald","Ragnvi","Ragnvor"}), + ({"Urban","Una","Uno"}), ({"Vilhelmina","Vilma","Vilmar"}), + ({"Blenda","Beda","Britten"}), ({"Ingeborg","Ingabritt","Ingbritt"}), + ({"Kristi Himmelsf�rdsdag"}), ({"Baltsar","Bill","Billy"}), + ({"Fritjof","Majny","Majvi"}), ({"Isabella","Iris","Isa"}), + ({"Nikodemus","Nina","Ninni"}), ({"Rutger","Runa","Rune"}), + ({"Ingemar","Ingar","Ingmarie"}), ({"Holmfrid","Helfrid","Helfrida"}), + ({"Bo","Bodil","Boel"}), ({"Danmarks grundlagsdag"}), + ({"Gustav","Gusten","G�sta"}), ({"Robert","Robin","Ruben"}), + ({"Salomon","Sally"}), ({"B�rje","Belinda","Bj�rg"}), + ({"Svante","Sante","Sjunne"}), ({"Bertil","Berit","Berthold"}), + ({"Eskil","Eje","Evan"}), ({"Aina","Aino","Roine"}), + ({"H�kan","Hakon","Hakvin"}), ({"Justina","Jim","Jimmy"}), + ({"Axel","Axelia","Axelina"}), ({"Torborg","Torhild","Toril"}), + ({"Bj�rn","Bjarne","Bj�rne"}), ({"Germund","Jerry","Jill"}), + ({"Flora","Florence","Florentin"}), ({"Alf","Alvin","Alvina"}), + ({"Paulina","Pamela","Paulette"}), ({"Adolf","Adolfina","Ally"}), + ({"Johan","Jan"}), ({"David","Davida","Daisy"}), + ({"Rakel","Rafael","Ralf"}), ({"Selma","Selim","Selmer"}), + ({"Leo","Lola","Liselott"}), ({"Petrus","Peter","Petter"}), + ({"Elof","Elvira","Viran"}), ({"Aron","Arent","Arild"}), + ({"Rosa","Rose","Rosemarie"}), ({"Aurora","Andre","Aurelia"}), + ({"Ulrika","Ellika","Ulla"}), ({"Melker","Marja","Mirjam"}), + ({"Esaias","Elisiv","Esse"}), ({"Klas","Claudia","Klaus"}), + ({"Kjell","Kajsa","Kettil"}), ({"G�tilda","G�ran","J�rn"}), + ({"Anund","Anita","Ante"}), ({"Eleonora","Eleonor","Ellinor"}), + ({"Herman","Hanne","Hermine"}), ({"Joel","Joar","Jorunn"}), + ({"Folke","Fale","Fylgia"}), ({"Ragnhild","Ragni","Runo"}), + ({"Reinhold","Reine","Reino"}), ({"Alexis","Alex","Alice"}), + ({"Fredrik","Fred","Freddy"}), ({"Sara","Charles","Saga"}), + ({"Margareta","Margit","Margret"}), ({"Johanna","Jean","Jeanette"}), + ({"Magdalena","Magda","Madeleine"}), ({"Emma","Elena","Emmy"}), + ({"Kristina","Kerstin","Kristin"}), ({"Jakob","Jack"}), + ({"Jesper","Jessika","Jessie"}), ({"Marta","Marit","Marita"}), + ({"Botvid","Reidar","Reidun"}), ({"Olof","Ola","Olle"}), + ({"Algot","Margot","Vilgot"}), ({"Elin","Elon","Elina"}), + ({"Per","Peder","Pernilla"}), ({"Karin","Karen","K�re"}), + ({"Tage","Tanja","Truls"}), ({"Arne","Arna","Arnevi"}), + ({"Ulrik","Unn","Unni"}), ({"Sixten","S�ve","S�lve"}), + ({"Arnold","Annika","Annmari"}), ({"Sylvia","Silja","Silvia"}), + ({"Roland","Ronald","Ronny"}), ({"Lars","Lasse","Lorentz"}), + ({"Susanna","Sanna","Susanne"}), ({"Klara","Clarence","Clary"}), + ({"Hillevi","Hilja","Irja"}), ({"Ebbe","Eberhard","Efraim"}), + ({"Stella","Estelle","Stellan"}), ({"Brynolf","Benjamin","Benny"}), + ({"Verner","Verna","Veronika"}), ({"Helena","Helen","Helny"}), + ({"Magnus","Mogens","M�ns"}), ({"Bernhard","Berna","Bernt"}), + ({"Josefina","Josefin"}), ({"Henrietta","Harriet","Harry"}), + ({"Signe","Signar","Signy"}), ({"Bartolomeus","Carita","Rita"}), + ({"Lovisa","Louis","Louise"}), ({"�sten","Ejvind","�jvind"}), + ({"Rolf","Raoul","Rasmus"}), ({"Augustin","Gusti","Gurli"}), + ({"Hans","Hampus","Hasse"}), ({"Albert","Albrekt","Aste"}), + ({"Arvid","Arvida","Vidar"}), ({"Samuel","Sam","Solveig"}), + ({"Justus","Jane","Judit"}), ({"Alfhild","Alfons","Arja"}), + ({"Moses","Molly","My"}), ({"Adela","Adele","Adin"}), + ({"Sakarias","Siv","Sivert"}), ({"Regina","Gilbert","Gisela"}), + ({"Alma","Adils","Almar"}), ({"Augusta","Gunda","Gunde"}), + ({"Tord","Tordis","Torgil"}), ({"Dagny","Dag","Daga"}), + ({"Tyra","Tyr"}), ({"Ambj�rn","Stig","Styrbj�rn"}), + ({"Ida","Idar","Vida"}), ({"Sigrid","Siri","Solbritt"}), + ({"Eufemia","Cornelia","Cornelius"}), + ({"Hildegard","Hilbert","Hildebrand"}), ({"Alvar","Alva","Alve"}), + ({"Fredrika","Frej","Freja"}), ({"Agda","Jan","Jannika"}), + ({"Matteus","Majbritt","Majlis"}), ({"Maurits","Marlene","Moritz"}), + ({"Tekla","Trond","Tryggve"}), ({"Gerhard","Gert","Glenn"}), + ({"Signhild","Sanfrid","Signhild"}), ({"Enar","Einar","Eja"}), + ({"Dagmar","Donald","Douglas"}), ({"Lennart","Lena","Leonard"}), + ({"Mikael","Majken","Mikaela"}), ({"Helge","Heidi","H�rje"}), + ({"r","Ragna","Ragne"}), ({"Ludvig","Levi","Liv"}), + ({"Evald","Eila","Eilert"}), ({"Frans","Franciska","Frank"}), + ({"Bror","Brage","Bruno"}), ({"Jenny","Jennifer","Jens"}), + ({"Birgitta","Birgit","Britt"}), ({"Nils","Nilla","Nelly"}), + ({"Ingrid","Inger","Ingolf"}), ({"Helmer","Helmina","Helmy"}), + ({"Erling","Elvin","Elvina"}), ({"Valfrid","Ina","Inez"}), + ({"Teofil","Terje","tjelvar"}), ({"Manfred","Mandor","Manne"}), + ({"Hedvig","Hartvig","Hedda"}), ({"Fingal","Finn","Flemming"}), + ({"Antonietta","Anette","Tony"}), ({"Lukas","Lillemor","Lilly"}), + ({"Tore","Bojan Borghild"}), ({"Sibylla","Camilla","Kasper"}), + ({"Birger","Brita","Britta"}), ({"Seved","Sigvid","Ursula"}), + ({"S�ren","Severin"}), ({"Evert","Eivor","Elving"}), + ({"Inga","Ingalill","Ingert"}), ({"Amanda","Manda","Mandy"}), + ({"Sabina","Sebastian","Sussy"}), ({"Simon","Simeon","Simone"}), + ({"Viola","Vivi","Vivianne"}), ({"Elsa","Elsie","Ilse"}), + ({"Edit","Edgar","Edor"}), ({"Tobias","Tova","Tove"}), + ({"Hubert","Raymond","Roy"}), ({"Sverker","Nora","Nore"}), + ({"Eugen","Ebert","Egil"}), ({"Gustav Adolf","Gull","Gulli"}), + ({"Ingegerd","Ingel","Ingela"}), ({"Vendela","Vanda","Ville"}), + ({"Teodor","Tea","Ted"}), ({"Martin Luther","Mait","Martin"}), + ({"M�rten","Marion","Morgan"}), ({"Konrad","Kuno","Kurt"}), + ({"Kristian","Karsten","Kersti"}), ({"Emil","Milly","Mimmi"}), + ({"Leopold","Leif","Lilian"}), ({"Edmund","Elida","Elisa"}), + ({"Napoleon","Naemi","Naima"}), ({"Magnhild","Magna","Magne"}), + ({"Elisabet","Lisa","Lisbeth"}), ({"Pontus","Polly","Povel"}), + ({"Helga","Helle","Hilde"}), ({"Cecilia","Cilla","Cissi"}), + ({"Klemens","Ketty","Kitty"}), ({"Gudrun","Gullan","Gullvor"}), + ({"Katarina","Carina","Katrin"}), ({"Torkel","Torleif"}), + ({"Astrid","Asta","Astri"}), ({"Malte","Malvina","Mia"}), + ({"Sune","Sonja","Synn�ve"}), ({"Anders","Andrea","Andreas"}), + ({"Oskar","Ole","Ossian"}), ({"Beata","Beatrice","Betty"}), + ({"Lydia","Linda","Love"}), ({"Barbro","Barbara","Boris"}), + ({"Sven","Svend","Svenning"}), ({"Nikolaus","Niklas","nikolina"}), + ({"Agaton","Angela","Angelika"}), ({"Virginia","Vera","Vesta"}), + ({"Anna","Ann","Annie"}), ({"Malin","Majvor","Malena"}), + ({"Daniel","Dan","Daniela"}), ({"Alexander","Pia","Pierre"}), + ({"Lucia","Lisen","Lisette"}), ({"Sten","Stina","Sture"}), + ({"Gottfrid","Kaj","Kajsa"}), ({"Assar","Odd","Osvald"}), + ({"Inge","Ilona","Irmeli"}), ({"Abraham","Abdon","Gideon"}), + ({"Isak","Isidor","Isidora"}), ({"Israel","Gina","Gitte"}), + ({"Tomas","Tom","Tommy"}), ({"Natanael","Natalia","Natan"}), + ({"Adam","Ada","Adina"}), ({"Eva","Evita","Evy"}), + ({"Stefan","Staffan","Stefanie"}), ({"Johannes","Hannes","Johan"}), + ({"Abel","Abbe"}), ({"Set","Viva","Vivari"}), + ({"Sylvester","Sylve","Sylvi"})});