# HG changeset patch # User wenzelm # Date 1734522582 -3600 # Node ID 079dee3b117cc4cca68cdd375c50712564dcb3d7 # Parent 91a7e5719b2b365241780cbaf306d7286319af72 clarified literal data; diff -r 91a7e5719b2b -r 079dee3b117c src/Pure/General/mailman.scala --- a/src/Pure/General/mailman.scala Wed Dec 18 11:59:44 2024 +0100 +++ b/src/Pure/General/mailman.scala Wed Dec 18 12:49:42 2024 +0100 @@ -20,27 +20,27 @@ private val standard_name: Map[String, String] = Map( - "121171528@qq.com" -> "Guo Fan\n121171528@qq.com", + "121171528:qq/com" -> "Guo Fan\n121171528:qq/com", "Aman Pohjola, Johannes (Data61, Kensington NSW)" -> "Johannes Aman Pohjola", "Andrei de AraÃjo Formiga" -> "Andrei de Araujo Formiga", - "Benedikt.AHRENS@unice.fr" -> "Benedikt Ahrens\nBenedikt.AHRENS@unice.fr", + "Benedikt/AHRENS:unice/fr" -> "Benedikt Ahrens\nBenedikt/AHRENS:unice/fr", "Berg, Nils Erik" -> "Nils Erik Berg", - "Berger U." -> "Ulrich Berger", + "Berger U/" -> "Ulrich Berger", "Bisping, Benjamin" -> "Benjamin Bisping", - "Blanchette, J.C." -> "Jasmin Christian Blanchette", + "Blanchette, J/C/" -> "Jasmin Christian Blanchette", "Buday Gergely István" -> "Gergely Buday", - "CALaF1UJ9Uy0vGCu4WkBmbfuPDxG7nFm8hfeCMP+O3g7_5CQ0Bw@mail.gmail.com" -> "", - "CRACIUN F." -> "Florin Craciun", + "CALaF1UJ9Uy0vGCu4WkBmbfuPDxG7nFm8hfeCMP+O3g7_5CQ0Bw:mail/gmail/com" -> "", + "CRACIUN F/" -> "Florin Craciun", "Carsten Schuermann" -> "Carsten Schürmann", "Chris" -> "", "Christoph Lueth" -> "Christoph Lüth", "Claude Marche" -> "Claude Marché", "Daniel StÃwe" -> "Daniel Stüwe", - "Daniel.Matichuk@data61.csiro.au" -> "Daniel Matichuk\nDaniel.Matichuk@data61.csiro.au", - "Daniel.Matichuk@nicta.com.au" -> "Daniel Matichuk\nDaniel.Matichuk@nicta.com.au", + "Daniel/Matichuk:data61/csiro/au" -> "Daniel Matichuk\nDaniel/Matichuk:data61/csiro/au", + "Daniel/Matichuk:nicta/com/au" -> "Daniel Matichuk\nDaniel/Matichuk:nicta/com/au", "David MENTRE" -> "David MENTRÉ", "Dey, Katie" -> "Katie Dey", - "Dr. Brendan Patrick Mahony" -> "Brendan Mahony", + "Dr/ Brendan Patrick Mahony" -> "Brendan Mahony", "Farn" -> "Farn Wang", "Farquhar, Colin I" -> "Colin Farquhar", "Fernandez, Matthew" -> "Matthew Fernandez", @@ -50,7 +50,7 @@ "Francisco Jose CHAVES ALONSO" -> "Francisco Jose Chaves Alonso", "Frederic Tuong (Dr)" -> "Frederic Tuong", "Fulya" -> "Fulya Horozal", - "George K." -> "George Karabotsos", + "George K/" -> "George Karabotsos", "Gidon Ernst" -> "Gidon ERNST", "Gransden, Thomas" -> "Thomas Gransden", "Hans-JÃrg Schurr" -> "Hans-Jörg Schurr", @@ -58,7 +58,7 @@ "Hitoshi Ohsaki (RTA publicity chair)" -> "Hitoshi Ohsaki", "Häuselmann Rafael" -> "Rafael Häuselmann", "Isabelle" -> "", - "J. Juhas (TUM)" -> "Jonatan Juhas", + "J/ Juhas (TUM)" -> "Jonatan Juhas", "Jackson, Vincent (Data61, Kensington NSW)" -> "Vincent Jackson", "Janney, Mark-P26816" -> "Mark Janney", "Jean François Molderez" -> "Jean-François Molderez", @@ -70,7 +70,7 @@ "Klein, Gerwin (Data61, Kensington NSW)" -> "Gerwin Klein", "Kobayashi, Hidetsune" -> "Hidetsune Kobayashi", "Kylie Williams (IND)" -> "Kylie Williams", - "Laarman, A.W." -> "A.W. Laarman", + "Laarman, A/W/" -> "A/W/ Laarman", "Laurent Thery" -> "Laurent Théry", "Li, Chanjuan" -> "Li Chanjuan", "Lochbihler Andreas" -> "Andreas Lochbihler", @@ -86,7 +86,7 @@ "Marmsoler, Diego" -> "Diego Marmsoler", "Martin Klebermass" -> "Martin Klebermaß", "Martyn Johnson via RT" -> "", - "Mathias.Fleury@ens-rennes.fr" -> "Mathias Fleury\nmathias.fleury12@gmail.com", + "Mathias/Fleury:ens-rennes/fr" -> "Mathias Fleury\nmathias/fleury12:gmail/com", "Matthew" -> "", "Matthews, John R" -> "John Matthews", "McCarthy, Jim (C3ID)" -> "Jim McCarthy", @@ -94,10 +94,10 @@ "Michael FÃrber" -> "Michael Färber", "Michel" -> "", "Miranda, Brando" -> "Brando Miranda", - "Moscato, Mariano M. \\(LARC-D320\\)\\[NATIONAL INSTITUTE OF AEROSPACE\\]" -> "Mariano M. Moscato", + "Moscato, Mariano M/ \\(LARC-D320\\)\\[NATIONAL INSTITUTE OF AEROSPACE\\]" -> "Mariano M/ Moscato", "Mr Julian Fell" -> "Julian Fell", "Mueller Peter" -> "Peter Müller", - "Munoz, Cesar Augusto (LARC-D320)" -> "Cesar A. Munoz", + "Munoz, Cesar Augusto (LARC-D320)" -> "Cesar A/ Munoz", "Nadel, Alexander" -> "Alexander Nadel", "Nagashima, Yutaka" -> "Yutaka Nagashima", "Norrish, Michael (Data61, Acton)" -> "Michael Norrish", @@ -109,34 +109,34 @@ "PAQUI LUCIO" -> "Paqui Lucio", "Pal, Abhik" -> "Abhik Pal", "Pasupuleti, Vijay" -> "Vijay Pasupuleti", - "Peter Vincent Homeier" -> "Peter V. Homeier", + "Peter Vincent Homeier" -> "Peter V/ Homeier", "Peter" -> "", "Philipp Ruemmer" -> "Philipp Rümmer", "Philipp RÃmmer" -> "Philipp Rümmer", "Piete Brooks via RT" -> "", "RTA publicity chair" -> "", - "Raamsdonk, F. van" -> "Femke van Raamsdonk", + "Raamsdonk, F/ van" -> "Femke van Raamsdonk", "Raul Gutierrez" -> "Raúl Gutiérrez", "Renà Thiemann" -> "René Thiemann", - "Ridgway, John V. E." -> "John V. E. Ridgway", - "Roggenbach M." -> "Markus Roggenbach", + "Ridgway, John V/ E/" -> "John V/ E/ Ridgway", + "Roggenbach M/" -> "Markus Roggenbach", "Rosu, Grigore" -> "Grigore Rosu", "Rozman, Mihaela" -> "Mihaela Rozman", - "Schmaltz, J." -> "Julien Schmaltz", - "Serguei A. Mokhov on behalf of PST-11" -> "Serguei A. Mokhov", - "Serguei Mokhov" -> "Serguei A. Mokhov", + "Schmaltz, J/" -> "Julien Schmaltz", + "Serguei A/ Mokhov on behalf of PST-11" -> "Serguei A/ Mokhov", + "Serguei Mokhov" -> "Serguei A/ Mokhov", "Shumeiko, Igor" -> "Igor Shumeiko", "Siek, Jeremy" -> "Jeremy Siek", - "Silvio.Ranise@loria.fr" -> "Silvio Ranise\nSilvio.Ranise@loria.fr", + "Silvio/Ranise:loria/fr" -> "Silvio Ranise\nSilvio/Ranise:loria/fr", "Siu, Tony" -> "Tony Siu", "Stüber, Sebastian" -> "Sebastian Stüber", "Thiemann, Rene" -> "René Thiemann", "Thiemann, René" -> "René Thiemann", "Thomas Arthur Leck Sewell" -> "Thomas Sewell", "Thomas Goethel" -> "Thomas Göthel", - "Thomas.Sewell@data61.csiro.au" -> "Thomas Sewell\nThomas.Sewell@data61.csiro.au", + "Thomas/Sewell:data61/csiro/au" -> "Thomas Sewell\nThomas/Sewell:data61/csiro/au", "Tjark Weber via RT" -> "Tjark Weber", - "Toby.Murray@data61.csiro.au" -> "Toby Murray\nToby.Murray@data61.csiro.au", + "Toby/Murray:data61/csiro/au" -> "Toby Murray\nToby/Murray:data61/csiro/au", "Urban, Christian" -> "Christian Urban", "Ursula Eschbach" -> "", "Van Staden Stephan" -> "Stephan van Staden", @@ -154,57 +154,64 @@ "chen kun" -> "Chen Kun", "chunhan wu" -> "Chunhan Wu", "daniel de la concepción sáez" -> "Daniel de la Concepción Sáez", - "daniel.luckhardt@mathematik.uni-goettingen.de" -> "Logiker@gmx.net", + "daniel/luckhardt:mathematik/uni-goettingen/de" -> "Logiker:gmx/net", "david streader" -> "David Streader", - "eschbach@in.tum.de" -> "", - "f.rabe@jacobs-university.de" -> "florian.rabe@fau.de", - "florian@haftmann-online.de" -> "haftmann@in.tum.de", - "fredegar@haftmann-online.de" -> "haftmann@in.tum.de", - "gallais @ ensl.org" -> "Guillaume Allais", + "eschbach:in/tum/de" -> "", + "f/rabe:jacobs-university/de" -> "florian/rabe:fau/de", + "florian:haftmann-online/de" -> "haftmann:in/tum/de", + "fredegar:haftmann-online/de" -> "haftmann:in/tum/de", + "gallais : ensl/org" -> "Guillaume Allais", "geng chen" -> "Geng Chen", - "henning.seidler" -> "Henning Seidler", + "henning/seidler" -> "Henning Seidler", "hkb" -> "Hidetsune Kobayashi", - "jobs-pm@inf.ethz.ch" -> "", - "julien@RadboudUniversity" -> "", + "jobs-pm:inf/ethz/ch" -> "", + "julien:RadboudUniversity" -> "", "jun sun" -> "Jun Sun", - "jwang whu.edu.cn (jwang)" -> "jwang", + "jwang whu/edu/cn (jwang)" -> "jwang", "kostas pouliasis" -> "Kostas Pouliasis", - "kristof.teichel@ptb.de" -> "Kristof Teichel\nkristof.teichel@ptb.de", + "kristof/teichel:ptb/de" -> "Kristof Teichel\nkristof/teichel:ptb/de", "lucas cavalcante" -> "Lucas Cavalcante", "mahmoud abdelazim" -> "Mahmoud Abdelazim", "manish surolia" -> "Manish Surolia", "mantel" -> "Heiko Mantel", "marco caminati" -> "Marco Caminati", - "mathias.fleury@ens-rennes.fr" -> "Mathias Fleury\nmathias.fleury12@gmail.com", - "merz@loria.fr" -> "stephan.merz@loria.fr", + "mathias/fleury:ens-rennes/fr" -> "Mathias Fleury\nmathias/fleury12:gmail/com", + "merz:loria/fr" -> "stephan/merz:loria/fr", "michel levy" -> "Michel Levy", - "michel.levy2009@laposte.net" -> "Michel Levy\nmichel.levy2009@laposte.net", + "michel/levy2009:laposte/net" -> "Michel Levy\nmichel/levy2009:laposte/net", "nemouchi" -> "Yakoub Nemouchi", "noam neer" -> "Noam Neer", "olfa mraihi" -> "Olfa Mraihi", - "pathsnottakenworkshop@gmail.com" -> "Leo Freitas\nleo.freitas@newcastle.ac.uk", + "pathsnottakenworkshop:gmail/com" -> "Leo Freitas\nleo/freitas:newcastle/ac/uk", "patrick barlatier" -> "Patrick Barlatier", "patrick dabou" -> "Patrick Dabou", "paul zimmermann" -> "Paul Zimmermann", - "popescu2@illinois.edu" -> "Andrei Popescu", + "popescu2:illinois/edu" -> "Andrei Popescu", "recruiting" -> "", - "recruiting@mais.informatik.tu-darmstadt.de" -> "", + "recruiting:mais/informatik/tu-darmstadt/de" -> "", "roux cody" -> "Cody Roux", "scott constable" -> "Scott Constable", - "superuser@mattweidner.com" -> "Matthew Weidner\nsuperuser@mattweidner.com", - "urban@math.lmu.de" -> "Christian Urban\nurban@math.lmu.de", - "veronique.cortier@loria.fr" -> "Veronique.Cortier@loria.fr", + "superuser:mattweidner/com" -> "Matthew Weidner\nsuperuser:mattweidner/com", + "urban:math/lmu/de" -> "Christian Urban\nurban:math/lmu/de", + "veronique/cortier:loria/fr" -> "Veronique/Cortier:loria/fr", "vikram singh" -> "Vikram Singh", - "wenzelm@in.tum.de" -> "makarius@sketis.net", - "werner@lix.polytechnique.fr" -> "Benjamin Werner\nwerner@lix.polytechnique.fr", - "wmansky@cs.princeton.edu" -> "William Mansky\nwmansky@cs.princeton.edu", - "y.nemouchi@ensbiotech.edu.dz" -> "Yakoub Nemouchi\ny.nemouchi@ensbiotech.edu.dz", + "wenzelm:in/tum/de" -> "makarius:sketis/net", + "werner:lix/polytechnique/fr" -> "Benjamin Werner\nwerner:lix/polytechnique/fr", + "wmansky:cs/princeton/edu" -> "William Mansky\nwmansky:cs/princeton/edu", + "y/nemouchi:ensbiotech/edu/dz" -> "Yakoub Nemouchi\ny/nemouchi:ensbiotech/edu/dz", "ÐÑÐÐÐÑÐÐÐ ÐÐÐÐÐÐÐÑÐÐÐÑ ÐÐÐÑÐÐÐ" -> "", - "∀X.Xπ - Tutorials about Proofs" -> "Bruno Woltzenlogel Paleo", - ).withDefault(identity) + "∀X/Xπ - Tutorials about Proofs" -> "Bruno Woltzenlogel Paleo", + ) + + private def tune(s: String): String = + s.replace(64.toChar, 58.toChar).replace(46.toChar, 47.toChar) + + private def untune(s: String): String = + s.replace(58.toChar, 64.toChar).replace(47.toChar, 46.toChar) def standard_author_info(author_info: List[String]): List[String] = - author_info.flatMap(s => split_lines(standard_name.getOrElse(s, s))).distinct + author_info.flatMap(s => + split_lines(standard_name.get(tune(s)).map(untune).getOrElse(s))).distinct sealed case class Message( name: String,