diff options
author | Karl Berry <karl@freefriends.org> | 2021-08-20 22:52:01 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2021-08-20 22:52:01 +0000 |
commit | f5c5cf2c466c2b3bb83a719e48e46fd3bff9771e (patch) | |
tree | fa29cbc473af7f2a9dc86fc2f704d5f4c62a4f8a /Master | |
parent | c7eee4079d040d971b50b61106940fb00a7ccba7 (diff) |
phonenumbers (21aug21)
git-svn-id: svn://tug.org/texlive/trunk@60288 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master')
16 files changed, 786 insertions, 452 deletions
diff --git a/Master/texmf-dist/doc/latex/phonenumbers/Literatur.bib b/Master/texmf-dist/doc/latex/phonenumbers/Literatur.bib index 512f9aeee00..ff0bc590872 100644 --- a/Master/texmf-dist/doc/latex/phonenumbers/Literatur.bib +++ b/Master/texmf-dist/doc/latex/phonenumbers/Literatur.bib @@ -1,5 +1,5 @@ % phonenumbers package: references -% Datum: 5. August 2018 +% Datum: 20. August 2021 @book{duden, title = {Duden}, subtitle = {Die deutsche Rechtschreibung}, @@ -26,7 +26,7 @@ author = {{Bundesnetzagentur}}, title = {Preisfestlegungsverfahren für (0)137}, date = {2007-08-15}, - url = {https://www.bundesnetzagentur.de/DE/Sachgebiete/Telekommunikation/Unternehmen_Institutionen/Nummerierung/Rufnummern/0137/Preisfestsetzungsverfahren/PreisfestlegungsVerfhrn0137_Basepage.html?nn=268384} + url = {https://www.bundesnetzagentur.de/DE/Sachgebiete/Telekommunikation/Unternehmen_Institutionen/Nummerierung/0137/Preisfestsetzungsverfahren/PreisfestlegungsVerfhrn0137_Basepage.html?nn=326370} } @online{BNA-01801, @@ -38,9 +38,9 @@ @online{BNA-01806, author = {{Bundesnetzagentur}}, - title = {(0)180 Rufnummern für Service-Dienste; Rufnummernteilbereich (0)180-6 und (0)180-7; Preisfestlegung und Veröffentlichung nach §\,67 Abs. 2 TKG}, + title = {(0)180 Rufnummern für Service-Dienste; Rufnummernteilbereiche (0)180-6 und (0)180-7; Preisfestlegung und Veröffentlichung nach §\,67 Abs. 2 TKG}, date = {2012-08-08}, - url = {https://www.bundesnetzagentur.de/SharedDocs/Downloads/DE/Sachgebiete/Telekommunikation/Unternehmen_Institutionen/Nummerierung/Rufnummern/0180/Preisfestlegung%20(0)180-6%20und%20(0)180-7.pdf?__blob=publicationFile&v=1} + url = {https://www.bundesnetzagentur.de/SharedDocs/Downloads/DE/Sachgebiete/Telekommunikation/Unternehmen_Institutionen/Nummerierung/Rufnummern/0180/Preisfestlegung0180-6_0180-7.pdf?__blob=publicationFile&v=1} } @online{BNA-019, @@ -66,76 +66,75 @@ @online{BNA-ortsvorwahlen, author = {{Bundesnetzagentur}}, - title = {Verzeichnis der Ortsnetze der Bundesrepublik Deutschland}, - subtitle = {Liste der Ortsnetzkennzahlen in numerischer Folge}, + title = {Ortsnetzkennzahlen in nummerischer Reihenfolge}, date = {2010-12-31}, - url = {http://www.bundesnetzagentur.de/SharedDocs/Downloads/DE/Sachgebiete/Telekommunikation/Unternehmen_Institutionen/Nummerierung/Rufnummern/ONVerzeichnisse/ONBVerzeichnis/B-ListeOrtsnetzenumerisch.pdf?__blob=publicationFile&v=3}, + url = {https://www.bundesnetzagentur.de/SharedDocs/Downloads/DE/Sachgebiete/Telekommunikation/Unternehmen_Institutionen/Nummerierung/Rufnummern/ONRufnr/ONK_num.pdf?__blob=publicationFile&v=1} } @online{BNA-mobil, author = {{Bundesnetzagentur}}, title = {Mobile Dienste, zugeteilte RNB}, - date = {2017-10-24}, - url = {http://www.bundesnetzagentur.de/cln_1432/DE/Sachgebiete/Telekommunikation/Unternehmen_Institutionen/Nummerierung/Rufnummern/MobileDienste/zugeteilte%20RNB/MobileDiensteBelegteRNB_Basepage.html?nn=268384#download=1} + date = {2021-07-07}, + url = {https://www.bundesnetzagentur.de/DE/Sachgebiete/Telekommunikation/Unternehmen_Institutionen/Nummerierung/MobileDienste/zugeteilte%20RNB/MobileDiensteBelegteRNB_Basepage.html?nn=397488#download=1} } @online{BNA-Struktur, author = {{Bundesnetzagentur}}, title = {Struktur und Ausgestaltung des Nummernbereichs für Ortsnetzrufnummern}, - date = {2017-12-20}, - url = {https://www.bundesnetzagentur.de/SharedDocs/Downloads/DE/Sachgebiete/Telekommunikation/Unternehmen_Institutionen/Nummerierung/Rufnummern/ONRufnr/Vfg_25_2006_konsFassung.pdf?__blob=publicationFile&v=2} + date = {2020-05-06}, + url = {https://www.bundesnetzagentur.de/SharedDocs/Downloads/DE/Sachgebiete/Telekommunikation/Unternehmen_Institutionen/Nummerierung/Rufnummern/ONRufnr/Vfg_25_2006_konsFassung.pdf?__blob=publicationFile&v=8} } @online{RTR-Liste, author = {{Rundfunk- und Telekom-Regulierungs-GmbH}}, title = {Presentation of E.164 National Numbering for Country Code 43, Austria}, date = {2011-03-30}, - url = {https://www.rtr.at/de/tk/E129/Austrian_Numbering_Plan_2011-03-30.pdf} + url = {https://www.rtr.at/TKP/was_wir_tun/telekommunikation/nummerierung/Austrian_Numbering_Plan_2011-03-30.pdf} } @online{RTR-Verordnung, author = {{Rundfunk- und Telekom-Regulierungs-GmbH}}, - title = {Aktuelle Fassung der Kommunikationsparameter-, Entgelt- und Mehrwertdiensteverordnung 2009}, + title = {Kommunikationsparameter-, Entgelt- und Mehrwertdiensteverordnung 2009}, date = {2017-10-25}, - url = {https://www.rtr.at/de/tk/KEMV2009kons} + url = {https://www.ris.bka.gv.at/GeltendeFassung.wxe?Abfrage=Bundesnormen&Gesetzesnummer=20006383} } @inreference{wikipedia-AT, title = {Telefonvorwahl (Österreich)}, booktitle = {Wikipedia}, booksubtitle = {Die freie Enzyklopädie}, - date = {2018-06-19}, - url = {https://de.wikipedia.org/wiki/Telefonvorwahl_(%C3%96sterreich)} + url = {https://de.wikipedia.org/wiki/Telefonvorwahl_(%C3%96sterreich)}, + urldate = {2021-08-18} } @online{ARCEP, author = {{Autorité de régulation des communications électroniques et des postes}}, - title = {Plan national de numérotation téléphonique}, - date = {2015-10-22}, - url = {http://www.arcep.fr/uploads/tx_gsavis/05-1085.pdf} + title = {Plan national de numérotation}, + date = {2019-08-01}, + url = {https://www.arcep.fr/uploads/tx_gsavis/19-0954.pdf} } @inreference{wikipedia-FR-fr, title = {Plan de numérotation en France}, booktitle = {Wikipédia en fran\c{c}ais}, - date = {2018-07-11}, url = {https://fr.wikipedia.org/wiki/Plan_de_num%C3%A9rotation_en_France}, + urldate = {2021-08-18} } @inreference{wikipedia-FR-de, title = {Telefonvorwahl (Frankreich)}, booktitle = {Wikipedia}, booksubtitle = {Die freie Enzyklopädie}, - date = {2017-11-22}, - url = {https://de.wikipedia.org/wiki/Telefonvorwahl_(Frankreich)} + url = {https://de.wikipedia.org/wiki/Telefonvorwahl_(Frankreich)}, + urldate = {2021-08-18} } @inreference{wikipedia-NANP, title = {North American Numbering Plan}, booktitle = {Wikipedia}, booksubtitle = {The Free Encyclopedia}, - date = {2018-07-15}, - url = {https://en.wikipedia.org/wiki/North_American_Numbering_Plan} + url = {https://en.wikipedia.org/wiki/North_American_Numbering_Plan}, + urldate = {2021-08-16} } @inreference{wikipedia-conventions, @@ -150,41 +149,41 @@ author = {{North American Numbering Plan Association}}, title = {Geographic NPAs in Service Sorted by Number}, url = {https://www.nationalnanpa.com/enas/geoAreaCodeNumberReport.do}, - urldate = {2018-07-29} + urldate = {2021-08-16} } @online{NANPA-non-geographic, author = {{North American Numbering Plan Association}}, title = {Non-Geographic NPAs in Service}, url = {https://www.nationalnanpa.com/enas/nonGeoNpaServiceReport.do}, - urldate = {2018-07-29} + urldate = {2021-08-16} } @online{NANPA-ten-years, author = {{North American Numbering Plan Association}}, title = {NPAs Introduced over the Last 10 Years}, url = {https://www.nationalnanpa.com/enas/npasOverLast10YearsReport.do}, - urldate = {2018-07-29} + urldate = {2021-08-16} } @online{NANPA-not-yet, author = {{North American Numbering Plan Association}}, title = {Planned NPAs Not Yet in Service}, url = {https://www.nationalnanpa.com/enas/plannedNpasNotInServiceReport.do}, - urldate = {2018-07-29} + urldate = {2021-08-16} } @online{NANPA-ten-digit, author = {{North American Numbering Plan Association}}, title = {Area Codes Requiring 10 Digit Dialing}, url = {https://www.nationalnanpa.com/enas/npasRequiring10DigitReport.do}, - urldate = {2018-07-29} + urldate = {2021-08-16} } @online{hyperref, author = {Sebastian Rahtz and Heiko Oberdiek}, title = {hyperref}, - version = {6.86}, + version = {7.00}, url = {http://ctan.org/pkg/hyperref} } @@ -206,27 +205,27 @@ title = {Telephone numbers in the United Kingdom}, booktitle = {Wikipedia}, booksubtitle = {The Free Encyclopedia}, - date = {2018-07-18}, - url = {https://en.wikipedia.org/wiki/Telephone_numbers_in_the_United_Kingdom} + url = {https://en.wikipedia.org/wiki/Telephone_numbers_in_the_United_Kingdom}, + urldate = {2021-08-17} } @online{UK-formatting, title = {Phone Number Formatting}, subtitle = {How to write UK telephone numbers}, url = {http://www.area-codes.org.uk/formatting.php}, - urldate = {2018-07-30} + urldate = {2021-08-17} } @online{UK-area-codes, title = {UK Area Codes and Phone Number Information}, url = {http://www.area-codes.org.uk/}, - urldate = {2018-07-30} + urldate = {2021-08-17} } @online{Ofcom-plan, author = {Ofcom}, title = {The National Telephone Numbering Plan}, - date = {2018-04-26}, + date = {2021-01-04}, url = {https://www.ofcom.org.uk/__data/assets/pdf_file/0013/102613/national-numbering-plan.pdf} } @@ -234,5 +233,5 @@ author = {Ofcom}, title = {Ofcom Numbering Site}, url = {http://static.ofcom.org.uk/static/numbering/index.htm}, - urldate = {2018-07-30} + urldate = {2021-08-17} } diff --git a/Master/texmf-dist/doc/latex/phonenumbers/README b/Master/texmf-dist/doc/latex/phonenumbers/README index 7d743b9cf36..d39c143524b 100644 --- a/Master/texmf-dist/doc/latex/phonenumbers/README +++ b/Master/texmf-dist/doc/latex/phonenumbers/README @@ -9,8 +9,8 @@ number is valid according to the national rules. It also allows to link phone numbers using the hyperref package. Package author: K. Wehr -Version: 2.2 -Date: 18th August 2019 +Version: 2.3 +Date: 20th August 2021 The phonenumbers package is subject to the LaTeX Project Public License, version 1.3 or later. diff --git a/Master/texmf-dist/doc/latex/phonenumbers/phonenumbers-de.pdf b/Master/texmf-dist/doc/latex/phonenumbers/phonenumbers-de.pdf Binary files differindex 2844e5790aa..bc0f466a74b 100644 --- a/Master/texmf-dist/doc/latex/phonenumbers/phonenumbers-de.pdf +++ b/Master/texmf-dist/doc/latex/phonenumbers/phonenumbers-de.pdf diff --git a/Master/texmf-dist/doc/latex/phonenumbers/phonenumbers-de.tex b/Master/texmf-dist/doc/latex/phonenumbers/phonenumbers-de.tex index 386d2b77027..ea51e371aac 100644 --- a/Master/texmf-dist/doc/latex/phonenumbers/phonenumbers-de.tex +++ b/Master/texmf-dist/doc/latex/phonenumbers/phonenumbers-de.tex @@ -1,6 +1,6 @@ % phonenumbers package: German manual -% Version 2.2 -% Datum: 18. August 2019 +% Version 2.3 +% Datum: 20. August 2021 \documentclass[numbers=noenddot]{scrreprt} \usepackage[french,ngerman]{babel} \usepackage{fontspec} @@ -12,7 +12,6 @@ \usepackage{scrlayer-scrpage} \usepackage{multicol} \usepackage{metalogo} -\usepackage[toc]{multitoc} \usepackage[ngerman]{isodate} \usepackage{cnltx-example} \usepackage{cnltx-tools} @@ -46,8 +45,8 @@ \renewcommand\@pnumwidth{2em} \makeatother -\DeclareTOCStyleEntry[raggedentrytext=on]{tocline}{chapter} -\DeclareTOCStyleEntry[raggedentrytext=on]{tocline}{section} +\BeforeStartingTOC{\begin{multicols}{2}} +\AfterStartingTOC{\end{multicols}} \addbibresource{Literatur.bib} @@ -72,7 +71,7 @@ \makeatother \DeclareNewLayer[background,bottommargin,mode=picture,hoffset=7cm, - contents={\includegraphics{Telefonhörer}}]{Telefonebene} + contents={\includegraphics{Telefonhoerer}}]{Telefonebene} \AddLayersToPageStyle{plain}{Telefonebene} \AddLayersToPageStyle{scrheadings}{Telefonebene} @@ -184,19 +183,25 @@ Am Ende der Teilnehmerrufnummer kann eine abgetrennte Durchwahlnummer stehen, di \includegraphics{Titelbild-de} \vfill -\Large +\large \textit{Paketautor} -\medskip +\smallskip Keno Wehr -\large +\bigskip +\textit{Fehlermeldungen} + \smallskip -\url{wehr@abgol.de} +\normalsize +\url{https://github.com/wehro/phonenumbers/issues} \end{center} -\vfill +\bigskip \noindent Dieses Paket ermöglicht es, Telefonnummern unterschiedlichen nationalen Konventionen entsprechend zu setzen und bei Bedarf auch zu verlinken. Unterstützt werden deutsche, österreichische, französische, britische und nordamerikanische Telefonnummern. Nummern aus anderen Ländern werden rudimentär unterstützt. + +\bigskip +\noindent An English version of this manual is available in the file \texttt{phonenumbers-en.pdf}. \end{titlepage} \tableofcontents @@ -212,7 +217,7 @@ Keno Wehr \phonenumber[area-code-sep=brackets]{020432632194} \end{sidebyside} \begin{sidebyside} - \phonenumber[area-code=place,area-code-sep=space]{0409188423} + \phonenumber[area-code=place,area-code-sep=space]{04066969123} \end{sidebyside} \begin{sidebyside} \phonenumber[foreign]{0209576342} @@ -237,13 +242,13 @@ Keno Wehr \section{Frankreich} \begin{sidebyside} - \phonenumber[country=FR]{0123456789} + \phonenumber[country=FR]{0199006789} \end{sidebyside} \begin{sidebyside} - \phonenumber[country=FR,area-code=place-and-number]{0123456789} + \phonenumber[country=FR,area-code=place-and-number]{0199006789} \end{sidebyside} \begin{sidebyside} - \phonenumber[country=FR,foreign]{0123456789} + \phonenumber[country=FR,foreign]{0199006789} \end{sidebyside} \section{Großbritannien} @@ -292,11 +297,11 @@ Das Ziel des Pakets \phone\ ist es, das Setzen von Telefonnummern zu ermögliche Beispielsweise werden in den meisten Ländern Vorwahlen graphisch von der Rufnummer getrennt. Für die Darstellung der Telefonnummer mit dem Paket \phone\ braucht der Nutzer nicht zu wissen, welche Ziffern zur Vorwahl und welche zur Rufnummer gehören. Das Paket kennt alle Vorwahlen der unterstützten Länder und stellt diese automatisch richtig dar. \begin{sidebyside} - \phonenumber{0305226789} + \phonenumber{03023125789} \end{sidebyside} Hier wurden die ersten drei Ziffern als Vorwahl von Berlin erkannt. Dagegen können im folgenden Beispiel die ersten sechs Ziffern als Vorwahl von Bad Schandau identifiziert werden. \begin{sidebyside} - \phonenumber{0350226789} + \phonenumber{03502225789} \end{sidebyside} Das Paket hat nicht das Ziel, eine bestimmte Norm umzusetzen; es orientiert sich an den üblichen Gepflogenheiten zur Darstellung von Telefonnummern. Durch das Setzen von Optionen kann der Anwender das Land festlegen, aus dem die Telefonnummer stammt, sowie zwischen mehreren Formatierungsvarianten wählen. Hierzu zählt auch die zusätzliche Ausgabe der Auslandsvorwahl. @@ -313,7 +318,7 @@ Setzt die \meta{Optionen} für alle folgenden Telefonnummern, für die nichts an Setzt eine Telefonnummer. Die \meta{Optionen} gelten nur für diese Telefonnummer. Die \meta{Nummer} kann im lokalen oder im internationalen Format eingegeben werden. Das lokale Format ist nur für unterstützte Länder möglich; das zugehörige Land ist durch die Option -\option{country} +\option{country} festzulegen \vglAbschnitt{optionen-allgemein}. Das internationale Format beginnt stets mit @@ -379,15 +384,15 @@ Gibt an, ob und in welcher Form die Auslandsvorwahl ausgegeben werden soll. Mit \code{foreign=international} oder einfach \code{foreign} erhält man eine Auslandsvorwahl, die aus einem Pluszeichen gefolgt von der Landeskennzahl (z.\,B. 49 für deutsche Nummern) besteht. In dieser Form kann sie auf Mobiltelefonen direkt verwendet werden. Im Festnetz muss das + durch die am Ort des Anrufers verwendeten internationalen Verkehrsausscheidungsziffern ersetzt werden. \begin{sidebyside} - \phonenumber[foreign=international]{0305226789} + \phonenumber[foreign=international]{03023125789} \end{sidebyside} Die Variante \code{american} lässt die Auslandsvorwahl mit 011 beginnen, den in Nordamerika gebräuchlichen internationalen Verkehrsausscheidungsziffern. \begin{sidebyside} - \phonenumber[foreign=american]{0305226789} + \phonenumber[foreign=american]{03023125789} \end{sidebyside} Bei Auswahl von \code{european} beginnt die Nummer mit einer Doppelnull, wie sie in den meisten Ländern Europas und weiteren Teilen der Welt verwendet wird. \begin{sidebyside} - \phonenumber[foreign=european]{0305226789} + \phonenumber[foreign=european]{03023125789} \end{sidebyside} Bei Nummern aus nicht unterstützten Ländern wird die Wahl @@ -413,7 +418,7 @@ Legt das Heimatland fest. Für Nummern aus diesem Land wird unabhängig vom Wert \begin{sidebyside} \setphonenumbers{foreign,home-country=FR} \phonenumber[country=DE]{0441343396} \\ - \phonenumber[country=FR]{0123456789} \\ + \phonenumber[country=FR]{0199006789} \\ \phonenumber[country=US]{2125550123} \end{sidebyside} @@ -427,7 +432,7 @@ Vor der Heimatvorwahl sollte das Heimatland mit der Option \option{home-country} \setphonenumbers{home-country=US,home-area-code=242,foreign} \phonenumber[country=US]{2125550123} \\ \phonenumber[country=US]{2425550124} \\ - \phonenumber[country=DE]{02581639737} + \phonenumber[country=DE]{0258163970} \end{sidebyside} Die Angabe einer Heimatvorwahl ist nur für Gebiete zulässig, in denen die Vorwahl bei Ortsgesprächen weggelassen werden kann. \end{Befehlsliste} @@ -486,15 +491,15 @@ Der zugehörige Tarif kann mit Hilfe der Option \OptionsvariantenAreaCodeSep \OptionsbeschreibungAreaCodeSep \begin{sidebyside} - \phonenumber[area-code-sep=space]{02581639737} \\ - \phonenumber[area-code-sep=hyphen]{01738642753} + \phonenumber[area-code-sep=space]{0258163970} \\ + \phonenumber[area-code-sep=hyphen]{01749091317} \end{sidebyside} \WertbeschreibungBrackets \begin{sidebyside} \setphonenumbers{area-code-sep=brackets} \phonenumber{02581639737} \\ - \phonenumber{01738642753} + \phonenumber{01749091317} \end{sidebyside} \HinweisForeignAreaCodeSep @@ -505,7 +510,7 @@ Der zugehörige Tarif kann mit Hilfe der Option \begin{sidebyside} \setphonenumbers{area-code=place} \phonenumber{08942630845} \\ - \phonenumber{01738642753} \\ + \phonenumber{01749091317} \\ \phonenumber[foreign]{04414363524} \end{sidebyside} @@ -513,7 +518,7 @@ Der zugehörige Tarif kann mit Hilfe der Option \begin{sidebyside} \setphonenumbers{area-code=place-and-number} \phonenumber{08942630845} \\ - \phonenumber{01738642753} \\ + \phonenumber{01749091317} \\ \phonenumber{01803635341} \\ \phonenumber[foreign]{04414363524} \end{sidebyside} @@ -679,20 +684,26 @@ Er gilt hingegen nicht für die Pazifikgebiete Wallis und Futuna, Französisch-P \UeberschriftAufbau Französische Telefonnummern sind generell zehnstellig und werden in Zweiergruppen gegliedert. Die erste Ziffer ist immer eine 0. \begin{sidebyside} - \phonenumber[country=FR]{0123456789} + \phonenumber[country=FR]{0199006789} \end{sidebyside} -Die zweite Ziffer ermöglicht die Zuordnung der Nummer zu einem von fünf geographischen Bereichen bzw. einer besonderen Verwendung (z.\,B. Mobilfunk). Die folgenden Stellen erlauben prinzipiell eine genauere geographische Zuordnung der Nummer, doch macht das Paket \phone\ hiervon nur zur Identifikation von Nummern aus Überseegebieten Gebrauch +Die zweite Ziffer ermöglicht die Zuordnung der Nummer zu einem von fünf geographischen Bereichen bzw. einer besonderen Verwendung (z.\,B. Mobilfunk). Bestimmte Nummerngruppen sind für Überseegebiete reserviert \vglAnhang{vorwahlen-FR}. \begin{sidebyside} \setphonenumbers{country=FR,area-code=place-and-number} - \phonenumber{0123456789} \\ - \phonenumber{0512345678} \\ + \phonenumber{0199006789} \\ + \phonenumber{0536495678} \\ \phonenumber{0596123456} \end{sidebyside} Bei Anrufen aus dem Ausland entfällt die führende 0 der Rufnummer. \begin{sidebyside} - \phonenumber[country=FR,foreign]{0123456789} + \phonenumber[country=FR,foreign]{0199006789} +\end{sidebyside} + +Nummern für die maschinelle Kommunikation, die mit 07\,00 beginnen, haben mehr als zehn Ziffern. Sie sind im Mutterland 14-stellig, in den Überseegebieten 13-stellig \cite[19]{ARCEP}. +\begin{sidebyside} + \phonenumber[country=FR]{07000123456789} \\ + \phonenumber[country=FR]{0700512345678} \end{sidebyside} Einige Firmen und Institutionen haben vierstellige Kurznummern, die stets mit einer 3 beginnen. @@ -717,19 +728,19 @@ Die erste Nummer im folgenden Beispiel stammt aus Mayotte und verwendet daher di \begin{sidebyside} \setphonenumbers{country=FR,foreign} \phonenumber{0269123456} \\ - \phonenumber{0296123456} + \phonenumber{0261913456} \end{sidebyside} Die Auslandsvorwahl führt für einige Gebiete zu einer Verdopplung der ersten drei Ziffern, z.\,B. im Fall von Martinique (Regionalvorwahl 05\,96). \begin{sidebyside} \phonenumber[country=FR,foreign]{0596123456} \end{sidebyside} -Dagegen entfällt für Saint-Pierre und Miquelon die Regionalvorwahl 05\,08 bei Auslandsanrufen vollständig \cite[4]{ARCEP}. +Dagegen entfällt für Saint-Pierre und Miquelon die Regionalvorwahl 05\,08 bei Auslandsanrufen vollständig \cite[13]{ARCEP}. \begin{sidebyside} \phonenumber[country=FR,foreign]{0508123456} \end{sidebyside} -In Saint-Pierre und Miquelon ist es außerdem möglich, bei lokalen Gesprächen die Vorwahl wegzulassen und nur sechs Ziffern zu wählen \cite[4]{ARCEP}. +In Saint-Pierre und Miquelon ist es außerdem möglich, bei lokalen Gesprächen die Vorwahl wegzulassen und nur sechs Ziffern zu wählen \cite[13]{ARCEP}. \begin{sidebyside} \setphonenumbers{country=FR,home-area-code=0508} \phonenumber{0508123456} @@ -744,30 +755,31 @@ Da dies in anderen Gebieten Frankreichs nicht möglich ist, ist \code{0508} der \WertbeschreibungPlaceAndNumber \begin{sidebyside} \setphonenumbers{country=FR,area-code=place-and-number} - \phonenumber{0123456789} \\ + \phonenumber{0199006789} \\ \phonenumber{0596123456} \\ \phonenumber{0612345678} \\ - \phonenumber[foreign]{0123456789} + \phonenumber[foreign]{0199006789} \end{sidebyside} \WertbeschreibungPlace \ Da die Vorwahl in Frankreich stets mitgewählt werden muss, ist von der Verwendung dieser Option abzuraten. \begin{sidebyside} \setphonenumbers{country=FR,area-code=place} - \phonenumber{0123456789} \\ + \phonenumber{0199006789} \\ \phonenumber{0596123456} \\ \phonenumber{0612345678} \\ - \phonenumber[foreign]{0123456789} + \phonenumber[foreign]{0199006789} \end{sidebyside} \end{Befehlsliste} \UeberschriftUngueltig \WarnungWenn \begin{itemize} -\item die Nummer nicht genau 10 oder 4 Stellen hat, +\item die Nummer nicht genau 10 oder 4 Stellen hat (außer bei Nummern, die mit 07\,00 beginnen), \item eine Nummer mit 10 Stellen nicht mit einer 0 beginnt, \item eine Nummer mit 4 Stellen nicht mir einer 3 beginnt, -\item eine Nummer mit 10 Stellen keine gültige Vorwahl beinhaltet. +\item eine Nummer mit 10 Stellen keine gültige Vorwahl beinhaltet, +\item eine Nummer, die mit 07\,00 beginnt, nicht 14 oder 13 Stellen hat. \end{itemize} \chapter{Britische Telefonnummern} @@ -993,9 +1005,9 @@ Gibt an, ob die Verkehrsausscheidungsziffer 1 für Ferngespräche ausgegeben wer \chapter{Technische Hinweise} Das Paket \phone\ verwendet das Paket -\Paket{ltxcmds} -sowie die experimentellen \LaTeX-3-Pakete -\Paket{expl3}, \Paket{xparse} und \Paket{l3keys2e}. +\Paket{ltxcmds} +sowie das \LaTeX-3-Paket +\Paket{l3keys2e}. Bindestriche innerhalb von Telefonnummern werden durch \verbcode:\kern1pt-\kern1pt: realisiert, das heißt sie werden mit einem Zusatzabstand von 1 Punkt zu den umgebenden Ziffern gesetzt. Das gilt auch für Schrägstriche, die als @@ -1058,14 +1070,14 @@ expandiert. \Schmalschrift \AreaCodesGeographic[country=FR] \egroup -\Quellen \cite[5]{ARCEP}, \cite{wikipedia-FR-fr}, \cite{wikipedia-FR-de} +\Quellen \cite[14\psq]{ARCEP}, \cite{wikipedia-FR-fr}, \cite{wikipedia-FR-de} \UeberschriftSondervorwahlen \bgroup \Schmalschrift \AreaCodesNonGeographic[country=FR] \egroup -\Quellen \cite[6--15]{ARCEP}, \cite{wikipedia-FR-fr}, \cite{wikipedia-FR-de} +\Quellen \cite[17--25]{ARCEP}, \cite{wikipedia-FR-fr}, \cite{wikipedia-FR-de} \chapter{Britische Vorwahlen} \UeberschriftOrtsvorwahlen @@ -1183,6 +1195,17 @@ am Anfang \item Ermöglichung von Makros als Befehlsargumenten \item leichte Veränderung der Warnmeldungen \end{itemize} +\item[2.3] \today +\begin{itemize} +\item Ergänzung der neuen deutschen Mobilfunkvorwahl 01\,50\,19 +\item Entfernung der deutschen Mobilfunkvorwahlen 01\,50\,20, 01\,50\,50, 01\,50\,80, 01\,55\,55 +\item Berücksichtigung der mit 07\,00 beginnenden französischen Machine-to-machine-Nummern (einschließlich derjenigen aus den Überseegebieten) mit 14 bzw. 13 Stellen +\item Berücksichtigung der mit 09\,47 und 09\,76 beginnenden Nummern aus den französischen Überseegebieten +\item Ergänzung der neuen britischen Vorwahlen 05604, 07354, 07355, 07357, 07359, 07360, 07361, 07362, 07363, 07364 und 0897 +\item Entfernung der britischen Vorwahl 07439 +\item Ergänzung der neuen nordamerikanischen Vorwahlen 227, 274, 341, 368, 428, 447, 448, 464, 474, 523, 524, 525, 526, 572, 582, 656, 659, 689, 730, 742, 771, 826, 839, 840, 943, 945 und 948 +\item Revision des Paketcodes +\end{itemize} \end{description} \end{document} diff --git a/Master/texmf-dist/doc/latex/phonenumbers/phonenumbers-en.pdf b/Master/texmf-dist/doc/latex/phonenumbers/phonenumbers-en.pdf Binary files differindex e028bb23cbe..526bac2a331 100644 --- a/Master/texmf-dist/doc/latex/phonenumbers/phonenumbers-en.pdf +++ b/Master/texmf-dist/doc/latex/phonenumbers/phonenumbers-en.pdf diff --git a/Master/texmf-dist/doc/latex/phonenumbers/phonenumbers-en.tex b/Master/texmf-dist/doc/latex/phonenumbers/phonenumbers-en.tex index a16d6e56ce1..f0533d6304a 100644 --- a/Master/texmf-dist/doc/latex/phonenumbers/phonenumbers-en.tex +++ b/Master/texmf-dist/doc/latex/phonenumbers/phonenumbers-en.tex @@ -1,6 +1,6 @@ % phonenumbers package: English manual -% Version 2.2 -% Datum: 18. August 2019 +% Version 2.3 +% Datum: 20. August 2021 \documentclass[numbers=noenddot]{scrreprt} \usepackage[french,UKenglish]{babel} \usepackage{fontspec} @@ -12,7 +12,6 @@ \usepackage{scrlayer-scrpage} \usepackage{multicol} \usepackage{metalogo} - \usepackage[UKenglish]{isodate} \usepackage{cnltx-example} \usepackage{cnltx-tools} @@ -46,8 +45,8 @@ \renewcommand\@pnumwidth{2em} \makeatother -\DeclareTOCStyleEntry[raggedentrytext=on]{tocline}{chapter} -\DeclareTOCStyleEntry[raggedentrytext=on]{tocline}{section} + + \addbibresource{Literatur.bib} @@ -72,7 +71,7 @@ \makeatother \DeclareNewLayer[background,bottommargin,mode=picture,hoffset=7cm, - contents={\includegraphics{Telefonhörer}}]{Telefonebene} + contents={\includegraphics{Telefonhoerer}}]{Telefonebene} \AddLayersToPageStyle{plain}{Telefonebene} \AddLayersToPageStyle{scrheadings}{Telefonebene} @@ -184,19 +183,25 @@ The subscriber number can end in a separate extension, which can be input by an \includegraphics{Titelbild-en} \vfill -\Large +\large \textit{Package author} -\medskip +\smallskip Keno Wehr -\large +\bigskip +\textit{Bug reports} + \smallskip -\url{wehr@abgol.de} +\normalsize +\url{https://github.com/wehro/phonenumbers/issues} \end{center} -\vfill +\bigskip \noindent This package makes it possible to typeset telephone numbers according to different national conventions and to link them when required. German, Austrian, French, British, and North American phone numbers are supported. Phone numbers from other countries are supported rudimentarily. + +\bigskip +\noindent A German version of this manual is available in the file \texttt{phonenumbers-de.pdf}. \end{titlepage} \tableofcontents @@ -212,7 +217,7 @@ Keno Wehr \phonenumber[area-code-sep=brackets]{020432632194} \end{sidebyside} \begin{sidebyside} - \phonenumber[area-code=place,area-code-sep=space]{0409188423} + \phonenumber[area-code=place,area-code-sep=space]{04066969123} \end{sidebyside} \begin{sidebyside} \phonenumber[foreign]{0209576342} @@ -237,13 +242,13 @@ Keno Wehr \section{France} \begin{sidebyside} - \phonenumber[country=FR]{0123456789} + \phonenumber[country=FR]{0199006789} \end{sidebyside} \begin{sidebyside} - \phonenumber[country=FR,area-code=place-and-number]{0123456789} + \phonenumber[country=FR,area-code=place-and-number]{0199006789} \end{sidebyside} \begin{sidebyside} - \phonenumber[country=FR,foreign]{0123456789} + \phonenumber[country=FR,foreign]{0199006789} \end{sidebyside} \section{United Kingdom} @@ -292,11 +297,11 @@ The \phone\ package aims to enable the user to typeset telephone numbers without For instance, area codes are separated from the subscriber number in most countries. To typeset the phone number with the aid of the \phone\ package the user does not need to know which digits belong to the area code and which to the subscriber number. The package knows all area codes of the supported countries and will automatically typeset them correctly. \begin{sidebyside} - \phonenumber{0305226789} + \phonenumber{03023125789} \end{sidebyside} The first three digits of this German phone number are recognized as the area code of Berlin, whereas in the following example the first six digits can be identified as the area code of the German spa town of Bad Schandau. \begin{sidebyside} - \phonenumber{0350226789} + \phonenumber{03502225789} \end{sidebyside} The package does not aim to implement a particular norm. Rather, it follows the usual conventions for typesetting phone numbers. By setting options the user can determine the country the number is belonging to and select from various formatting options. This includes the additional output of the country calling code. @@ -313,7 +318,7 @@ Sets the \meta{options} for all following phone numbers not having contradictory Typesets a telephone number. The \meta{options} are valid only for this phone number. The \meta{number} can be input in the local or in the international format. The local format is possible for supported countries only; the country has to be set by the -\option{country} +\option{country} option \vglAbschnitt{optionen-allgemein}. The international format always begins with @@ -379,15 +384,15 @@ Specifies whether and in which form the country calling code will be output. With \code{foreign=international} or simply \code{foreign} you will get a country calling code consisting of a plus sign followed by the country code (\eg\ 49 for German numbers). In this form the country calling code can be directly used on mobile phones. For landline calls the + has to be replaced by the international call prefix used in the country of the caller. \begin{sidebyside} - \phonenumber[foreign=international]{0305226789} + \phonenumber[foreign=international]{03023125789} \end{sidebyside} The choice \code{american} lets the country calling code begin with 011, the international call prefix used in North America. \begin{sidebyside} - \phonenumber[foreign=american]{0305226789} + \phonenumber[foreign=american]{03023125789} \end{sidebyside} With the choice \code{european} the number will begin with a double zero, used in most of Europe and further parts of the world. \begin{sidebyside} - \phonenumber[foreign=european]{0305226789} + \phonenumber[foreign=european]{03023125789} \end{sidebyside} For numbers from unsupported countries the choice @@ -413,7 +418,7 @@ Sets the home country. Numbers from this country will be typeset without the cou \begin{sidebyside} \setphonenumbers{foreign,home-country=FR} \phonenumber[country=DE]{0441343396} \\ - \phonenumber[country=FR]{0123456789} \\ + \phonenumber[country=FR]{0199006789} \\ \phonenumber[country=US]{2125550123} \end{sidebyside} @@ -427,7 +432,7 @@ The \option{home-country} option should to be set before the home area code. If \setphonenumbers{home-country=US,home-area-code=242,foreign} \phonenumber[country=US]{2125550123} \\ \phonenumber[country=US]{2425550124} \\ - \phonenumber[country=DE]{02581639737} + \phonenumber[country=DE]{0258163970} \end{sidebyside} Setting a home area code is allowed only for areas where the area code can be left out for local calls. \end{Befehlsliste} @@ -486,15 +491,15 @@ The relevant tariff can be output using the \OptionsvariantenAreaCodeSep \OptionsbeschreibungAreaCodeSep \begin{sidebyside} - \phonenumber[area-code-sep=space]{02581639737} \\ - \phonenumber[area-code-sep=hyphen]{01738642753} + \phonenumber[area-code-sep=space]{0258163970} \\ + \phonenumber[area-code-sep=hyphen]{01749091317} \end{sidebyside} \WertbeschreibungBrackets \begin{sidebyside} \setphonenumbers{area-code-sep=brackets} \phonenumber{02581639737} \\ - \phonenumber{01738642753} + \phonenumber{01749091317} \end{sidebyside} \HinweisForeignAreaCodeSep @@ -505,7 +510,7 @@ The relevant tariff can be output using the \begin{sidebyside} \setphonenumbers{area-code=place} \phonenumber{08942630845} \\ - \phonenumber{01738642753} \\ + \phonenumber{01749091317} \\ \phonenumber[foreign]{04414363524} \end{sidebyside} @@ -513,7 +518,7 @@ The relevant tariff can be output using the \begin{sidebyside} \setphonenumbers{area-code=place-and-number} \phonenumber{08942630845} \\ - \phonenumber{01738642753} \\ + \phonenumber{01749091317} \\ \phonenumber{01803635341} \\ \phonenumber[foreign]{04414363524} \end{sidebyside} @@ -679,20 +684,26 @@ However, it is not used for the Pacific territories Wallis and Futuna, French Po \UeberschriftAufbau French phone numbers generally have ten digits and are structured in groups of two digits. The first digit is always 0. \begin{sidebyside} - \phonenumber[country=FR]{0123456789} + \phonenumber[country=FR]{0199006789} \end{sidebyside} -The second digit makes it possible to assign a number to one of five geographic zones or to a special purpose (\eg\ mobile telephony), respectively. The following digits theoretically allow a more precise geographic assignment of the number, but the \phone\ package uses them only to identify numbers from the overseas territories +The second digit makes it possible to assign a number to one of five geographic zones or to a special purpose (\eg\ mobile telephony). Certain number ranges are reserved for overseas territories \vglAnhang{vorwahlen-FR}. \begin{sidebyside} \setphonenumbers{country=FR,area-code=place-and-number} - \phonenumber{0123456789} \\ - \phonenumber{0512345678} \\ + \phonenumber{0199006789} \\ + \phonenumber{0536495678} \\ \phonenumber{0596123456} \end{sidebyside} The leading 0 is omitted for calls from abroad. \begin{sidebyside} - \phonenumber[country=FR,foreign]{0123456789} + \phonenumber[country=FR,foreign]{0199006789} +\end{sidebyside} + +Numbers for machine to machine communication beginning with 07\,00 have more than ten digits. They have 14 digits in metropolitan France and 13 digits in the overseas territories \cite[19]{ARCEP}. +\begin{sidebyside} + \phonenumber[country=FR]{07000123456789} \\ + \phonenumber[country=FR]{0700512345678} \end{sidebyside} Some companies and institutions have four-digit short numbers, which always begin with 3. @@ -717,19 +728,19 @@ The first number of the following example is from Mayotte and thus using the cou \begin{sidebyside} \setphonenumbers{country=FR,foreign} \phonenumber{0269123456} \\ - \phonenumber{0296123456} + \phonenumber{0261913456} \end{sidebyside} For some areas the country code leads to doubling the first three digits, \eg\ in the case of Martinique (area code 05\,96). \begin{sidebyside} \phonenumber[country=FR,foreign]{0596123456} \end{sidebyside} -However, for Saint Pierre and Miquelon the area code 05\,08 is entirely omitted for calls from abroad \cite[4]{ARCEP}. +However, for Saint Pierre and Miquelon the area code 05\,08 is entirely omitted for calls from abroad \cite[13]{ARCEP}. \begin{sidebyside} \phonenumber[country=FR,foreign]{0508123456} \end{sidebyside} -In Saint Pierre and Miquelon it is possible as well to omit the area code for local calls and to dial six digits only \cite[4]{ARCEP}. +In Saint Pierre and Miquelon it is possible as well to omit the area code for local calls and to dial six digits only \cite[13]{ARCEP}. \begin{sidebyside} \setphonenumbers{country=FR,home-area-code=0508} \phonenumber{0508123456} @@ -744,30 +755,31 @@ Since this is not possible in other areas of France, \code{0508} is the only leg \WertbeschreibungPlaceAndNumber \begin{sidebyside} \setphonenumbers{country=FR,area-code=place-and-number} - \phonenumber{0123456789} \\ + \phonenumber{0199006789} \\ \phonenumber{0596123456} \\ \phonenumber{0612345678} \\ - \phonenumber[foreign]{0123456789} + \phonenumber[foreign]{0199006789} \end{sidebyside} \WertbeschreibungPlace \ The use of this option is deprecated because the area code has always to be dialled in France. \begin{sidebyside} \setphonenumbers{country=FR,area-code=place} - \phonenumber{0123456789} \\ + \phonenumber{0199006789} \\ \phonenumber{0596123456} \\ \phonenumber{0612345678} \\ - \phonenumber[foreign]{0123456789} + \phonenumber[foreign]{0199006789} \end{sidebyside} \end{Befehlsliste} \UeberschriftUngueltig \WarnungWenn \begin{itemize} -\item the number does not have exactly 10 or 4 digits, +\item the number does not have exactly 10 or 4 digits (except for numbers beginning with 07\,00), \item a 10-digit number does not begin with 0, \item a 4-digit number does not begin with 3, -\item a 10-digit number does not contain a valid area code. +\item a 10-digit number does not contain a valid area code, +\item a number beginning with 07\,00 does not have 14 or 13 digits. \end{itemize} \chapter{British Phone Numbers} @@ -993,9 +1005,9 @@ Specifies whether the trunk prefix 1 for long-distance calls will be output. Ins \chapter{Technical Remarks} The \phone\ package uses the -\Paket{ltxcmds} -package as well as the experimental \LaTeX\ 3 packages -\Paket{expl3}, \Paket{xparse}, and \Paket{l3keys2e}. +\Paket{ltxcmds} +package as well as the \LaTeX\ 3 package +\Paket{l3keys2e}. Hyphens within phone numbers are realized by \verbcode:\kern1pt-\kern1pt:, \ie\ they are typeset with an additional distance of 1 point from the surrounding digits. The same goes for slashes too, which are output as @@ -1058,14 +1070,14 @@ will be expanded to \Schmalschrift \AreaCodesGeographic[country=FR] \egroup -\Quellen \cite[5]{ARCEP}, \cite{wikipedia-FR-fr}, \cite{wikipedia-FR-de} +\Quellen \cite[14\psq]{ARCEP}, \cite{wikipedia-FR-fr}, \cite{wikipedia-FR-de} \UeberschriftSondervorwahlen \bgroup \Schmalschrift \AreaCodesNonGeographic[country=FR] \egroup -\Quellen \cite[6--15]{ARCEP}, \cite{wikipedia-FR-fr}, \cite{wikipedia-FR-de} +\Quellen \cite[17--25]{ARCEP}, \cite{wikipedia-FR-fr}, \cite{wikipedia-FR-de} \chapter{British Area Codes} \UeberschriftOrtsvorwahlen @@ -1183,6 +1195,17 @@ option for the area code separator in numbers with country calling code \item Making macros possible as command arguments \item Slight change of the warning messages \end{itemize} +\item[2.3] \today +\begin{itemize} +\item Addition of the new German mobile phone area code 01\,50\,19 +\item Removal of the German mobile phone area codes 01\,50\,20, 01\,50\,50, 01\,50\,80, 01\,55\,55 +\item Taking into account French machine to machine numbers beginning with 07\,00 (including those from the overseas territories) having 14 or 13 digits +\item Taking into account the numbers from the French overseas territories beginning with 09\,47 and 09\,76 +\item Addition of the new British area codes 05604, 07354, 07355, 07357, 07359, 07360, 07361, 07362, 07363, 07364, and 0897 +\item Removal of the British area code 07439 +\item Addition of the new North American area codes 227, 274, 341, 368, 428, 447, 448, 464, 474, 523, 524, 525, 526, 572, 582, 656, 659, 689, 730, 742, 771, 826, 839, 840, 943, 945, and 948 +\item Revision of the package code +\end{itemize} \end{description} \end{document} diff --git a/Master/texmf-dist/tex/latex/phonenumbers/phn-AT_Ortsnamen.tex b/Master/texmf-dist/tex/latex/phonenumbers/phn-AT_Ortsnamen.tex index e6954c431ff..ea6b95577f9 100644 --- a/Master/texmf-dist/tex/latex/phonenumbers/phn-AT_Ortsnamen.tex +++ b/Master/texmf-dist/tex/latex/phonenumbers/phn-AT_Ortsnamen.tex @@ -1,5 +1,5 @@ % phonenumbers package: Austrian place names -% Datum: 22. Oktober 2017 +% Datum: 20. August 2021 \tl_const:cn {c_phone_AT_ortsname_01_tl} {Wien} \tl_const:cn {c_phone_AT_ortsname_02142_tl} {Gattendorf} \tl_const:cn {c_phone_AT_ortsname_02143_tl} {Kittsee} @@ -222,7 +222,7 @@ \tl_const:cn {c_phone_AT_ortsname_02824_tl} {Allentsteig} \tl_const:cn {c_phone_AT_ortsname_02825_tl} {G\"opfritz~an~der~Wild} \tl_const:cn {c_phone_AT_ortsname_02826_tl} {Rastenfeld} -\tl_const:cn {c_phone_AT_ortsname_02827_tl} {Sch\"onbach} +\tl_const:cn {c_phone_AT_ortsname_02827_tl} {Sch\"onbach~(Nieder\"osterreich)} \tl_const:cn {c_phone_AT_ortsname_02828_tl} {Rappottenstein} \tl_const:cn {c_phone_AT_ortsname_02829_tl} {Schweiggers} \tl_const:cn {c_phone_AT_ortsname_02841_tl} {Vitis} @@ -383,7 +383,7 @@ \tl_const:cn {c_phone_AT_ortsname_03464_tl} {Gro\ss\ Sankt~Florian} \tl_const:cn {c_phone_AT_ortsname_03465_tl} {P\"olfing-Brunn} \tl_const:cn {c_phone_AT_ortsname_03466_tl} {Eibiswald} -\tl_const:cn {c_phone_AT_ortsname_03467_tl} {Schwanberg} +\tl_const:cn {c_phone_AT_ortsname_03467_tl} {Bad~Schwanberg} \tl_const:cn {c_phone_AT_ortsname_03468_tl} {Sankt~Oswald~ob~Eibiswald} \tl_const:cn {c_phone_AT_ortsname_03469_tl} {Sankt~Oswald~in~Freiland} \tl_const:cn {c_phone_AT_ortsname_03472_tl} {Mureck} @@ -539,7 +539,7 @@ \tl_const:cn {c_phone_AT_ortsname_04279_tl} {Sirnitz} \tl_const:cn {c_phone_AT_ortsname_04282_tl} {Hermagor} \tl_const:cn {c_phone_AT_ortsname_04283_tl} {St.~Stefan~im~Gailtal} -\tl_const:cn {c_phone_AT_ortsname_04284_tl} {Kirchbach} +\tl_const:cn {c_phone_AT_ortsname_04284_tl} {Kirchbach~(K\"arnten)} \tl_const:cn {c_phone_AT_ortsname_04285_tl} {Tr\"opolach} \tl_const:cn {c_phone_AT_ortsname_04286_tl} {Wei\ss briach} \tl_const:cn {c_phone_AT_ortsname_04350_tl} {Bad~St.~Leonhard~im~Lavanttal} @@ -635,7 +635,7 @@ \tl_const:cn {c_phone_AT_ortsname_05279_tl} {St.~Jodok~am~Brenner} \tl_const:cn {c_phone_AT_ortsname_05280_tl} {Hochf\"ugen} \tl_const:cn {c_phone_AT_ortsname_05282_tl} {Zell~am~Ziller} -\tl_const:cn {c_phone_AT_ortsname_05283_tl} {Kaltenbach} +\tl_const:cn {c_phone_AT_ortsname_05283_tl} {Kaltenbach~(Tirol)} \tl_const:cn {c_phone_AT_ortsname_05284_tl} {Gerlos} \tl_const:cn {c_phone_AT_ortsname_05285_tl} {Mayrhofen} \tl_const:cn {c_phone_AT_ortsname_05286_tl} {Ginzling} @@ -644,7 +644,7 @@ \tl_const:cn {c_phone_AT_ortsname_05289_tl} {H\"ausling} \tl_const:cn {c_phone_AT_ortsname_05331_tl} {Brandenberg} \tl_const:cn {c_phone_AT_ortsname_05332_tl} {W\"orgl} -\tl_const:cn {c_phone_AT_ortsname_05333_tl} {S\"oll} +\tl_const:cn {c_phone_AT_ortsname_05333_tl} {S\"oll~(Tirol)} \tl_const:cn {c_phone_AT_ortsname_05334_tl} {Westendorf} \tl_const:cn {c_phone_AT_ortsname_05335_tl} {Hopfgarten~im~Brixental} \tl_const:cn {c_phone_AT_ortsname_05336_tl} {Alpbach} @@ -726,7 +726,7 @@ \tl_const:cn {c_phone_AT_ortsname_05674_tl} {Bichlbach} \tl_const:cn {c_phone_AT_ortsname_05675_tl} {Tannheim} \tl_const:cn {c_phone_AT_ortsname_05676_tl} {Jungholz} -\tl_const:cn {c_phone_AT_ortsname_05677_tl} {Vils} +\tl_const:cn {c_phone_AT_ortsname_05677_tl} {Vils~(Tirol)} \tl_const:cn {c_phone_AT_ortsname_05678_tl} {Wei\ss enbach~am~Lech} \tl_const:cn {c_phone_AT_ortsname_06131_tl} {Obertraun} \tl_const:cn {c_phone_AT_ortsname_06132_tl} {Bad~Ischl} @@ -766,7 +766,7 @@ \tl_const:cn {c_phone_AT_ortsname_06272_tl} {Oberndorf~bei~Salzburg} \tl_const:cn {c_phone_AT_ortsname_06274_tl} {Lamprechtshausen} \tl_const:cn {c_phone_AT_ortsname_06276_tl} {Nu\ss dorf~am~Haunsberg} -\tl_const:cn {c_phone_AT_ortsname_06277_tl} {St.~Pantaleon} +\tl_const:cn {c_phone_AT_ortsname_06277_tl} {St.~Pantaleon~(Ober\"osterreich)} \tl_const:cn {c_phone_AT_ortsname_06278_tl} {Ostermiething} \tl_const:cn {c_phone_AT_ortsname_06412_tl} {Sankt~Johann~im~Pongau} \tl_const:cn {c_phone_AT_ortsname_06413_tl} {Wagrain} @@ -830,7 +830,7 @@ \tl_const:cn {c_phone_AT_ortsname_07215_tl} {Hellmons\"odt} \tl_const:cn {c_phone_AT_ortsname_07216_tl} {Helfenberg} \tl_const:cn {c_phone_AT_ortsname_07217_tl} {St.~Veit~im~M\"uhlkreis} -\tl_const:cn {c_phone_AT_ortsname_07218_tl} {Gro\ss traberg} +\tl_const:cn {c_phone_AT_ortsname_07218_tl} {Gro\ss traberg~(Oberneukirchen)} \tl_const:cn {c_phone_AT_ortsname_07219_tl} {Vorderwei\ss enbach} \tl_const:cn {c_phone_AT_ortsname_07221_tl} {H\"orsching} \tl_const:cn {c_phone_AT_ortsname_07223_tl} {Enns} @@ -919,12 +919,12 @@ \tl_const:cn {c_phone_AT_ortsname_07472_tl} {Amstetten} \tl_const:cn {c_phone_AT_ortsname_07473_tl} {Blindenmarkt} \tl_const:cn {c_phone_AT_ortsname_07474_tl} {Euratsfeld} -\tl_const:cn {c_phone_AT_ortsname_07475_tl} {Ulmerfeld-Hausmening-Neufurth} +\tl_const:cn {c_phone_AT_ortsname_07475_tl} {Hausmening~(Neuhofen~an~der~Ybbs)} \tl_const:cn {c_phone_AT_ortsname_07476_tl} {Aschbach-Markt} \tl_const:cn {c_phone_AT_ortsname_07477_tl} {St.~Peter~in~der~Au} \tl_const:cn {c_phone_AT_ortsname_07478_tl} {Oed-Oehling} \tl_const:cn {c_phone_AT_ortsname_07479_tl} {Ardagger} -\tl_const:cn {c_phone_AT_ortsname_07480_tl} {Langau} +\tl_const:cn {c_phone_AT_ortsname_07480_tl} {Langau~(Gaming)} \tl_const:cn {c_phone_AT_ortsname_07482_tl} {Scheibbs} \tl_const:cn {c_phone_AT_ortsname_07483_tl} {Oberndorf~an~der~Melk} \tl_const:cn {c_phone_AT_ortsname_07484_tl} {G\"ostling~an~der~Ybbs} @@ -936,7 +936,7 @@ \tl_const:cn {c_phone_AT_ortsname_07562_tl} {Windischgarsten} \tl_const:cn {c_phone_AT_ortsname_07563_tl} {Spital~am~Pyhrn} \tl_const:cn {c_phone_AT_ortsname_07564_tl} {Hinterstoder} -\tl_const:cn {c_phone_AT_ortsname_07565_tl} {St.~Pankraz} +\tl_const:cn {c_phone_AT_ortsname_07565_tl} {St.~Pankraz~(Ober\"osterreich)} \tl_const:cn {c_phone_AT_ortsname_07566_tl} {Rosenau~am~Hengstpa\ss} \tl_const:cn {c_phone_AT_ortsname_07582_tl} {Kirchdorf~an~der~Krems} \tl_const:cn {c_phone_AT_ortsname_07583_tl} {Kremsm\"unster} @@ -951,7 +951,7 @@ \tl_const:cn {c_phone_AT_ortsname_07615_tl} {Scharnstein} \tl_const:cn {c_phone_AT_ortsname_07616_tl} {Gr\"unau~im~Almtal} \tl_const:cn {c_phone_AT_ortsname_07617_tl} {Traunkirchen} -\tl_const:cn {c_phone_AT_ortsname_07618_tl} {Neukirchen~(Gemeinde~Altm\"unster)} +\tl_const:cn {c_phone_AT_ortsname_07618_tl} {Neukirchen~(Altm\"unster)} \tl_const:cn {c_phone_AT_ortsname_07619_tl} {Kirchham} \tl_const:cn {c_phone_AT_ortsname_07662_tl} {Seewalchen~am~Attersee} \tl_const:cn {c_phone_AT_ortsname_07663_tl} {Steinbach~am~Attersee} diff --git a/Master/texmf-dist/tex/latex/phonenumbers/phn-DE_Ortsnamen.tex b/Master/texmf-dist/tex/latex/phonenumbers/phn-DE_Ortsnamen.tex index 370693cf8e3..fc9b19ab8a7 100644 --- a/Master/texmf-dist/tex/latex/phonenumbers/phn-DE_Ortsnamen.tex +++ b/Master/texmf-dist/tex/latex/phonenumbers/phn-DE_Ortsnamen.tex @@ -1,5 +1,5 @@ % phonenumbers package: German place names -% Datum: 5. August 2018 +% Datum: 20. August 2021 \tl_const:cn {c_phone_DE_ortsname_0201_tl} {Essen} \tl_const:cn {c_phone_DE_ortsname_0202_tl} {Wuppertal} \tl_const:cn {c_phone_DE_ortsname_0203_tl} {Duisburg} @@ -191,7 +191,7 @@ \tl_const:cn {c_phone_DE_ortsname_02421_tl} {D\"uren} \tl_const:cn {c_phone_DE_ortsname_02422_tl} {Kreuzau} \tl_const:cn {c_phone_DE_ortsname_02423_tl} {Langerwehe} -\tl_const:cn {c_phone_DE_ortsname_02424_tl} {Vettweiß} +\tl_const:cn {c_phone_DE_ortsname_02424_tl} {Vettwei\ss} \tl_const:cn {c_phone_DE_ortsname_02425_tl} {Nideggen-Embken} \tl_const:cn {c_phone_DE_ortsname_02426_tl} {N\"orvenich} \tl_const:cn {c_phone_DE_ortsname_02427_tl} {Nideggen} @@ -5209,9 +5209,7 @@ \tl_const:cn {c_phone_DE_ortsname_01377_tl} {Massenverkehrsdienst~(1\nobreakspace Euro/Anruf)} \tl_const:cn {c_phone_DE_ortsname_01378_tl} {Massenverkehrsdienst~(50\,ct/Anruf)} \tl_const:cn {c_phone_DE_ortsname_01379_tl} {Massenverkehrsdienst~(50\,ct/Anruf)} -\tl_const:cn {c_phone_DE_ortsname_015020_tl} {Mobilfunk} -\tl_const:cn {c_phone_DE_ortsname_015050_tl} {Mobilfunk} -\tl_const:cn {c_phone_DE_ortsname_015080_tl} {Mobilfunk} +\tl_const:cn {c_phone_DE_ortsname_015019_tl} {Mobilfunk} \tl_const:cn {c_phone_DE_ortsname_01511_tl} {Mobilfunk} \tl_const:cn {c_phone_DE_ortsname_01512_tl} {Mobilfunk} \tl_const:cn {c_phone_DE_ortsname_01514_tl} {Mobilfunk} @@ -5225,7 +5223,6 @@ \tl_const:cn {c_phone_DE_ortsname_01525_tl} {Mobilfunk} \tl_const:cn {c_phone_DE_ortsname_01526_tl} {Mobilfunk} \tl_const:cn {c_phone_DE_ortsname_01529_tl} {Mobilfunk} -\tl_const:cn {c_phone_DE_ortsname_015555_tl} {Mobilfunk} \tl_const:cn {c_phone_DE_ortsname_015566_tl} {Mobilfunk} \tl_const:cn {c_phone_DE_ortsname_015630_tl} {Mobilfunk} \tl_const:cn {c_phone_DE_ortsname_015678_tl} {Mobilfunk} @@ -5236,7 +5233,6 @@ \tl_const:cn {c_phone_DE_ortsname_01578_tl} {Mobilfunk} \tl_const:cn {c_phone_DE_ortsname_01579_tl} {Mobilfunk} \tl_const:cn {c_phone_DE_ortsname_015888_tl} {Mobilfunk} -\tl_const:cn {c_phone_DE_ortsname_015890_tl} {Mobilfunk} \tl_const:cn {c_phone_DE_ortsname_01590_tl} {Mobilfunk} \tl_const:cn {c_phone_DE_ortsname_0160_tl} {Mobilfunk} \tl_const:cn {c_phone_DE_ortsname_0162_tl} {Mobilfunk} @@ -5254,7 +5250,6 @@ \tl_const:cn {c_phone_DE_ortsname_0177_tl} {Mobilfunk} \tl_const:cn {c_phone_DE_ortsname_0178_tl} {Mobilfunk} \tl_const:cn {c_phone_DE_ortsname_0179_tl} {Mobilfunk} -\tl_const:cn {c_phone_DE_ortsname_01800_tl} {Service-Dienst} \tl_const:cn {c_phone_DE_ortsname_01801_tl} {Service-Dienst~(3,9\,ct/min)} \tl_const:cn {c_phone_DE_ortsname_01802_tl} {Service-Dienst~(6\,ct/Anruf)} \tl_const:cn {c_phone_DE_ortsname_01803_tl} {Service-Dienst~(9\,ct/min)} @@ -5262,8 +5257,6 @@ \tl_const:cn {c_phone_DE_ortsname_01805_tl} {Service-Dienst~(14\,ct/min)} \tl_const:cn {c_phone_DE_ortsname_01806_tl} {Service-Dienst~(20\,ct/Anruf)} \tl_const:cn {c_phone_DE_ortsname_01807_tl} {Service-Dienst~(30\,s~frei,~danach~14\,ct/min)} -\tl_const:cn {c_phone_DE_ortsname_01808_tl} {Service-Dienst} -\tl_const:cn {c_phone_DE_ortsname_01809_tl} {Service-Dienst} \tl_const:cn {c_phone_DE_ortsname_0181_tl} {Internationales~virtuelles~privates~Netz} \tl_const:cn {c_phone_DE_ortsname_0182_tl} {Virtuelles~privates~Netz} \tl_const:cn {c_phone_DE_ortsname_0183_tl} {Virtuelles~privates~Netz} @@ -5273,10 +5266,10 @@ \tl_const:cn {c_phone_DE_ortsname_0187_tl} {Virtuelles~privates~Netz} \tl_const:cn {c_phone_DE_ortsname_0188_tl} {Virtuelles~privates~Netz} \tl_const:cn {c_phone_DE_ortsname_0189_tl} {Virtuelles~privates~Netz} -\tl_const:cn {c_phone_DE_ortsname_0191_tl} {Onlinedienst} -\tl_const:cn {c_phone_DE_ortsname_0192_tl} {Onlinedienst} -\tl_const:cn {c_phone_DE_ortsname_0193_tl} {Onlinedienst} -\tl_const:cn {c_phone_DE_ortsname_0194_tl} {Onlinedienst} +\tl_const:cn {c_phone_DE_ortsname_0191_tl} {Online-Dienst} +\tl_const:cn {c_phone_DE_ortsname_0192_tl} {Online-Dienst} +\tl_const:cn {c_phone_DE_ortsname_0193_tl} {Online-Dienst} +\tl_const:cn {c_phone_DE_ortsname_0194_tl} {Online-Dienst} \tl_const:cn {c_phone_DE_ortsname_032_tl} {Nationale~Teilnehmerrufnummer} \tl_const:cn {c_phone_DE_ortsname_0700_tl} {Pers\"onliche~Rufnummer} \tl_const:cn {c_phone_DE_ortsname_0800_tl} {Entgeltfreier~Telefondienst} diff --git a/Master/texmf-dist/tex/latex/phonenumbers/phn-DE_Vorwahlen.tex b/Master/texmf-dist/tex/latex/phonenumbers/phn-DE_Vorwahlen.tex index aba6b8b89a9..9f188e30d34 100644 --- a/Master/texmf-dist/tex/latex/phonenumbers/phn-DE_Vorwahlen.tex +++ b/Master/texmf-dist/tex/latex/phonenumbers/phn-DE_Vorwahlen.tex @@ -1,5 +1,5 @@ % phonenumbers package: German area codes -% Datum: 5. August 2018 +% Datum: 20. August 2021 \clist_const:Nn \c_phone_DE_ortsvorwahlen_clist {0201, 0202, 0203, @@ -5209,9 +5209,7 @@ 01377, 01378, 01379, -015020, -015050, -015080, +015019, 01511, 01512, 01514, @@ -5225,7 +5223,6 @@ 01525, 01526, 01529, -015555, 015566, 015630, 015678, diff --git a/Master/texmf-dist/tex/latex/phonenumbers/phn-FR_Ortsnamen.tex b/Master/texmf-dist/tex/latex/phonenumbers/phn-FR_Ortsnamen.tex index 5ec797c1bde..eda23d4664f 100644 --- a/Master/texmf-dist/tex/latex/phonenumbers/phn-FR_Ortsnamen.tex +++ b/Master/texmf-dist/tex/latex/phonenumbers/phn-FR_Ortsnamen.tex @@ -1,9 +1,10 @@ % phonenumbers package: French place names -% Datum: 22. Oktober 2017 +% Datum: 20. August 2021 \tl_const:cn {c_phone_FR_ortsname_01_tl} {\^{I}le-de-France} \tl_const:cn {c_phone_FR_ortsname_02_tl} {Nord-ouest} \tl_const:cn {c_phone_FR_ortsname_0262_tl} {La~R\a'{e}union} \tl_const:cn {c_phone_FR_ortsname_026200_tl} {Terres~australes~et~antarctiques~fran\c{c}aises} +\tl_const:cn {c_phone_FR_ortsname_0263_tl} {La~R\a'{e}union} \tl_const:cn {c_phone_FR_ortsname_0269_tl} {Mayotte} \tl_const:cn {c_phone_FR_ortsname_03_tl} {Nord-est} \tl_const:cn {c_phone_FR_ortsname_04_tl} {Sud-est} @@ -22,5 +23,26 @@ \tl_const:cn {c_phone_FR_ortsname_0696_tl} {T\a'{e}l\a'{e}phone~mobile~(Martinique)} \tl_const:cn {c_phone_FR_ortsname_0697_tl} {T\a'{e}l\a'{e}phone~mobile~(Martinique)} \tl_const:cn {c_phone_FR_ortsname_07_tl} {T\a'{e}l\a'{e}phone~mobile} +\tl_const:cn {c_phone_FR_ortsname_0700_tl} {Communication~machine~\a`{a}~machine} +\tl_const:cn {c_phone_FR_ortsname_07005_tl} {Communication~machine~\a`{a}~machine~(Guadeloupe)} +\tl_const:cn {c_phone_FR_ortsname_07006_tl} {Communication~machine~\a`{a}~machine~(Guyane)} +\tl_const:cn {c_phone_FR_ortsname_07007_tl} {Communication~machine~\a`{a}~machine~(Martinique)} +\tl_const:cn {c_phone_FR_ortsname_07008_tl} {Communication~machine~\a`{a}~machine~(Mayotte)} +\tl_const:cn {c_phone_FR_ortsname_07009_tl} {Communication~machine~\a`{a}~machine~(La~R\a'{e}union)} \tl_const:cn {c_phone_FR_ortsname_08_tl} {Service~\a`{a}~valeur~ajout\a'{e}e} \tl_const:cn {c_phone_FR_ortsname_09_tl} {Service~t\a'{e}l\a'{e}phonique~en~VoIP} +\tl_const:cn {c_phone_FR_ortsname_09475_tl} {Service~t\a'{e}l\a'{e}phonique~en~VoIP~(Guadeloupe)} +\tl_const:cn {c_phone_FR_ortsname_09476_tl} {Service~t\a'{e}l\a'{e}phonique~en~VoIP~(Guyane)} +\tl_const:cn {c_phone_FR_ortsname_09477_tl} {Service~t\a'{e}l\a'{e}phonique~en~VoIP~(Martinique)} +\tl_const:cn {c_phone_FR_ortsname_09478_tl} {Service~t\a'{e}l\a'{e}phonique~en~VoIP~(Mayotte)} +\tl_const:cn {c_phone_FR_ortsname_09479_tl} {Service~t\a'{e}l\a'{e}phonique~en~VoIP~(La~R\a'{e}union)} +\tl_const:cn {c_phone_FR_ortsname_09760_tl} {Service~t\a'{e}l\a'{e}phonique~en~VoIP~(Guadeloupe)} +\tl_const:cn {c_phone_FR_ortsname_09761_tl} {Service~t\a'{e}l\a'{e}phonique~en~VoIP~(Guadeloupe)} +\tl_const:cn {c_phone_FR_ortsname_09762_tl} {Service~t\a'{e}l\a'{e}phonique~en~VoIP~(La~R\a'{e}union)} +\tl_const:cn {c_phone_FR_ortsname_09763_tl} {Service~t\a'{e}l\a'{e}phonique~en~VoIP~(La~R\a'{e}union)} +\tl_const:cn {c_phone_FR_ortsname_09764_tl} {Service~t\a'{e}l\a'{e}phonique~en~VoIP~(Guyane)} +\tl_const:cn {c_phone_FR_ortsname_09765_tl} {Service~t\a'{e}l\a'{e}phonique~en~VoIP~(Guyane)} +\tl_const:cn {c_phone_FR_ortsname_09766_tl} {Service~t\a'{e}l\a'{e}phonique~en~VoIP~(Martinique)} +\tl_const:cn {c_phone_FR_ortsname_09767_tl} {Service~t\a'{e}l\a'{e}phonique~en~VoIP~(Martinique)} +\tl_const:cn {c_phone_FR_ortsname_09768_tl} {Service~t\a'{e}l\a'{e}phonique~en~VoIP~(Guadeloupe)} +\tl_const:cn {c_phone_FR_ortsname_09769_tl} {Service~t\a'{e}l\a'{e}phonique~en~VoIP~(La~R\a'{e}union)} diff --git a/Master/texmf-dist/tex/latex/phonenumbers/phn-FR_Vorwahlen.tex b/Master/texmf-dist/tex/latex/phonenumbers/phn-FR_Vorwahlen.tex index 94658cbce07..965c0259b04 100644 --- a/Master/texmf-dist/tex/latex/phonenumbers/phn-FR_Vorwahlen.tex +++ b/Master/texmf-dist/tex/latex/phonenumbers/phn-FR_Vorwahlen.tex @@ -1,9 +1,10 @@ % phonenumbers package: French area codes -% Datum: 6. November 2016 +% Datum: 20. August 2021 \clist_const:Nn \c_phone_FR_ortsvorwahlen_clist {01, 02, 0262, 026200, +0263, 0269, 03, 04, @@ -22,5 +23,26 @@ 0696, 0697, 07, +0700, +07005, +07006, +07007, +07008, +07009, 08, -09} +09, +09475, +09476, +09477, +09478, +09479, +09760, +09761, +09762, +09763, +09764, +09765, +09766, +09767, +09768, +09769} diff --git a/Master/texmf-dist/tex/latex/phonenumbers/phn-UK_Ortsnamen.tex b/Master/texmf-dist/tex/latex/phonenumbers/phn-UK_Ortsnamen.tex index ac203278d86..29c8c2d1387 100644 --- a/Master/texmf-dist/tex/latex/phonenumbers/phn-UK_Ortsnamen.tex +++ b/Master/texmf-dist/tex/latex/phonenumbers/phn-UK_Ortsnamen.tex @@ -1,5 +1,5 @@ % phonenumbers package: British place names -% Datum: 5. August 2018 +% Datum: 20. August 2021 \tl_const:cn {c_phone_UK_ortsname_0113_tl} {Leeds} \tl_const:cn {c_phone_UK_ortsname_0114_tl} {Sheffield} \tl_const:cn {c_phone_UK_ortsname_0115_tl} {Nottingham} @@ -234,7 +234,7 @@ \tl_const:cn {c_phone_UK_ortsname_01493_tl} {Great~Yarmouth} \tl_const:cn {c_phone_UK_ortsname_01494_tl} {High~Wycombe} \tl_const:cn {c_phone_UK_ortsname_01495_tl} {Pontypool} -\tl_const:cn {c_phone_UK_ortsname_01496_tl} {Islay} +\tl_const:cn {c_phone_UK_ortsname_01496_tl} {Islay~and~Jura} \tl_const:cn {c_phone_UK_ortsname_01497_tl} {Hay-on-Wye} \tl_const:cn {c_phone_UK_ortsname_01499_tl} {Inveraray} \tl_const:cn {c_phone_UK_ortsname_01501_tl} {Harthill} @@ -522,7 +522,7 @@ \tl_const:cn {c_phone_UK_ortsname_01876_tl} {North~Uist,~Outer~Hebrides} \tl_const:cn {c_phone_UK_ortsname_01877_tl} {Callander} \tl_const:cn {c_phone_UK_ortsname_01878_tl} {South~Uist,~Outer~Hebrides} -\tl_const:cn {c_phone_UK_ortsname_01879_tl} {Scarinish} +\tl_const:cn {c_phone_UK_ortsname_01879_tl} {Tiree~and~Coll,~Inner~Hebrides} \tl_const:cn {c_phone_UK_ortsname_01880_tl} {Tarbert} \tl_const:cn {c_phone_UK_ortsname_01882_tl} {Kinloch~Rannoch} \tl_const:cn {c_phone_UK_ortsname_01883_tl} {Caterham} @@ -631,6 +631,7 @@ \tl_const:cn {c_phone_UK_ortsname_05601_tl} {Electronic~communications~service} \tl_const:cn {c_phone_UK_ortsname_05602_tl} {Electronic~communications~service} \tl_const:cn {c_phone_UK_ortsname_05603_tl} {Electronic~communications~service} +\tl_const:cn {c_phone_UK_ortsname_05604_tl} {Electronic~communications~service} \tl_const:cn {c_phone_UK_ortsname_07000_tl} {Personal~number} \tl_const:cn {c_phone_UK_ortsname_07002_tl} {Personal~number} \tl_const:cn {c_phone_UK_ortsname_07003_tl} {Personal~number} @@ -742,6 +743,15 @@ \tl_const:cn {c_phone_UK_ortsname_07340_tl} {Mobile~phone} \tl_const:cn {c_phone_UK_ortsname_07341_tl} {Mobile~phone} \tl_const:cn {c_phone_UK_ortsname_07342_tl} {Mobile~phone} +\tl_const:cn {c_phone_UK_ortsname_07354_tl} {Mobile~phone} +\tl_const:cn {c_phone_UK_ortsname_07355_tl} {Mobile~phone} +\tl_const:cn {c_phone_UK_ortsname_07357_tl} {Mobile~phone} +\tl_const:cn {c_phone_UK_ortsname_07359_tl} {Mobile~phone} +\tl_const:cn {c_phone_UK_ortsname_07360_tl} {Mobile~phone} +\tl_const:cn {c_phone_UK_ortsname_07361_tl} {Mobile~phone} +\tl_const:cn {c_phone_UK_ortsname_07362_tl} {Mobile~phone} +\tl_const:cn {c_phone_UK_ortsname_07363_tl} {Mobile~phone} +\tl_const:cn {c_phone_UK_ortsname_07364_tl} {Mobile~phone} \tl_const:cn {c_phone_UK_ortsname_07365_tl} {Mobile~phone} \tl_const:cn {c_phone_UK_ortsname_07366_tl} {Mobile~phone} \tl_const:cn {c_phone_UK_ortsname_07367_tl} {Mobile~phone} @@ -811,7 +821,6 @@ \tl_const:cn {c_phone_UK_ortsname_07436_tl} {Mobile~phone} \tl_const:cn {c_phone_UK_ortsname_07437_tl} {Mobile~phone} \tl_const:cn {c_phone_UK_ortsname_07438_tl} {Mobile~phone} -\tl_const:cn {c_phone_UK_ortsname_07439_tl} {Mobile~phone} \tl_const:cn {c_phone_UK_ortsname_07440_tl} {Mobile~phone} \tl_const:cn {c_phone_UK_ortsname_07441_tl} {Mobile~phone} \tl_const:cn {c_phone_UK_ortsname_07442_tl} {Mobile~phone} @@ -1071,7 +1080,7 @@ \tl_const:cn {c_phone_UK_ortsname_07778_tl} {Mobile~phone} \tl_const:cn {c_phone_UK_ortsname_07779_tl} {Mobile~phone} \tl_const:cn {c_phone_UK_ortsname_07780_tl} {Mobile~phone} -\tl_const:cn {c_phone_UK_ortsname_07781_tl} {Mobile~phone} +\tl_const:cn {c_phone_UK_ortsname_07781_tl} {Mobile~phone~(Guernsey)} \tl_const:cn {c_phone_UK_ortsname_07782_tl} {Mobile~phone} \tl_const:cn {c_phone_UK_ortsname_07783_tl} {Mobile~phone} \tl_const:cn {c_phone_UK_ortsname_07784_tl} {Mobile~phone} @@ -1087,7 +1096,7 @@ \tl_const:cn {c_phone_UK_ortsname_07794_tl} {Mobile~phone} \tl_const:cn {c_phone_UK_ortsname_07795_tl} {Mobile~phone} \tl_const:cn {c_phone_UK_ortsname_07796_tl} {Mobile~phone} -\tl_const:cn {c_phone_UK_ortsname_07797_tl} {Mobile~phone} +\tl_const:cn {c_phone_UK_ortsname_07797_tl} {Mobile~phone~(Jersey)} \tl_const:cn {c_phone_UK_ortsname_07798_tl} {Mobile~phone} \tl_const:cn {c_phone_UK_ortsname_07799_tl} {Mobile~phone} \tl_const:cn {c_phone_UK_ortsname_07800_tl} {Mobile~phone} @@ -1291,6 +1300,7 @@ \tl_const:cn {c_phone_UK_ortsname_0870_tl} {Special~service~higher~rate} \tl_const:cn {c_phone_UK_ortsname_0871_tl} {Special~service~higher~rate} \tl_const:cn {c_phone_UK_ortsname_0872_tl} {Special~service~higher~rate} +\tl_const:cn {c_phone_UK_ortsname_0897_tl} {Inserted~network~number} \tl_const:cn {c_phone_UK_ortsname_0899_tl} {Inbound~routing~code} \tl_const:cn {c_phone_UK_ortsname_0900_tl} {Special~service~premium~rate} \tl_const:cn {c_phone_UK_ortsname_0901_tl} {Special~service~premium~rate} diff --git a/Master/texmf-dist/tex/latex/phonenumbers/phn-UK_Vorwahlen.tex b/Master/texmf-dist/tex/latex/phonenumbers/phn-UK_Vorwahlen.tex index b471389c15a..62a5ab2422b 100644 --- a/Master/texmf-dist/tex/latex/phonenumbers/phn-UK_Vorwahlen.tex +++ b/Master/texmf-dist/tex/latex/phonenumbers/phn-UK_Vorwahlen.tex @@ -1,5 +1,5 @@ % phonenumbers package: British area codes -% Datum: 5. August 2018 +% Datum: 20. August 2021 \clist_const:Nn \c_phone_UK_ortsvorwahlen_clist {0113, 0114, 0115, @@ -637,6 +637,7 @@ 05601, 05602, 05603, +05604, 07000, 07002, 07003, @@ -748,6 +749,15 @@ 07340, 07341, 07342, +07354, +07355, +07357, +07359, +07360, +07361, +07362, +07363, +07364, 07365, 07366, 07367, @@ -817,7 +827,6 @@ 07436, 07437, 07438, -07439, % nicht mehr in Gebrauch 07440, 07441, 07442, @@ -1297,6 +1306,7 @@ 0870, 0871, 0872, +0897, 0899, 0900, 0901, diff --git a/Master/texmf-dist/tex/latex/phonenumbers/phn-US_Ortsnamen.tex b/Master/texmf-dist/tex/latex/phonenumbers/phn-US_Ortsnamen.tex index 11c6978dac8..a53bf4dec7d 100644 --- a/Master/texmf-dist/tex/latex/phonenumbers/phn-US_Ortsnamen.tex +++ b/Master/texmf-dist/tex/latex/phonenumbers/phn-US_Ortsnamen.tex @@ -1,5 +1,5 @@ % phonenumbers package: place names of the North American Numbering Plan -% Datum: 5. August 2018 +% Datum: 20. August 2021 \tl_const:cn {c_phone_US_ortsname_201_tl} {New~Jersey} \tl_const:cn {c_phone_US_ortsname_202_tl} {Washington,~D.\,C.} \tl_const:cn {c_phone_US_ortsname_203_tl} {Connecticut} @@ -23,6 +23,7 @@ \tl_const:cn {c_phone_US_ortsname_224_tl} {Illinois} \tl_const:cn {c_phone_US_ortsname_225_tl} {Louisiana} \tl_const:cn {c_phone_US_ortsname_226_tl} {Ontario} +\tl_const:cn {c_phone_US_ortsname_227_tl} {Maryland} \tl_const:cn {c_phone_US_ortsname_228_tl} {Mississippi} \tl_const:cn {c_phone_US_ortsname_229_tl} {Georgia} \tl_const:cn {c_phone_US_ortsname_231_tl} {Michigan} @@ -48,6 +49,7 @@ \tl_const:cn {c_phone_US_ortsname_269_tl} {Michigan} \tl_const:cn {c_phone_US_ortsname_270_tl} {Kentucky} \tl_const:cn {c_phone_US_ortsname_272_tl} {Pennsylvania} +\tl_const:cn {c_phone_US_ortsname_274_tl} {Wisconsin} \tl_const:cn {c_phone_US_ortsname_276_tl} {Virginia} \tl_const:cn {c_phone_US_ortsname_279_tl} {California} \tl_const:cn {c_phone_US_ortsname_281_tl} {Texas} @@ -84,6 +86,7 @@ \tl_const:cn {c_phone_US_ortsname_337_tl} {Louisiana} \tl_const:cn {c_phone_US_ortsname_339_tl} {Massachusetts} \tl_const:cn {c_phone_US_ortsname_340_tl} {U.\,S.~Virgin~Islands} +\tl_const:cn {c_phone_US_ortsname_341_tl} {California} \tl_const:cn {c_phone_US_ortsname_343_tl} {Ontario} \tl_const:cn {c_phone_US_ortsname_345_tl} {Cayman~Islands} \tl_const:cn {c_phone_US_ortsname_346_tl} {Texas} @@ -95,6 +98,7 @@ \tl_const:cn {c_phone_US_ortsname_364_tl} {Kentucky} \tl_const:cn {c_phone_US_ortsname_365_tl} {Ontario} \tl_const:cn {c_phone_US_ortsname_367_tl} {Quebec} +\tl_const:cn {c_phone_US_ortsname_368_tl} {Alberta} \tl_const:cn {c_phone_US_ortsname_380_tl} {Ohio} \tl_const:cn {c_phone_US_ortsname_385_tl} {Utah} \tl_const:cn {c_phone_US_ortsname_386_tl} {Florida} @@ -119,6 +123,7 @@ \tl_const:cn {c_phone_US_ortsname_423_tl} {Tennessee} \tl_const:cn {c_phone_US_ortsname_424_tl} {California} \tl_const:cn {c_phone_US_ortsname_425_tl} {Washington} +\tl_const:cn {c_phone_US_ortsname_428_tl} {New~Brunswick} \tl_const:cn {c_phone_US_ortsname_430_tl} {Texas} \tl_const:cn {c_phone_US_ortsname_431_tl} {Manitoba} \tl_const:cn {c_phone_US_ortsname_432_tl} {Texas} @@ -131,12 +136,16 @@ \tl_const:cn {c_phone_US_ortsname_442_tl} {California} \tl_const:cn {c_phone_US_ortsname_443_tl} {Maryland} \tl_const:cn {c_phone_US_ortsname_445_tl} {Pennsylvania} +\tl_const:cn {c_phone_US_ortsname_447_tl} {Illinois} +\tl_const:cn {c_phone_US_ortsname_448_tl} {Florida} \tl_const:cn {c_phone_US_ortsname_450_tl} {Quebec} \tl_const:cn {c_phone_US_ortsname_458_tl} {Oregon} \tl_const:cn {c_phone_US_ortsname_463_tl} {Indiana} +\tl_const:cn {c_phone_US_ortsname_464_tl} {Illinois} \tl_const:cn {c_phone_US_ortsname_469_tl} {Texas} \tl_const:cn {c_phone_US_ortsname_470_tl} {Georgia} \tl_const:cn {c_phone_US_ortsname_473_tl} {Grenada} +\tl_const:cn {c_phone_US_ortsname_474_tl} {Saskatchewan} \tl_const:cn {c_phone_US_ortsname_475_tl} {Connecticut} \tl_const:cn {c_phone_US_ortsname_478_tl} {Georgia} \tl_const:cn {c_phone_US_ortsname_479_tl} {Arkansas} @@ -177,12 +186,14 @@ \tl_const:cn {c_phone_US_ortsname_567_tl} {Ohio} \tl_const:cn {c_phone_US_ortsname_570_tl} {Pennsylvania} \tl_const:cn {c_phone_US_ortsname_571_tl} {Virginia} +\tl_const:cn {c_phone_US_ortsname_572_tl} {Oklahoma} \tl_const:cn {c_phone_US_ortsname_573_tl} {Missouri} \tl_const:cn {c_phone_US_ortsname_574_tl} {Indiana} \tl_const:cn {c_phone_US_ortsname_575_tl} {New~Mexico} \tl_const:cn {c_phone_US_ortsname_579_tl} {Quebec} \tl_const:cn {c_phone_US_ortsname_580_tl} {Oklahoma} \tl_const:cn {c_phone_US_ortsname_581_tl} {Quebec} +\tl_const:cn {c_phone_US_ortsname_582_tl} {Pennsylvania} \tl_const:cn {c_phone_US_ortsname_585_tl} {New~York} \tl_const:cn {c_phone_US_ortsname_586_tl} {Michigan} \tl_const:cn {c_phone_US_ortsname_587_tl} {Alberta} @@ -220,8 +231,10 @@ \tl_const:cn {c_phone_US_ortsname_649_tl} {Turks~and~Caicos~Islands} \tl_const:cn {c_phone_US_ortsname_650_tl} {California} \tl_const:cn {c_phone_US_ortsname_651_tl} {Minnesota} +\tl_const:cn {c_phone_US_ortsname_656_tl} {Florida} \tl_const:cn {c_phone_US_ortsname_657_tl} {California} \tl_const:cn {c_phone_US_ortsname_658_tl} {Jamaica} +\tl_const:cn {c_phone_US_ortsname_659_tl} {Alabama} \tl_const:cn {c_phone_US_ortsname_660_tl} {Missouri} \tl_const:cn {c_phone_US_ortsname_661_tl} {California} \tl_const:cn {c_phone_US_ortsname_662_tl} {Mississippi} @@ -236,6 +249,7 @@ \tl_const:cn {c_phone_US_ortsname_681_tl} {West~Virginia} \tl_const:cn {c_phone_US_ortsname_682_tl} {Texas} \tl_const:cn {c_phone_US_ortsname_684_tl} {American~Samoa} +\tl_const:cn {c_phone_US_ortsname_689_tl} {Florida} \tl_const:cn {c_phone_US_ortsname_701_tl} {North~Dakota} \tl_const:cn {c_phone_US_ortsname_702_tl} {Nevada} \tl_const:cn {c_phone_US_ortsname_703_tl} {Virginia} @@ -259,11 +273,13 @@ \tl_const:cn {c_phone_US_ortsname_725_tl} {Nevada} \tl_const:cn {c_phone_US_ortsname_726_tl} {Texas} \tl_const:cn {c_phone_US_ortsname_727_tl} {Florida} +\tl_const:cn {c_phone_US_ortsname_730_tl} {Illinois} \tl_const:cn {c_phone_US_ortsname_731_tl} {Tennessee} \tl_const:cn {c_phone_US_ortsname_732_tl} {New~Jersey} \tl_const:cn {c_phone_US_ortsname_734_tl} {Michigan} \tl_const:cn {c_phone_US_ortsname_737_tl} {Texas} \tl_const:cn {c_phone_US_ortsname_740_tl} {Ohio} +\tl_const:cn {c_phone_US_ortsname_742_tl} {Ontario} \tl_const:cn {c_phone_US_ortsname_743_tl} {North~Carolina} \tl_const:cn {c_phone_US_ortsname_747_tl} {California} \tl_const:cn {c_phone_US_ortsname_754_tl} {Florida} @@ -276,6 +292,7 @@ \tl_const:cn {c_phone_US_ortsname_767_tl} {Dominica} \tl_const:cn {c_phone_US_ortsname_769_tl} {Mississippi} \tl_const:cn {c_phone_US_ortsname_770_tl} {Georgia} +\tl_const:cn {c_phone_US_ortsname_771_tl} {Washington,~D.\,C.} \tl_const:cn {c_phone_US_ortsname_772_tl} {Florida} \tl_const:cn {c_phone_US_ortsname_773_tl} {Illinois} \tl_const:cn {c_phone_US_ortsname_774_tl} {Massachusetts} @@ -309,12 +326,15 @@ \tl_const:cn {c_phone_US_ortsname_819_tl} {Quebec} \tl_const:cn {c_phone_US_ortsname_820_tl} {California} \tl_const:cn {c_phone_US_ortsname_825_tl} {Alberta} +\tl_const:cn {c_phone_US_ortsname_826_tl} {Virginia} \tl_const:cn {c_phone_US_ortsname_828_tl} {North~Carolina} \tl_const:cn {c_phone_US_ortsname_829_tl} {Dominican~Republic} \tl_const:cn {c_phone_US_ortsname_830_tl} {Texas} \tl_const:cn {c_phone_US_ortsname_831_tl} {California} \tl_const:cn {c_phone_US_ortsname_832_tl} {Texas} \tl_const:cn {c_phone_US_ortsname_838_tl} {New~York} +\tl_const:cn {c_phone_US_ortsname_839_tl} {South~Carolina} +\tl_const:cn {c_phone_US_ortsname_840_tl} {California} \tl_const:cn {c_phone_US_ortsname_843_tl} {South~Carolina} \tl_const:cn {c_phone_US_ortsname_845_tl} {New~York} \tl_const:cn {c_phone_US_ortsname_847_tl} {Illinois} @@ -371,7 +391,10 @@ \tl_const:cn {c_phone_US_ortsname_939_tl} {Puerto~Rico} \tl_const:cn {c_phone_US_ortsname_940_tl} {Texas} \tl_const:cn {c_phone_US_ortsname_941_tl} {Florida} +\tl_const:cn {c_phone_US_ortsname_943_tl} {Georgia} +\tl_const:cn {c_phone_US_ortsname_945_tl} {Texas} \tl_const:cn {c_phone_US_ortsname_947_tl} {Michigan} +\tl_const:cn {c_phone_US_ortsname_948_tl} {Virginia} \tl_const:cn {c_phone_US_ortsname_949_tl} {California} \tl_const:cn {c_phone_US_ortsname_951_tl} {California} \tl_const:cn {c_phone_US_ortsname_952_tl} {Minnesota} @@ -392,6 +415,10 @@ \tl_const:cn {c_phone_US_ortsname_500_tl} {Non-Geographic~Service} \tl_const:cn {c_phone_US_ortsname_521_tl} {Non-Geographic~Service} \tl_const:cn {c_phone_US_ortsname_522_tl} {Non-Geographic~Service} +\tl_const:cn {c_phone_US_ortsname_523_tl} {Non-Geographic~Service} +\tl_const:cn {c_phone_US_ortsname_524_tl} {Non-Geographic~Service} +\tl_const:cn {c_phone_US_ortsname_525_tl} {Non-Geographic~Service} +\tl_const:cn {c_phone_US_ortsname_526_tl} {Non-Geographic~Service} \tl_const:cn {c_phone_US_ortsname_533_tl} {Non-Geographic~Service} \tl_const:cn {c_phone_US_ortsname_544_tl} {Non-Geographic~Service} \tl_const:cn {c_phone_US_ortsname_566_tl} {Non-Geographic~Service} diff --git a/Master/texmf-dist/tex/latex/phonenumbers/phn-US_Vorwahlen.tex b/Master/texmf-dist/tex/latex/phonenumbers/phn-US_Vorwahlen.tex index b8989839b56..c79902373d9 100644 --- a/Master/texmf-dist/tex/latex/phonenumbers/phn-US_Vorwahlen.tex +++ b/Master/texmf-dist/tex/latex/phonenumbers/phn-US_Vorwahlen.tex @@ -1,5 +1,5 @@ % phonenumbers package: area codes of the North American Numbering Plan -% Datum: 5. August 2018 +% Datum: 20. August 2021 \clist_const:Nn \c_phone_US_ortsvorwahlen_clist {201, 202, 203, @@ -23,6 +23,7 @@ 224, 225, 226, +227, % Freischaltungsdatum noch unklar 228, 229, 231, @@ -48,6 +49,7 @@ 269, 270, 272, +274, % Freischaltungsdatum noch unklar 276, 279, 281, @@ -84,6 +86,7 @@ 337, 339, 340, +341, 343, 345, 346, @@ -95,6 +98,7 @@ 364, 365, 367, +368, % ab 2022-04-23 380, 385, 386, @@ -119,6 +123,7 @@ 423, 424, 425, +428, % ab 2023-04-29 430, 431, 432, @@ -131,12 +136,16 @@ 442, 443, 445, +447, +448, 450, 458, 463, +464, % Freischaltungsdatum noch unklar 469, 470, 473, +474, % ab 2021-10-02 475, 478, 479, @@ -177,12 +186,14 @@ 567, 570, 571, +572, 573, 574, 575, 579, 580, 581, +582, 585, 586, 587, @@ -220,8 +231,10 @@ 649, 650, 651, +656, % ab 2022-02-22 657, 658, +659, 660, 661, 662, @@ -236,6 +249,7 @@ 681, 682, 684, +689, 701, 702, 703, @@ -259,11 +273,13 @@ 725, 726, 727, +730, % Freischaltungsdatum noch unklar 731, 732, 734, 737, 740, +742, % ab 2021-10-16 743, 747, 754, @@ -276,6 +292,7 @@ 767, 769, 770, +771, % ab 2021-11-09 772, 773, 774, @@ -309,12 +326,15 @@ 819, 820, 825, +826, % ab 2022-06-14 828, 829, 830, 831, 832, 838, +839, +840, 843, 845, 847, @@ -371,7 +391,10 @@ 939, 940, 941, +943, % ab 2022-03-15 +945, 947, +948, % ab 2022-05-09 949, 951, 952, @@ -390,8 +413,10 @@ 986, 989} \clist_const:Nn \c_phone_US_obligatorische_ortsvorwahlen_clist {201, +% 202, bisher 7D, demnächst 10D (Einführung von 771) 203, 204, +205, 206, 208, 210, @@ -399,10 +424,12 @@ 213, 214, 215, +217, 220, 223, 224, 226, +227, % Freischaltungsdatum noch unklar 234, 236, 240, @@ -414,6 +441,7 @@ 267, 270, 272, +274, % Freischaltungsdatum noch unklar 279, 281, 289, @@ -432,6 +460,7 @@ 332, 336, 339, +341, 343, 346, 347, @@ -440,11 +469,13 @@ 364, 365, 367, +368, % ab 2022-04-23 380, 385, 402, 403, 404, +405, 407, 408, 410, @@ -455,6 +486,7 @@ 419, 424, 425, +428, % ab 2023-04-29 430, 431, 437, @@ -462,15 +494,21 @@ 442, 443, 445, +447, +448, 450, 458, 463, +464, % Freischaltungsdatum noch unklar 469, 470, +474, % ab 2021-10-02 475, 484, 503, +% 506, bisher 7D, demnächst 10D (Einführung von 428) 508, +510, 512, 514, 518, @@ -478,6 +516,7 @@ 531, 534, 539, +% 540, bisher 7D, demnächst 10D (Einführung von 826) 541, 548, 551, @@ -485,8 +524,10 @@ 567, 570, 571, +572, 579, 581, +582, 587, 601, 604, @@ -496,6 +537,7 @@ 614, 615, 617, +% 618, bisher 7D, demnächst 10D (Einführung von 730) 619, 628, 629, @@ -505,8 +547,10 @@ 640, 646, 647, +656, % ab 2022-02-22 657, 658, +659, 667, 669, 672, @@ -514,30 +558,34 @@ 680, 681, 682, +689, 702, 703, 704, 706, -% 709, Bisher 7D, demnächst 10D (Einführung von 879 in Neufundland) +% 708, bisher 7D, demnächst 10D (Einführung von 464) 713, 714, -715, +% 715, 2021-08-16 nicht mehr in der Liste aufgeführt, aber Overlay zu 534 717, 718, 720, 724, 725, 726, +730, % Freischaltungsdatum noch unklar 732, 737, 740, 743, 747, 754, +% 757, bisher 7D, demnächst 10D (Einführung von 948) 760, 762, 769, 770, +771, % ab 2021-11-09 773, 774, 778, @@ -548,22 +596,29 @@ 786, 787, 801, +803, 805, 809, 812, +% 813, bisher 7D, demnächst 10D (Einführung von 656) +814, 815, 817, 818, 819, 820, 825, +826, % ab 2022-06-14 829, 832, 838, +839, +840, 843, 847, 848, 849, +850, 854, 857, 858, @@ -572,20 +627,25 @@ 872, 873, 878, -879, 902, 903, 905, +909, 916, 917, 918, 919, +% 920, bisher 7D, demnächst 10D (Einführung von 274) 929, 930, 934, +937, 938, 939, +943, % ab 2022-03-15 +945, 947, +948, % ab 2022-05-09 954, 959, 971, @@ -598,6 +658,10 @@ \clist_const:Nn \c_phone_US_sondervorwahlen_clist {500, 521, 522, +523, +524, +525, +526, 533, 544, 566, diff --git a/Master/texmf-dist/tex/latex/phonenumbers/phonenumbers.sty b/Master/texmf-dist/tex/latex/phonenumbers/phonenumbers.sty index c91c3254a56..5b060f7b6ef 100644 --- a/Master/texmf-dist/tex/latex/phonenumbers/phonenumbers.sty +++ b/Master/texmf-dist/tex/latex/phonenumbers/phonenumbers.sty @@ -2,8 +2,8 @@ % LaTeX-Paket zur Formatierung von Telefonnummern % LaTeX package for formatting telephone numbers % Autor: K. Wehr -% Version: 2.2 -% Datum: 18. August 2019 +% Version: 2.3 +% Datum: 20. August 2021 % This work may be distributed and/or modified under the % conditions of the LaTeX Project Public License, either version 1.3 @@ -14,8 +14,7 @@ % version 2005/12/01 or later. -\RequirePackage{xparse} -\ProvidesExplPackage {phonenumbers} {2019/08/18} {2.2} {Telephone number package} +\ProvidesExplPackage {phonenumbers} {2021-08-20} {2.3} {Telephone number package} \RequirePackage{l3keys2e} \RequirePackage{ltxcmds} @@ -23,9 +22,9 @@ \clist_const:Nn \c_phone_ziffern_clist {0,1,2,3,4,5,6,7,8,9} \clist_const:Nn \c_phone_gliederungszeichen_clist {(,),[,],/} -\tl_const:Nn \c_phone_bindestrich_tl {\kern1pt - \kern1pt} -\tl_const:Nn \c_phone_schraegstrich_tl {\kern1pt \slash \kern1pt} -\tl_const:Nn \c_phone_pluszeichen_tl {+ \kern1pt} +\tl_const:Nn \c_phone_bindestrich_tl { \kern 1pt - \kern 1pt } +\tl_const:Nn \c_phone_schraegstrich_tl { \kern 1pt \slash \kern 1pt } +\tl_const:Nn \c_phone_pluszeichen_tl { + \kern 1pt } \str_new:N \l_phone_land_str \str_new:N \l_phone_heimatland_str @@ -35,6 +34,7 @@ \str_new:N \l_phone_vorwahltrennung_str \str_new:N \l_phone_auslandsvorwahltrennung_str \str_new:N \l_phone_heimatvorwahl_str +\str_new:N \l_phone_rufnummer_str \str_new:N \l_phone_bereinigte_nummer_str \str_new:N \l_phone_bereinigte_durchwahl_str \str_new:N \l_phone_linktext_str @@ -55,11 +55,10 @@ \cs_generate_variant:Nn \str_if_eq:nnT {xnT} \cs_generate_variant:Nn \str_if_eq:nnF {xnF} \cs_generate_variant:Nn \str_if_eq:nnTF {xnTF} -\cs_generate_variant:Nn \str_case:nn {Vn,xn} +\cs_generate_variant:Nn \str_case:nn {xn} \cs_generate_variant:Nn \str_case:nnT {xnT} -\cs_generate_variant:Nn \str_case:nnF {VnF,xnF} -\cs_generate_variant:Nn \str_case:nnTF {VnTF,xnTF} -\cs_generate_variant:Nn \str_put_right:Nn {NV} +\cs_generate_variant:Nn \str_case:nnF {xnF} +\cs_generate_variant:Nn \str_case:nnTF {xnTF} \cs_generate_variant:Nn \str_tail:n {x} \cs_generate_variant:Nn \tl_put_right:Nn {Nv} \cs_generate_variant:Nn \msg_warning:nnn {onn} @@ -68,17 +67,20 @@ \msg_new:nnn {phonenumbers} {illegal character} { - illegal~character~'#1'~in~phone~number~\msg_line_context: + illegal~character~'#1'~in~phone~number~ + \msg_line_context: } \msg_new:nnn {phonenumbers} {empty input} { - empty~phone~number~\msg_line_context: + empty~phone~number~ + \msg_line_context: } \msg_new:nnn {phonenumbers} {empty extension} { - empty~extension~(Durchwahl)~\msg_line_context: + empty~extension~(Durchwahl)~ + \msg_line_context: } \msg_new:nnn {phonenumbers} {illegal extension} @@ -118,47 +120,79 @@ \msg_new:nnn {phonenumbers} {illegal start of subscriber number} { - subscriber~number~(Teilnehmerrufnummer)~starts~with~#1~in~\phone_landesadjektiv:V \l_phone_land_str\ phone~number~\msg_line_context: - } + subscriber~number~(Teilnehmerrufnummer)~starts~with~#1~in~ + \phone_landesadjektiv:V \l_phone_land_str + \c_space_tl + phone~number~ + \msg_line_context: + } \msg_new:nnn {phonenumbers} {missing subscriber number} { - no~subscriber~number~(Teilnehmerrufnummer)~given~in~\phone_landesadjektiv:V \l_phone_land_str\ phone~number~\msg_line_context: + no~subscriber~number~(Teilnehmerrufnummer)~given~in~ + \phone_landesadjektiv:V \l_phone_land_str + \c_space_tl + phone~number~ + \msg_line_context: } \msg_new:nnn {phonenumbers} {invalid area code} { - unknown~area~code~(Vorwahl)~in~\phone_landesadjektiv:V \l_phone_land_str\ phone~number~\msg_line_context: + unknown~area~code~(Vorwahl)~in~ + \phone_landesadjektiv:V \l_phone_land_str + \c_space_tl + phone~number~ + \msg_line_context: } \msg_new:nnn {phonenumbers} {number too short} { - \phone_landesadjektiv:V \l_phone_land_str\ #1~number~has~less~than~#2~digits~\msg_line_context: + \phone_landesadjektiv:V \l_phone_land_str + \c_space_tl + #1~number~has~less~than~#2~digits~ + \msg_line_context: } \msg_new:nnn {phonenumbers} {number too long} { - \phone_landesadjektiv:V \l_phone_land_str\ #1~number~has~more~than~#2~digits~\msg_line_context: + \phone_landesadjektiv:V \l_phone_land_str + \c_space_tl + #1~number~has~more~than~#2~digits~ + \msg_line_context: } \msg_new:nnn {phonenumbers} {home country set} { - home~country~set~to~\l_phone_heimatland_str\ \msg_line_context: + home~country~set~to~ + \l_phone_heimatland_str + \c_space_tl + \msg_line_context: } \msg_new:nnn {phonenumbers} {home country cleared} { - home~country~\l_phone_heimatland_str\ has~been~deleted~\msg_line_context: + home~country~ + \l_phone_heimatland_str + \c_space_tl + has~been~deleted~ + \msg_line_context: } \msg_new:nnn {phonenumbers} {home area code set} { - Your~home~is~in~\tl_use:c {c_phone_\l_phone_heimatland_str _ortsname_#1_tl}~(area~code~#1)~according~to~line~\msg_line_number:. + Your~home~is~in~ + \tl_use:c {c_phone_\l_phone_heimatland_str _ortsname_#1_tl} + \c_space_tl + (area~code~#1)~according~to~line~ + \msg_line_number:. } \msg_new:nnn {phonenumbers} {home area code cleared} { - home~area~code~\l_phone_heimatvorwahl_str\ has~been~deleted~\msg_line_context: + home~area~code~ + \l_phone_heimatvorwahl_str + \c_space_tl + has~been~deleted~\msg_line_context: } \msg_new:nnn {phonenumbers} {invalid home area code} @@ -172,12 +206,14 @@ \msg_new:nnn {phonenumbers} {invalid country code} { - illegal~country~code~\msg_line_context: + illegal~country~code~ + \msg_line_context: } \msg_new:nnn {phonenumbers} {country code only} { - phone~number~consists~of~a~country~code~only~\msg_line_context: + phone~number~consists~of~a~country~code~only~ + \msg_line_context: } \cs_new:Npn \phone_landesadjektiv:n #1 @@ -372,30 +408,53 @@ } } -\cs_new:Npn \phone_gruppierte_ziffernfolge_schreiben:n #1 + +\cs_new_protected:Npn \phone_von_vorne_gruppiert_schreiben:n #1 { - \int_set:Nn \l_phone_ziffernzahl_int {\tl_count:n {#1}} + \int_set:Nn \l_phone_ziffernzahl_int { \tl_count:n {#1} } + \tl_clear:N \l_phone_formatierte_nummer_tl + + \int_step_inline:nn {\l_phone_ziffernzahl_int} + { + \tl_put_right:Nx \l_phone_formatierte_nummer_tl { \tl_item:nn {#1} {##1} } + + \int_if_even:nT {##1} + { + \int_compare:nNnT {##1} < {\l_phone_ziffernzahl_int} + { \tl_put_right:Nn \l_phone_formatierte_nummer_tl {\,} } + } + } + + \tl_put_right:NV \l_phone_ausgabetext_tl \l_phone_formatierte_nummer_tl + } + +\cs_generate_variant:Nn \phone_von_vorne_gruppiert_schreiben:n {x,V} + + +\cs_new_protected:Npn \phone_von_hinten_gruppiert_schreiben:n #1 + { + \int_set:Nn \l_phone_ziffernzahl_int { \tl_count:n {#1} } \tl_clear:N \l_phone_formatierte_nummer_tl \int_step_inline:nnnn {\l_phone_ziffernzahl_int} {-1} {1} { - \tl_put_left:Nx \l_phone_formatierte_nummer_tl {\tl_item:nn {#1} {##1}} + \tl_put_left:Nx \l_phone_formatierte_nummer_tl { \tl_item:nn {#1} {##1} } - \int_if_even:nT {\l_phone_ziffernzahl_int + 1 - ##1} + \int_if_even:nT { \l_phone_ziffernzahl_int + 1 - ##1 } { \int_compare:nNnT {##1} > {1} - {\tl_put_left:Nn \l_phone_formatierte_nummer_tl {\,}} + { \tl_put_left:Nn \l_phone_formatierte_nummer_tl {\,} } } } \tl_put_right:NV \l_phone_ausgabetext_tl \l_phone_formatierte_nummer_tl } -\cs_generate_variant:Nn \phone_gruppierte_ziffernfolge_schreiben:n {V,x} +\cs_generate_variant:Nn \phone_von_hinten_gruppiert_schreiben:n {x,V} % #1: Landeskennzahl -\cs_new:Npn \phone_auslandsvorwahl_schreiben:n #1 +\cs_new_protected:Npn \phone_auslandsvorwahl_schreiben:n #1 { \str_case:VnTF \l_phone_land_str { @@ -406,9 +465,9 @@ { \str_case:Vn \l_phone_auslandsvorwahltyp_str { - {international} {\tl_put_right:Nn \l_phone_ausgabetext_tl {\c_phone_pluszeichen_tl #1}} - {european} {\phone_gruppierte_ziffernfolge_schreiben:n {00#1}} - {american} {\phone_gruppierte_ziffernfolge_schreiben:n {011#1}} + {international} { \tl_put_right:Nn \l_phone_ausgabetext_tl { \c_phone_pluszeichen_tl #1 } } + {european} { \phone_von_hinten_gruppiert_schreiben:n {00#1} } + {american} { \phone_von_hinten_gruppiert_schreiben:n {011#1} } } } { @@ -461,7 +520,7 @@ % Ziffer eingelesen \str_put_right:Nn \l_phone_bereinigte_nummer_str {##1} - \bool_lazy_and:nnT {\l_phone_erstes_zeichen_bool} {\str_if_eq_p:nn {##1} {0}} + \bool_lazy_and:nnT {\l_phone_erstes_zeichen_bool} { \str_if_eq_p:nn {##1} {0} } { \bool_set_true:N \l_phone_null_am_anfang_bool } @@ -470,9 +529,9 @@ { \bool_set_false:N \l_phone_zweites_zeichen_bool - \bool_lazy_and:nnT {\l_phone_null_am_anfang_bool} {\str_if_eq_p:nn {##1} {0}} + \bool_lazy_and:nnT {\l_phone_null_am_anfang_bool} { \str_if_eq_p:nn {##1} {0} } { - \bool_set_true:N \l_phone_auslandsnummer_bool + \bool_set_true:N \l_phone_auslandsnummer_bool \str_clear:N \l_phone_bereinigte_nummer_str } } @@ -510,39 +569,39 @@ \bool_if:NT \l_phone_auslandsnummer_bool { - \int_set:Nn \l_tmpa_int {\str_count:N \l_phone_bereinigte_nummer_str} + \int_set:Nn \l_tmpa_int { \str_count:N \l_phone_bereinigte_nummer_str } \int_compare:nNnTF {\l_tmpa_int} > {1} { - \str_if_eq:xnTF {\str_head:N \l_phone_bereinigte_nummer_str} {1} + \str_if_eq:xnTF { \str_head:N \l_phone_bereinigte_nummer_str } {1} { \str_set:Nn \l_phone_land_str {US} - \str_set:Nx \l_phone_bereinigte_nummer_str {\str_range:Nnn \l_phone_bereinigte_nummer_str {2} {-1}} + \str_set:Nx \l_phone_bereinigte_nummer_str { \str_range:Nnn \l_phone_bereinigte_nummer_str {2} {-1} } } { \int_compare:nNnTF {\l_tmpa_int} > {2} { - \str_case:xnTF {\str_range:Nnn \l_phone_bereinigte_nummer_str {1} {2}} + \str_case:xnTF { \str_range:Nnn \l_phone_bereinigte_nummer_str {1} {2} } { - {33} {\str_set:Nn \l_phone_land_str {FR}} - {43} {\str_set:Nn \l_phone_land_str {AT}} - {44} {\str_set:Nn \l_phone_land_str {UK}} - {49} {\str_set:Nn \l_phone_land_str {DE}} + {33} { \str_set:Nn \l_phone_land_str {FR} } + {43} { \str_set:Nn \l_phone_land_str {AT} } + {44} { \str_set:Nn \l_phone_land_str {UK} } + {49} { \str_set:Nn \l_phone_land_str {DE} } } { - \str_set:Nx \l_phone_bereinigte_nummer_str {\str_range:Nnn \l_phone_bereinigte_nummer_str {3} {-1}} + \str_set:Nx \l_phone_bereinigte_nummer_str { \str_range:Nnn \l_phone_bereinigte_nummer_str {3} {-1} } \str_put_left:Nn \l_phone_bereinigte_nummer_str {0} } { \int_compare:nNnTF {\l_tmpa_int} > {3} { - \str_case:xnTF {\str_range:Nnn \l_phone_bereinigte_nummer_str {1} {3}} + \str_case:xnTF { \str_range:Nnn \l_phone_bereinigte_nummer_str {1} {3} } { - {262} {\str_set:Nx \l_phone_bereinigte_nummer_str {\str_range:Nnn \l_phone_bereinigte_nummer_str {4} {-1}}} + {262} { \str_set:Nx \l_phone_bereinigte_nummer_str { \str_range:Nnn \l_phone_bereinigte_nummer_str {4} {-1} } } {508} { } % Saint-Pierre-et-Miquelon - {590} {\str_set:Nx \l_phone_bereinigte_nummer_str {\str_range:Nnn \l_phone_bereinigte_nummer_str {4} {-1}}} - {594} {\str_set:Nx \l_phone_bereinigte_nummer_str {\str_range:Nnn \l_phone_bereinigte_nummer_str {4} {-1}}} - {596} {\str_set:Nx \l_phone_bereinigte_nummer_str {\str_range:Nnn \l_phone_bereinigte_nummer_str {4} {-1}}} + {590} { \str_set:Nx \l_phone_bereinigte_nummer_str { \str_range:Nnn \l_phone_bereinigte_nummer_str {4} {-1} } } + {594} { \str_set:Nx \l_phone_bereinigte_nummer_str { \str_range:Nnn \l_phone_bereinigte_nummer_str {4} {-1} } } + {596} { \str_set:Nx \l_phone_bereinigte_nummer_str { \str_range:Nnn \l_phone_bereinigte_nummer_str {4} {-1} } } } { \str_set:Nn \l_phone_land_str {FR} @@ -569,7 +628,7 @@ \bool_lazy_and:nnT { - \bool_lazy_or_p:nn {\str_if_eq_p:Vn \l_phone_land_str {DE}} {\str_if_eq_p:Vn \l_phone_land_str {AT}} + \bool_lazy_or_p:nn { \str_if_eq_p:Vn \l_phone_land_str {DE} } { \str_if_eq_p:Vn \l_phone_land_str {AT} } } { \str_if_empty_p:N \l_phone_bereinigte_durchwahl_str @@ -592,7 +651,7 @@ \int_compare:nNnF {\l_phone_bindestrichposition_int} = {-1} { % Nummer enthält einen Bindestrich - \str_set:Nx \l_tmpa_str { \str_range:Nnn \l_phone_bereinigte_nummer_str {1} {\l_phone_bindestrichposition_int - 1} } + \str_set:Nx \l_tmpa_str { \str_range:Nnn \l_phone_bereinigte_nummer_str {1} { \l_phone_bindestrichposition_int - 1 } } \tl_remove_all:Nn \l_tmpa_str {-} \phone_enthaelt_vorwahl:NT \l_tmpa_str @@ -607,13 +666,13 @@ \str_if_eq:xnF { \str_head:N \l_tmpa_str } {0} { \bool_set_true:N \l_tmpa_bool - % Nummer beginnt nicht mit 0 (ist also eine reine Teilnehmerrufnummer) + % Nummer beginnt nicht mit 0 (ist also eine reine Teilnehmerrufnummer) } \bool_if:NT \l_tmpa_bool { % Teil nach dem Bindestrich als Durchwahl abtrennen - \phone_durchwahl_ueberpruefen:x { \str_range:Nnn \l_phone_bereinigte_nummer_str {\l_phone_bindestrichposition_int + 1} {-1} } + \phone_durchwahl_ueberpruefen:x { \str_range:Nnn \l_phone_bereinigte_nummer_str { \l_phone_bindestrichposition_int + 1 } {-1} } \str_set_eq:NN \l_phone_bereinigte_nummer_str \l_tmpa_str } } @@ -626,7 +685,7 @@ % #1: eingebene Durchwahl -\cs_new:Npn \phone_durchwahl_ueberpruefen:n #1 +\cs_new_protected:Npn \phone_durchwahl_ueberpruefen:n #1 { \tl_if_blank:nTF {#1} { @@ -654,7 +713,7 @@ \cs_generate_variant:Nn \phone_durchwahl_ueberpruefen:n {x} -\cs_new:Npn \phone_nummer_ausgeben: +\cs_new_protected:Npn \phone_nummer_ausgeben: { \bool_if:NF \l_phone_eingabe_leer_bool { @@ -671,11 +730,11 @@ } } - \bool_lazy_and:nnTF {\l_phone_nummer_verlinken_bool} {!\str_if_empty_p:N \l_phone_linktext_str} + \bool_lazy_and:nnTF {\l_phone_nummer_verlinken_bool} { ! \str_if_empty_p:N \l_phone_linktext_str } { \ltx@ifpackageloaded {hyperref} { - \href{tel\c_colon_str\l_phone_linktext_str}{\l_phone_ausgabetext_tl} + \href { tel \c_colon_str \l_phone_linktext_str } {\l_phone_ausgabetext_tl} } { \l_phone_ausgabetext_tl @@ -686,17 +745,18 @@ } } -\cs_new:Npn \phone_vorwahlliste_ausgeben:n #1 +\cs_new_protected:Npn \phone_vorwahlliste_ausgeben:n #1 { \begin{tabbing} \str_case:VnF \l_phone_land_str { - {US} {\hspace{3em}} + {US} { \hspace {3em} } } { - \hspace{4em} + \hspace {4em} } - \= \kill + \= + \kill \bool_set_false:N \l_phone_zeilenumbruch_bool @@ -721,9 +781,9 @@ \tl_use:N \l_phone_ausgabetext_tl } { - \bool_if:nTF {\str_if_eq_p:Vn \l_phone_land_str {FR}} + \bool_if:nTF { \str_if_eq_p:Vn \l_phone_land_str {FR} } { - \phone_gruppierte_ziffernfolge_schreiben:n {##1} + \phone_von_vorne_gruppiert_schreiben:n {##1} \tl_use:N \l_phone_ausgabetext_tl } { @@ -764,7 +824,7 @@ \IfValueT {#3} { - \bool_lazy_or:nnF {\str_if_eq_p:Vn \l_phone_land_str {DE}} {\str_if_eq_p:Vn \l_phone_land_str {AT}} + \bool_lazy_or:nnF { \str_if_eq_p:Vn \l_phone_land_str {DE} } { \str_if_eq_p:Vn \l_phone_land_str {AT} } { \bool_if:NF \l_phone_durchwahl_leer_bool { @@ -829,15 +889,15 @@ { \bool_set_false:N \l_phone_vorwahl_gefunden_bool - \int_set:Nn \l_phone_pruefnummerlaenge_int {\str_count:N #1} + \int_set:Nn \l_phone_pruefnummerlaenge_int { \str_count:N #1 } \int_step_inline:nnnn {6} {-1} {2} { \bool_if:NF \l_phone_vorwahl_gefunden_bool { - \int_compare:nT {\l_phone_pruefnummerlaenge_int >= ##1} + \int_compare:nT { \l_phone_pruefnummerlaenge_int >= ##1 } { - \str_set:Nx \l_phone_vorwahl_str {\str_range:Nnn #1 {1} {##1}} + \str_set:Nx \l_phone_vorwahl_str { \str_range:Nnn #1 {1} {##1} } \clist_if_in:cVT {c_phone_\l_phone_land_str _vorwahlen_clist} \l_phone_vorwahl_str { @@ -858,12 +918,12 @@ % #1: Vorwahl, #2: Soll die führende null ausgegeben werden? -\cs_new:Npn \phone_gruppierte_vorwahl_schreiben:nN #1#2 +\cs_new_protected:Npn \phone_gruppierte_vorwahl_schreiben:nN #1#2 { \str_if_eq:VnTF \l_phone_land_str {UK} { % britische Vorwahl - \int_compare:nNnTF {\str_count:n {#1}} = {6} + \int_compare:nNnTF { \str_count:n {#1} } = {6} { % sechsstellige britische Vorwahl: Gliederung vor der zweitletzten Ziffer \bool_if:NTF #2 @@ -871,11 +931,11 @@ \tl_put_right:Nx \l_phone_ausgabetext_tl { \str_range:nnn {#1} {1} {4} } } { - \tl_put_right:Nx \l_phone_ausgabetext_tl { \str_tail:x {\str_range:nnn {#1} {1} {4}} } + \tl_put_right:Nx \l_phone_ausgabetext_tl { \str_tail:x { \str_range:nnn {#1} {1} {4} } } } \tl_put_right:Nn \l_phone_ausgabetext_tl {\,} - \tl_put_right:Nx \l_phone_ausgabetext_tl {\str_range:nnn {#1} {5} {6}} + \tl_put_right:Nx \l_phone_ausgabetext_tl { \str_range:nnn {#1} {5} {6} } } { % nicht sechsstellige britische Vorwahl @@ -884,29 +944,29 @@ \tl_put_right:Nn \l_phone_ausgabetext_tl {#1} } { - \tl_put_right:Nx \l_phone_ausgabetext_tl {\str_tail:n {#1}} + \tl_put_right:Nx \l_phone_ausgabetext_tl { \str_tail:n {#1} } } } } { % nichtbritische Vorwahl - \bool_lazy_and:nnTF {\str_if_eq_p:Vn \l_phone_land_str {DE}} {\int_compare_p:nNn {\str_count:n {#1}} = {5}} + \bool_lazy_and:nnTF { \str_if_eq_p:Vn \l_phone_land_str {DE} } { \int_compare_p:nNn { \str_count:n {#1} } = {5} } { % fünfstellige deutsche Vorwahl - \str_set:Nx \l_tmpa_str {\str_range:nnn {#1} {1} {4}} - \str_set:Nx \l_tmpb_str {\str_range:nnn {#1} {5} {5}} - - \bool_lazy_or:nnTF {\str_if_eq_p:Vn \l_tmpa_str {0137}} {\str_if_eq_p:Vn \l_tmpa_str {0180}} + \str_set:Nx \l_tmpa_str { \str_range:nnn {#1} {1} {4} } + \str_set:Nx \l_tmpb_str { \str_range:nnn {#1} {5} {5} } + + \bool_lazy_or:nnTF { \str_if_eq_p:Vn \l_tmpa_str {0137} } { \str_if_eq_p:Vn \l_tmpa_str {0180} } { % fünfstellige deutsche Vorwahl mit Tarifkennung: letzte Ziffer steht allein \bool_if:NTF #2 { - \phone_gruppierte_ziffernfolge_schreiben:V \l_tmpa_str + \phone_von_hinten_gruppiert_schreiben:V \l_tmpa_str } { - \phone_gruppierte_ziffernfolge_schreiben:x {\str_tail:N \l_tmpa_str} + \phone_von_hinten_gruppiert_schreiben:x { \str_tail:N \l_tmpa_str } } - + \tl_put_right:Nn \l_phone_ausgabetext_tl {\,} \tl_put_right:NV \l_phone_ausgabetext_tl \l_tmpb_str } @@ -914,10 +974,10 @@ % fünfstellige deutsche Vorwahl ohne Tarifkennung \bool_if:NTF #2 { - \phone_gruppierte_ziffernfolge_schreiben:n {#1} + \phone_von_hinten_gruppiert_schreiben:n {#1} } { - \phone_gruppierte_ziffernfolge_schreiben:x {\str_tail:n {#1}} + \phone_von_hinten_gruppiert_schreiben:x { \str_tail:n {#1} } } } } @@ -925,17 +985,17 @@ % sonstige Vorwahl \bool_if:NTF #2 { - \phone_gruppierte_ziffernfolge_schreiben:n {#1} + \phone_von_hinten_gruppiert_schreiben:n {#1} } { - \phone_gruppierte_ziffernfolge_schreiben:x {\str_tail:n {#1}} + \phone_von_hinten_gruppiert_schreiben:x { \str_tail:n {#1} } } } } } % #1: Vorwahl, #2: Soll die führende null ausgegeben werden? -\cs_new:Npn \phone_geklammerte_vorwahl_schreiben:nN #1#2 +\cs_new_protected:Npn \phone_geklammerte_vorwahl_schreiben:nN #1#2 { % Klammern werden nur bei Ortsvorwahlen gesetzt \clist_if_in:cnTF {c_phone_\l_phone_land_str _ortsvorwahlen_clist} {#1} @@ -950,9 +1010,9 @@ } % #1: Nummer, #2: Mindestlänge, #3: Höchstlänge, #4: Nummernart -\cs_new:Npn \phone_nummernlaenge_ueberpruefen:nnnn #1#2#3#4 +\cs_new_protected:Npn \phone_nummernlaenge_ueberpruefen:nnnn #1#2#3#4 { - \int_set:Nn \l_tmpa_int {\str_count:n {#1}} + \int_set:Nn \l_tmpa_int { \str_count:n {#1} } \int_compare:nNnTF {\l_tmpa_int} < {#2} { @@ -982,9 +1042,9 @@ % #1: Vorwahl, #2: Folgt eine Rufnummer? -\cs_new:Npn \phone_DE_AT_vorwahl_schreiben:nn #1 #2 +\cs_new_protected:Npn \phone_DE_AT_vorwahl_schreiben:nn #1 #2 { - \bool_lazy_or:nnTF {\str_if_eq_p:Vn \l_phone_auslandsvorwahltyp_str {off}} {\str_if_eq_p:NN \l_phone_heimatland_str \l_phone_land_str} + \bool_lazy_or:nnTF { \str_if_eq_p:Vn \l_phone_auslandsvorwahltyp_str {off} } { \str_if_eq_p:NN \l_phone_heimatland_str \l_phone_land_str } { \clist_if_in:cnT {c_phone_\l_phone_land_str _sondervorwahlen_clist} {#1} { @@ -994,7 +1054,7 @@ } } - \bool_lazy_and:nnF {\str_if_eq_p:NN \l_phone_heimatland_str \l_phone_land_str} {\str_if_eq_p:Vn \l_phone_heimatvorwahl_str {#1}} + \bool_lazy_and:nnF { \str_if_eq_p:NN \l_phone_heimatland_str \l_phone_land_str } { \str_if_eq_p:Vn \l_phone_heimatvorwahl_str {#1} } { \str_case:Vn \l_phone_vorwahldarstellung_str { @@ -1009,7 +1069,7 @@ } { \phone_gruppierte_vorwahl_schreiben:nN {#1} \c_true_bool - + \tl_put_right:Nx \l_phone_ausgabetext_tl { \str_case:VnF \l_phone_vorwahltrennung_str @@ -1035,7 +1095,7 @@ { \tl_put_right:Nn \l_phone_ausgabetext_tl {(} } - + \tl_if_exist:cTF {c_phone_\l_phone_land_str _ortsname_#1_tl} { \tl_put_right:Nv \l_phone_ausgabetext_tl {c_phone_\l_phone_land_str _ortsname_#1_tl} @@ -1043,7 +1103,7 @@ { \phone_gruppierte_vorwahl_schreiben:nN {#1} \c_true_bool } - + \tl_put_right:Nx \l_phone_ausgabetext_tl { \str_case:VnF \l_phone_vorwahltrennung_str @@ -1074,11 +1134,11 @@ \tl_put_right:Nv \l_phone_ausgabetext_tl {c_phone_\l_phone_land_str _ortsname_#1_tl} \tl_put_right:NV \l_phone_ausgabetext_tl \c_space_tl } - + \str_if_eq:VnTF \l_phone_vorwahltrennung_str {brackets} { \phone_geklammerte_vorwahl_schreiben:nN {#1} \c_true_bool - + \bool_if:nT {#2} { \tl_put_right:NV \l_phone_ausgabetext_tl \c_space_tl @@ -1086,7 +1146,7 @@ } { \phone_gruppierte_vorwahl_schreiben:nN {#1} \c_true_bool - + \bool_if:nT {#2} { \tl_put_right:Nx \l_phone_ausgabetext_tl @@ -1138,7 +1198,7 @@ { \str_if_eq:VnTF \l_phone_land_str {DE} {+49} {+43} } - \str_put_right:Nx \l_phone_linktext_str {\str_tail:n {#1}} + \str_put_right:Nx \l_phone_linktext_str { \str_tail:n {#1} } } } @@ -1146,11 +1206,11 @@ % #1: Vorwahl, #2: Teilnehmerrufnummer -\cs_new:Npn \phone_DE_festnetzteilnehmerrufnummernlaenge_ueberpruefen:Nn #1#2 +\cs_new_protected:Npn \phone_DE_festnetzteilnehmerrufnummernlaenge_ueberpruefen:Nn #1#2 { - \int_set:Nn \l_tmpa_int {\str_count:N #1} - \int_add:Nn \l_tmpa_int {\str_count:n {#2}} - \int_add:Nn \l_tmpa_int {\str_count:N \l_phone_bereinigte_durchwahl_str} + \int_set:Nn \l_tmpa_int { \str_count:N #1 } + \int_add:Nn \l_tmpa_int { \str_count:n {#2} } + \int_add:Nn \l_tmpa_int { \str_count:N \l_phone_bereinigte_durchwahl_str } \int_compare:nNnTF {\l_tmpa_int} > {13} { @@ -1158,8 +1218,8 @@ \msg_warning:nnnn {phonenumbers} {number too long} {landline} {13} } { - \int_set:Nn \l_tmpa_int {\str_count:n {#2}} - \int_add:Nn \l_tmpa_int {\str_count:N \l_phone_bereinigte_durchwahl_str} + \int_set:Nn \l_tmpa_int { \str_count:n {#2} } + \int_add:Nn \l_tmpa_int { \str_count:N \l_phone_bereinigte_durchwahl_str } \int_compare:nNnTF {\l_tmpa_int} < {3} { @@ -1173,10 +1233,10 @@ } % #1: Nummer -\cs_new:Npn \phone_DE_MABEZnummernlaenge_ueberpruefen:N #1 +\cs_new_protected:Npn \phone_DE_MABEZnummernlaenge_ueberpruefen:N #1 { - \int_set:Nn \l_tmpa_int {\str_count:N #1} - \int_add:Nn \l_tmpa_int {\str_count:N \l_phone_bereinigte_durchwahl_str} + \int_set:Nn \l_tmpa_int { \str_count:N #1 } + \int_add:Nn \l_tmpa_int { \str_count:N \l_phone_bereinigte_durchwahl_str } \int_compare:nNnTF {\l_tmpa_int} > {11} { @@ -1196,7 +1256,7 @@ } % #1: Vorwahl, #2: Teilnehmerrufnummer -\cs_new:Npn \phone_DE_teilnehmerrufnummer_schreiben:Nn #1 #2 +\cs_new_protected:Npn \phone_DE_teilnehmerrufnummer_schreiben:Nn #1 #2 { % Überprüfen der Nummernlänge \str_if_empty:NTF #1 @@ -1211,7 +1271,7 @@ \clist_if_in:NVTF \c_phone_DE_ortsvorwahlen_clist #1 { % Festnetznummer - \str_if_eq:xnTF {\str_head:n {#2}} {0} + \str_if_eq:xnTF { \str_head:n {#2} } {0} { \msg_warning:nnn {phonenumbers} {illegal start of subscriber number} {0} } @@ -1224,37 +1284,37 @@ \str_set_eq:NN \l_tmpa_str #1 \str_put_right:Nn \l_tmpa_str {#2} - \str_if_eq:xnTF {\str_range:Nnn #1 {1} {5}} {09009} + \str_if_eq:xnTF { \str_range:Nnn #1 {1} {5} } {09009} { \phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {12} {12} {09009} } { - \str_case:xnF {\str_range:Nnn #1 {1} {4}} + \str_case:xnF { \str_range:Nnn #1 {1} {4} } { - {0137} {\phone_DE_MABEZnummernlaenge_ueberpruefen:N \l_tmpa_str} - {0160} {\phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {11} {12} {mobile~phone}} - {0162} {\phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {11} {12} {mobile~phone}} - {0163} {\phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {11} {12} {mobile~phone}} - {0164} {\phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {5} {14} {0164}} % Funkruf - {0168} {\phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {5} {15} {0168}} % Funkruf - {0169} {\phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {5} {15} {0169}} % Funkruf - {0180} {\phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {11} {11} {0180}} - {0181} {\phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {8} {15} {0181}} - {0191} {\phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {5} {14} {0191}} - {0192} {\phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {5} {14} {0192}} - {0193} {\phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {5} {14} {0193}} - {0194} {\phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {7} {14} {0194}} - {0700} {\phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {12} {12} {0700}} - {0800} {\phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {11} {14} {freephone}} - {0900} {\phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {11} {11} {premium~service}} + {0137} { \phone_DE_MABEZnummernlaenge_ueberpruefen:N \l_tmpa_str } + {0160} { \phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {11} {12} {mobile~phone} } + {0162} { \phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {11} {12} {mobile~phone} } + {0163} { \phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {11} {12} {mobile~phone} } + {0164} { \phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {5} {14} {0164} } % Funkruf + {0168} { \phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {5} {15} {0168} } % Funkruf + {0169} { \phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {5} {15} {0169} } % Funkruf + {0180} { \phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {11} {11} {0180} } + {0181} { \phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {8} {15} {0181} } + {0191} { \phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {5} {14} {0191} } + {0192} { \phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {5} {14} {0192} } + {0193} { \phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {5} {14} {0193} } + {0194} { \phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {7} {14} {0194} } + {0700} { \phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {12} {12} {0700} } + {0800} { \phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {11} {14} {freephone} } + {0900} { \phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {11} {11} {premium~service} } } { \str_case:xn {\str_range:Nnn #1 {1} {3}} { - {015} {\phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {12} {12} {mobile~phone}} - {017} {\phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {11} {12} {mobile~phone}} - {018} {\phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {12} {12} {018}} - {032} {\phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {12} {12} {032}} + {015} { \phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {12} {12} {mobile~phone} } + {017} { \phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {11} {12} {mobile~phone} } + {018} { \phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {12} {12} {018} } + {032} { \phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {12} {12} {032} } } } } @@ -1262,7 +1322,7 @@ \str_if_empty:NF \l_phone_bereinigte_durchwahl_str { % Mobilfunk- und Sondernummern dürfen keine Durchwahl enthalten (ausgenommen MABEZ-Nummern) - \str_if_eq:xnF {\str_range:Nnn #1 {1} {4}} {0137} + \str_if_eq:xnF { \str_range:Nnn #1 {1} {4} } {0137} { \msg_warning:nn {phonenumbers} {odd extension} } @@ -1283,7 +1343,7 @@ \bool_if:NTF \l_phone_teilnehmerrufnummer_gueltig_bool { - \phone_gruppierte_ziffernfolge_schreiben:n {#2} + \phone_von_hinten_gruppiert_schreiben:n {#2} } { \str_put_right:Nn \l_phone_ausgabetext_tl {#2} @@ -1292,7 +1352,7 @@ \str_if_empty:NF \l_phone_bereinigte_durchwahl_str { \tl_put_right:NV \l_phone_ausgabetext_tl \c_phone_bindestrich_tl - \phone_gruppierte_ziffernfolge_schreiben:V \l_phone_bereinigte_durchwahl_str + \phone_von_hinten_gruppiert_schreiben:V \l_phone_bereinigte_durchwahl_str } } @@ -1304,12 +1364,12 @@ \cs_new_protected:Npn \phone_DE_AT_nummer_schreiben: { - \str_if_eq:xnTF {\str_head:N \l_phone_bereinigte_nummer_str} {0} + \str_if_eq:xnTF { \str_head:N \l_phone_bereinigte_nummer_str } {0} { \phone_enthaelt_vorwahl:NTF \l_phone_bereinigte_nummer_str { - \int_set:Nn \l_phone_DE_AT_hauptnummerlaenge_int {\str_count:N \l_phone_bereinigte_nummer_str} - \int_set:Nn \l_phone_DE_AT_vorwahllaenge_int {\str_count:N \l_phone_vorwahl_str} + \int_set:Nn \l_phone_DE_AT_hauptnummerlaenge_int { \str_count:N \l_phone_bereinigte_nummer_str } + \int_set:Nn \l_phone_DE_AT_vorwahllaenge_int { \str_count:N \l_phone_vorwahl_str } \phone_DE_AT_vorwahl_schreiben:Vx \l_phone_vorwahl_str { @@ -1323,7 +1383,7 @@ { \use:c {phone_\l_phone_land_str _teilnehmerrufnummer_schreiben:Nx} \l_phone_vorwahl_str { - \str_range:Nnn \l_phone_bereinigte_nummer_str {\l_phone_DE_AT_vorwahllaenge_int + 1} {-1} + \str_range:Nnn \l_phone_bereinigte_nummer_str { \l_phone_DE_AT_vorwahllaenge_int + 1 } {-1} } } } @@ -1349,11 +1409,11 @@ % #1: Vorwahl, #2: Teilnehmerrufnummer -\cs_new:Npn \phone_AT_festnetzteilnehmerrufnummernlaenge_ueberpruefen:Nn #1#2 +\cs_new_protected:Npn \phone_AT_festnetzteilnehmerrufnummernlaenge_ueberpruefen:Nn #1#2 { - \int_set:Nn \l_tmpa_int {\str_count:N #1} - \int_add:Nn \l_tmpa_int {\str_count:n {#2}} - \int_add:Nn \l_tmpa_int {\str_count:N \l_phone_bereinigte_durchwahl_str} + \int_set:Nn \l_tmpa_int { \str_count:N #1 } + \int_add:Nn \l_tmpa_int { \str_count:n {#2} } + \int_add:Nn \l_tmpa_int { \str_count:N \l_phone_bereinigte_durchwahl_str } \int_compare:nNnTF {\l_tmpa_int} > {13} { @@ -1361,8 +1421,8 @@ \msg_warning:nnnn {phonenumbers} {number too long} {landline} {13} } { - \int_set:Nn \l_tmpa_int {\str_count:n {#2}} - \int_add:Nn \l_tmpa_int {\str_count:N \l_phone_bereinigte_durchwahl_str} + \int_set:Nn \l_tmpa_int { \str_count:n {#2} } + \int_add:Nn \l_tmpa_int { \str_count:N \l_phone_bereinigte_durchwahl_str } \int_compare:nNnTF {\l_tmpa_int} < {5} { @@ -1370,25 +1430,25 @@ \msg_warning:nnn {phonenumbers} {subscriber number too short} {5} } { - \bool_lazy_and:nnTF {\str_if_eq_p:Vn #1 {01}} {\int_compare_p:nNn {\l_tmpa_int} < {7}} + \bool_lazy_and:nnTF { \str_if_eq_p:Vn #1 {01} } { \int_compare_p:nNn {\l_tmpa_int} < {7} } { % Wiener Teilnehmerrufnummer hat weniger als 7 Stellen \msg_warning:nnn {phonenumbers} {subscriber number too short} {7} } - { + { \bool_lazy_and:nnTF { \bool_lazy_any_p:n { - {\str_if_eq_p:Vn #1 {02236}} - {\str_if_eq_p:Vn #1 {02252}} - {\str_if_eq_p:Vn #1 {0316}} - {\str_if_eq_p:Vn #1 {0463}} - {\str_if_eq_p:Vn #1 {0512}} - {\str_if_eq_p:Vn #1 {05572}} - {\str_if_eq_p:Vn #1 {0662}} - {\str_if_eq_p:Vn #1 {07242}} - {\str_if_eq_p:Vn #1 {0732}} + { \str_if_eq_p:Vn #1 {02236} } + { \str_if_eq_p:Vn #1 {02252} } + { \str_if_eq_p:Vn #1 {0316} } + { \str_if_eq_p:Vn #1 {0463} } + { \str_if_eq_p:Vn #1 {0512} } + { \str_if_eq_p:Vn #1 {05572} } + { \str_if_eq_p:Vn #1 {0662} } + { \str_if_eq_p:Vn #1 {07242} } + { \str_if_eq_p:Vn #1 {0732} } } } { @@ -1414,11 +1474,11 @@ } % #1: Vorwahl, #2: Teilnehmerrufnummer -\cs_new:Npn \phone_AT_festnetzteilnehmerrufnummer_ueberpruefen:Nn #1#2 +\cs_new_protected:Npn \phone_AT_festnetzteilnehmerrufnummer_ueberpruefen:Nn #1#2 { - \str_set:Nx \l_tmpa_str {\str_head:n {#2}} + \str_set:Nx \l_tmpa_str { \str_head:n {#2} } - \bool_lazy_or:nnTF {\str_if_eq_p:Vn \l_tmpa_str {0}} {\str_if_eq_p:Vn \l_tmpa_str {1}} + \bool_lazy_or:nnTF { \str_if_eq_p:Vn \l_tmpa_str {0} } { \str_if_eq_p:Vn \l_tmpa_str {1} } { \msg_warning:nnV {phonenumbers} {illegal start of subscriber number} \l_tmpa_str } @@ -1428,7 +1488,7 @@ } % #1: Vorwahl, #2: Teilnehmerrufnummer -\cs_new:Npn \phone_AT_teilnehmerrufnummer_schreiben:Nn #1 #2 +\cs_new_protected:Npn \phone_AT_teilnehmerrufnummer_schreiben:Nn #1 #2 { \str_if_empty:NTF #1 { @@ -1451,33 +1511,33 @@ \str_case:VnF #1 { - {0517} {\phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {9} {13} {VPN}} - {0718} {\phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {10} {13} {dial~up}} - {0720} {\phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {10} {13} {location~independant}} - {0780} {\phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {10} {13} {convergent~service}} - {0800} {\phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {10} {13} {freephone}} - {0804} {\phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {10} {13} {dial~up}} - {0810} {\phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {10} {13} {service}} - {0820} {\phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {10} {13} {service}} - {0821} {\phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {10} {13} {service}} - {0828} {\phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {10} {13} {service}} - {0900} {\phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {10} {13} {premium~service}} - {0901} {\phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {10} {13} {premium~service}} - {0930} {\phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {10} {13} {premium~service}} - {0931} {\phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {10} {13} {premium~service}} - {0939} {\phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {10} {13} {premium~service}} - } - { - \str_case:xn {\str_range:Nnn #1 {1} {3}} + {0517} { \phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {9} {13} {VPN} } + {0718} { \phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {10} {13} {dial~up} } + {0720} { \phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {10} {13} {location~independant} } + {0780} { \phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {10} {13} {convergent~service} } + {0800} { \phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {10} {13} {freephone} } + {0804} { \phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {10} {13} {dial~up} } + {0810} { \phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {10} {13} {service} } + {0820} { \phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {10} {13} {service} } + {0821} { \phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {10} {13} {service} } + {0828} { \phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {10} {13} {service} } + {0900} { \phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {10} {13} {premium~service} } + {0901} { \phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {10} {13} {premium~service} } + {0930} { \phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {10} {13} {premium~service} } + {0931} { \phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {10} {13} {premium~service} } + {0939} { \phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {10} {13} {premium~service} } + } + { + \str_case:xn { \str_range:Nnn #1 {1} {3} } { - {050} {\phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {9} {13} {VPN}} - {057} {\phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {9} {13} {VPN}} - {059} {\phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {9} {13} {VPN}} - {065} {\phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {9} {13} {mobile~phone}} - {066} {\phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {9} {13} {mobile~phone}} - {067} {\phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {9} {13} {mobile~phone}} - {068} {\phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {9} {13} {mobile~phone}} - {069} {\phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {9} {13} {mobile~phone}} + {050} { \phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {9} {13} {VPN} } + {057} { \phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {9} {13} {VPN} } + {059} { \phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {9} {13} {VPN} } + {065} { \phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {9} {13} {mobile~phone} } + {066} { \phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {9} {13} {mobile~phone} } + {067} { \phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {9} {13} {mobile~phone} } + {068} { \phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {9} {13} {mobile~phone} } + {069} { \phone_nummernlaenge_ueberpruefen:Vnnn \l_tmpa_str {9} {13} {mobile~phone} } } } @@ -1501,7 +1561,7 @@ \bool_if:NTF \l_phone_teilnehmerrufnummer_gueltig_bool { - \phone_gruppierte_ziffernfolge_schreiben:n {#2} + \phone_von_hinten_gruppiert_schreiben:n {#2} } { \str_put_right:Nn \l_phone_ausgabetext_tl {#2} @@ -1510,7 +1570,7 @@ \str_if_empty:NF \l_phone_bereinigte_durchwahl_str { \tl_put_right:NV \l_phone_ausgabetext_tl \c_phone_bindestrich_tl - \phone_gruppierte_ziffernfolge_schreiben:V \l_phone_bereinigte_durchwahl_str + \phone_von_hinten_gruppiert_schreiben:V \l_phone_bereinigte_durchwahl_str } } @@ -1543,6 +1603,7 @@ { {0262} {262} {026200} {262} + {0263} {262} {0269} {262} {0508} {508} {0590} {590} @@ -1556,16 +1617,36 @@ {0694} {594} {0696} {596} {0697} {596} + {07005} {590} + {07006} {594} + {07007} {596} + {07008} {262} + {07009} {262} + {09475} {590} + {09476} {594} + {09477} {596} + {09478} {262} + {09479} {262} + {09760} {590} + {09761} {590} + {09762} {262} + {09763} {262} + {09764} {594} + {09765} {594} + {09766} {596} + {09767} {596} + {09768} {590} + {09769} {262} } { 33 } } -% #1: Vorwahl -\cs_new:Npn \phone_FR_vorwahl_schreiben:n #1 +% #1: Vorwahl, #2: Rufnummer +\cs_new_protected:Npn \phone_FR_vorwahl_schreiben:nn #1#2 { - \bool_lazy_or:nnTF {\str_if_eq_p:Vn \l_phone_auslandsvorwahltyp_str {off}} {\str_if_eq_p:Vn \l_phone_heimatland_str {FR}} + \bool_lazy_or:nnTF { \str_if_eq_p:Vn \l_phone_auslandsvorwahltyp_str {off} } { \str_if_eq_p:Vn \l_phone_heimatland_str {FR} } { \clist_if_in:NnT \c_phone_FR_sondervorwahlen_clist {#1} { @@ -1575,14 +1656,15 @@ } } - \bool_lazy_and:nnF {\str_if_eq_p:Vn \l_phone_heimatland_str {FR}} {\str_if_eq_p:Vn \l_phone_heimatvorwahl_str {#1}} + \bool_lazy_and:nnF { \str_if_eq_p:Vn \l_phone_heimatland_str {FR} } { \str_if_eq_p:Vn \l_phone_heimatvorwahl_str {#1} } { \str_case:Vn \l_phone_vorwahldarstellung_str { {number} { - \phone_gruppierte_ziffernfolge_schreiben:n {#1} - \tl_put_right:Nn \l_phone_ausgabetext_tl {\,} + \phone_von_vorne_gruppiert_schreiben:n {#1} + \int_if_even:nT { \str_count:n {#1} } + { \tl_put_right:Nn \l_phone_ausgabetext_tl {\,} } } {place} { @@ -1592,8 +1674,9 @@ \tl_put_right:NV \l_phone_ausgabetext_tl \c_space_tl } { - \phone_gruppierte_ziffernfolge_schreiben:n {#1} - \tl_put_right:Nn \l_phone_ausgabetext_tl {\,} + \phone_von_vorne_gruppiert_schreiben:n {#1} + \int_if_even:nT { \str_count:n {#1} } + { \tl_put_right:Nn \l_phone_ausgabetext_tl {\,} } } } {place-and-number} @@ -1603,43 +1686,60 @@ \tl_put_right:Nv \l_phone_ausgabetext_tl {c_phone_FR_ortsname_#1_tl} \tl_put_right:NV \l_phone_ausgabetext_tl \c_space_tl } - - \phone_gruppierte_ziffernfolge_schreiben:n {#1} - \tl_put_right:NV \l_phone_ausgabetext_tl {\,} + + \phone_von_vorne_gruppiert_schreiben:n {#1} + \int_if_even:nT { \str_count:n {#1} } + { \tl_put_right:Nn \l_phone_ausgabetext_tl {\,} } } } } } { - \phone_auslandsvorwahl_schreiben:x {\phone_FR_ermittle_landeskennzahl:n {#1}} + \phone_auslandsvorwahl_schreiben:x { \phone_FR_ermittle_landeskennzahl:n {#1} } \tl_put_right:NV \l_phone_ausgabetext_tl \c_space_tl \str_if_eq:nnF {#1} {0508} % in Saint-Pierre-et-Miquelon entfällt die Ortsvorwahl { - \phone_gruppierte_ziffernfolge_schreiben:x {\str_tail:n {#1}} - \tl_put_right:Nn \l_phone_ausgabetext_tl {\,} + \int_if_even:nTF { \str_count:n {#2} } + { + % Rufnummer hat gerade Stellenanzahl + \phone_von_hinten_gruppiert_schreiben:x { \str_tail:n {#1} } + \tl_put_right:Nn \l_phone_ausgabetext_tl {\,} + } + { + \int_if_even:nTF { \str_count:n {#1} } + { + % Rufnummer hat ungerade Stellenanzahl, die Vorwahl ohne die 0 auch + \phone_von_vorne_gruppiert_schreiben:x { \str_tail:n {#1} } + } + { + % Rufnummer hat ungerade Stellenanzahl, die Vorwahl ohne die 0 hat gerade Stellenanzahl + \tl_put_right:Nx \l_phone_ausgabetext_tl { \str_item:nn {#1} {2} \, } + \phone_von_vorne_gruppiert_schreiben:x { \str_range:nnn {#1} {3} {-1} } + } + } } } - \str_put_right:Nx \l_phone_linktext_str {+\phone_FR_ermittle_landeskennzahl:n {#1}} + \str_put_right:Nx \l_phone_linktext_str { + \phone_FR_ermittle_landeskennzahl:n {#1} } \str_if_eq:nnF {#1} {0508} % in Saint-Pierre-et-Miquelon entfällt die Ortsvorwahl { - \str_put_right:Nx \l_phone_linktext_str {\str_tail:n {#1}} + \str_put_right:Nx \l_phone_linktext_str { \str_tail:n {#1} } } } -\cs_generate_variant:Nn \phone_FR_vorwahl_schreiben:n {V} +\cs_generate_variant:Nn \phone_FR_vorwahl_schreiben:nn {VV,xV} -\cs_new:Npn \phone_FR_nummer_schreiben: +\cs_new_protected:Npn \phone_FR_nummer_schreiben: { - \int_set:Nn \l_phone_nummerlaenge_int {\str_count:N \l_phone_bereinigte_nummer_str} - + \int_set:Nn \l_phone_nummerlaenge_int { \str_count:N \l_phone_bereinigte_nummer_str } + \int_compare:nNnTF {\l_phone_nummerlaenge_int} < {10} { - \str_if_eq:xnTF {\str_head:N \l_phone_bereinigte_nummer_str} {3} + \str_if_eq:xnTF { \str_head:N \l_phone_bereinigte_nummer_str } {3} { \int_compare:nNnTF {\l_phone_nummerlaenge_int} < {4} { @@ -1650,10 +1750,10 @@ \int_compare:nNnTF {\l_phone_nummerlaenge_int} > {4} { \msg_warning:nnnn {phonenumbers} {number too long} {short} {4} - \tl_put_right:NV \l_phone_ausgabetext_tl \l_phone_bereinigte_nummer_str + \tl_put_right:NV \l_phone_ausgabetext_tl \l_phone_bereinigte_nummer_str } { - \phone_gruppierte_ziffernfolge_schreiben:V \l_phone_bereinigte_nummer_str + \phone_von_vorne_gruppiert_schreiben:V \l_phone_bereinigte_nummer_str \str_put_right:NV \l_phone_linktext_str \l_phone_bereinigte_nummer_str } } @@ -1666,36 +1766,80 @@ { \int_compare:nNnTF {\l_phone_nummerlaenge_int} > {10} { - \msg_warning:nnnn {phonenumbers} {number too long} {phone} {10} - \tl_put_right:NV \l_phone_ausgabetext_tl \l_phone_bereinigte_nummer_str + \str_if_eq:xnTF { \str_range:Nnn \l_phone_bereinigte_nummer_str {1} {4} } {0700} + { + \int_compare:nNnTF { \str_item:Nn \l_phone_bereinigte_nummer_str {5} } < {5} + { + % überlange Mobilfunknummer (machine to machine) im Mutterland (14 Stellen) + \str_set:Nx \l_phone_rufnummer_str { \str_range:Nnn \l_phone_bereinigte_nummer_str {5} {-1} } + \phone_FR_vorwahl_schreiben:xV { \str_range:Nnn \l_phone_bereinigte_nummer_str {1} {4} } \l_phone_rufnummer_str + \phone_nummernlaenge_ueberpruefen:Vnnn \l_phone_bereinigte_nummer_str {14} {14} {machine~to~machine} + \bool_if:NT \l_phone_teilnehmerrufnummer_gueltig_bool + { + \phone_von_vorne_gruppiert_schreiben:V \l_phone_rufnummer_str + } + } + { + % überlange Mobilfunknummer (machine to machine) in den Überseegebieten (13 Stellen) + \str_set:Nx \l_phone_rufnummer_str { \str_range:Nnn \l_phone_bereinigte_nummer_str {6} {-1} } + \phone_FR_vorwahl_schreiben:xV { \str_range:Nnn \l_phone_bereinigte_nummer_str {1} {5} } \l_phone_rufnummer_str + \phone_nummernlaenge_ueberpruefen:Vnnn \l_phone_bereinigte_nummer_str {13} {13} {machine~to~machine} + \bool_if:NT \l_phone_teilnehmerrufnummer_gueltig_bool + { + \bool_lazy_or:nnTF { \str_if_eq_p:Vn \l_phone_auslandsvorwahltyp_str {off} } { \str_if_eq_p:Vn \l_phone_heimatland_str {FR} } + { + % ohne Auslandsvorwahl steht am Ende eine Einzelziffer + \tl_put_right:Nx \l_phone_ausgabetext_tl { \str_head:N \l_phone_rufnummer_str \, } + \phone_von_vorne_gruppiert_schreiben:x { \str_tail:N \l_phone_rufnummer_str } + } + { + % mit Auslandsvorwahl ergeben sich durchgehend Zweiergruppen + \phone_von_vorne_gruppiert_schreiben:V \l_phone_rufnummer_str + } + } + } + + \bool_if:NTF \l_phone_teilnehmerrufnummer_gueltig_bool + { + % Für gültige Nummern Linktext schreiben: + \str_put_right:NV \l_phone_linktext_str \l_phone_rufnummer_str + } + { + % Für ungültige Nummern Linktext löschen und ungruppierte Nummer schreiben: + \str_clear:N \l_phone_linktext_str + \tl_put_right:NV \l_phone_ausgabetext_tl \l_phone_rufnummer_str + } + } + { + \msg_warning:nnnn {phonenumbers} {number too long} {phone} {10} + \tl_put_right:NV \l_phone_ausgabetext_tl \l_phone_bereinigte_nummer_str + } } { - \str_if_eq:xnTF {\str_head:N \l_phone_bereinigte_nummer_str} {0} + \str_if_eq:xnTF { \str_head:N \l_phone_bereinigte_nummer_str } {0} { \bool_set_false:N \l_phone_vorwahl_gefunden_bool - + \int_step_inline:nnnn {6} {-1} {2} { \bool_if:NF \l_phone_vorwahl_gefunden_bool { - \int_compare:nT {\l_phone_nummerlaenge_int >= ##1} + \int_compare:nT { \l_phone_nummerlaenge_int >= ##1 } { - \str_set:Nx \l_tmpa_str {\str_range:Nnn \l_phone_bereinigte_nummer_str {1} {##1}} - + \str_set:Nx \l_tmpa_str { \str_range:Nnn \l_phone_bereinigte_nummer_str {1} {##1} } + \clist_if_in:NVT \c_phone_FR_vorwahlen_clist \l_tmpa_str { \bool_set_true:N \l_phone_vorwahl_gefunden_bool - - \phone_FR_vorwahl_schreiben:V \l_tmpa_str - - \str_set:Nx \l_tmpb_str {\str_range:Nnn \l_phone_bereinigte_nummer_str {##1 + 1} {-1}} - \phone_gruppierte_ziffernfolge_schreiben:V \l_tmpb_str - \str_put_right:NV \l_phone_linktext_str \l_tmpb_str + \str_set:Nx \l_phone_rufnummer_str { \str_range:Nnn \l_phone_bereinigte_nummer_str {##1 + 1} {-1} } + \phone_FR_vorwahl_schreiben:VV \l_tmpa_str \l_phone_rufnummer_str + \phone_von_hinten_gruppiert_schreiben:V \l_phone_rufnummer_str + \str_put_right:NV \l_phone_linktext_str \l_phone_rufnummer_str } } } } - + \bool_if:NF \l_phone_vorwahl_gefunden_bool { \msg_warning:nn {phonenumbers} {invalid area code} @@ -1727,13 +1871,13 @@ \msg_new:nnn {phonenumbers} {UK/national dialling required} { British~subscriber~number~starting~with~0~or~1~requires~an~area~code~\msg_line_context: - } + } % #1: Vorwahl, #2: Folgt eine Rufnummer? -\cs_new:Npn \phone_UK_vorwahl_schreiben:nn #1 #2 +\cs_new_protected:Npn \phone_UK_vorwahl_schreiben:nn #1 #2 { - \bool_lazy_or:nnTF {\str_if_eq_p:Vn \l_phone_auslandsvorwahltyp_str {off}} {\str_if_eq_p:Vn \l_phone_heimatland_str {UK}} + \bool_lazy_or:nnTF { \str_if_eq_p:Vn \l_phone_auslandsvorwahltyp_str {off} } { \str_if_eq_p:Vn \l_phone_heimatland_str {UK} } { \clist_if_in:NnT \c_phone_UK_sondervorwahlen_clist {#1} { @@ -1743,7 +1887,7 @@ } } - \bool_lazy_and:nnF {\str_if_eq_p:Vn \l_phone_heimatland_str {UK}} {\str_if_eq_p:Vn \l_phone_heimatvorwahl_str {#1}} + \bool_lazy_and:nnF { \str_if_eq_p:Vn \l_phone_heimatland_str {UK} } { \str_if_eq_p:Vn \l_phone_heimatvorwahl_str {#1} } { \str_case:Vn \l_phone_vorwahldarstellung_str { @@ -1773,7 +1917,7 @@ { \tl_put_right:Nn \l_phone_ausgabetext_tl {(} } - + \tl_if_exist:cTF {c_phone_UK_ortsname_#1_tl} { \tl_put_right:Nv \l_phone_ausgabetext_tl {c_phone_UK_ortsname_#1_tl} @@ -1781,7 +1925,7 @@ { \phone_gruppierte_vorwahl_schreiben:nN {#1} \c_true_bool } - + \str_if_eq:VnF \l_phone_vorwahltrennung_str {space} { \tl_put_right:Nn \l_phone_ausgabetext_tl {)} @@ -1806,7 +1950,7 @@ \tl_put_right:Nv \l_phone_ausgabetext_tl {c_phone_UK_ortsname_#1_tl} \tl_put_right:NV \l_phone_ausgabetext_tl \c_space_tl } - + \str_if_eq:VnTF \l_phone_vorwahltrennung_str {space} { \phone_gruppierte_vorwahl_schreiben:nN {#1} \c_true_bool @@ -1846,7 +1990,7 @@ \bool_if:nT {#2} { \str_put_right:Nn \l_phone_linktext_str {+44} - \str_put_right:Nx \l_phone_linktext_str {\str_tail:n {#1}} + \str_put_right:Nx \l_phone_linktext_str { \str_tail:n {#1} } } } @@ -1854,7 +1998,7 @@ % #1: Vorwahl, #2: Teilnehmerrufnummer -\cs_new:Npn \phone_UK_teilnehmerrufnummer_schreiben:Nn #1 #2 +\cs_new_protected:Npn \phone_UK_teilnehmerrufnummer_schreiben:Nn #1 #2 { % Überprüfen der Nummernlänge \str_if_empty:NTF #1 @@ -1863,7 +2007,7 @@ \phone_nummernlaenge_ueberpruefen:nnnn {#2} {4} {8} {landline} % Nummern, die mit 0 oder 1 beginnen, erfordern das Wählen der Vorwahl - \str_case:xnT {\str_head:n {#2}} + \str_case:xnT { \str_head:n {#2} } { {0} { } {1} { } @@ -1877,7 +2021,7 @@ { % Festnetznummer, muss in der Regel 11 Ziffern umfassen % Ausnahme: Bei den Vorwahlen 01XXX und 016977 sind auch 10 Ziffern möglich. - \bool_lazy_or:nnTF {\str_if_eq_p:Vn #1 {016977}} {\int_compare_p:nNn {\str_count:N #1} = {5}} + \bool_lazy_or:nnTF { \str_if_eq_p:Vn #1 {016977} } { \int_compare_p:nNn { \str_count:N #1 } = {5} } { \phone_nummernlaenge_ueberpruefen:onnn {#1#2} {10} {11} {landline} } @@ -1887,7 +2031,7 @@ } { % Mobilfunk-/Sondernummer - \str_if_eq:xnTF {\str_range:Nnn #1 {1} {4}} {0800} + \str_if_eq:xnTF { \str_range:Nnn #1 {1} {4} } {0800} { % 0800er-Nummern haben 10 oder 11 Ziffern; Ausnahme: 0800 1111 \str_if_eq:nnTF {#2} {1111} @@ -1917,12 +2061,12 @@ \bool_if:NTF \l_phone_teilnehmerrufnummer_gueltig_bool { - \int_compare:nNnTF {\str_count:n {#2}} > {6} + \int_compare:nNnTF { \str_count:n {#2} } > {6} { % Nummern mit mehr als 6 Ziffern werden in Vierergruppen gegliedert - \str_put_right:Nx \l_phone_ausgabetext_tl {\str_range:nnn {#2} {1} {-5}} + \str_put_right:Nx \l_phone_ausgabetext_tl { \str_range:nnn {#2} {1} {-5} } \tl_put_right:Nn \l_phone_ausgabetext_tl {\,} - \str_put_right:Nx \l_phone_ausgabetext_tl {\str_range:nnn {#2} {-4} {-1}} + \str_put_right:Nx \l_phone_ausgabetext_tl { \str_range:nnn {#2} {-4} {-1} } } { \str_put_right:Nn \l_phone_ausgabetext_tl {#2} @@ -1938,9 +2082,9 @@ \cs_new_protected:Npn \phone_UK_nummer_schreiben: { - \int_set:Nn \l_phone_nummerlaenge_int {\str_count:N \l_phone_bereinigte_nummer_str} + \int_set:Nn \l_phone_nummerlaenge_int { \str_count:N \l_phone_bereinigte_nummer_str } - \str_if_eq:xnTF {\str_head:N \l_phone_bereinigte_nummer_str} {0} + \str_if_eq:xnTF { \str_head:N \l_phone_bereinigte_nummer_str } {0} { \bool_set_false:N \l_phone_vorwahl_gefunden_bool @@ -1948,22 +2092,22 @@ { \bool_if:NF \l_phone_vorwahl_gefunden_bool { - \int_compare:nT {\l_phone_nummerlaenge_int >= ##1} + \int_compare:nT { \l_phone_nummerlaenge_int >= ##1 } { - \str_set:Nx \l_phone_vorwahl_str {\str_range:Nnn \l_phone_bereinigte_nummer_str {1} {##1}} + \str_set:Nx \l_phone_vorwahl_str { \str_range:Nnn \l_phone_bereinigte_nummer_str {1} {##1} } \clist_if_in:NVT \c_phone_UK_vorwahlen_clist \l_phone_vorwahl_str { \bool_set_true:N \l_phone_vorwahl_gefunden_bool - \phone_UK_vorwahl_schreiben:Vx \l_phone_vorwahl_str {\int_compare_p:nNn {##1} < {\l_phone_nummerlaenge_int}} - + \phone_UK_vorwahl_schreiben:Vx \l_phone_vorwahl_str { \int_compare_p:nNn {##1} < {\l_phone_nummerlaenge_int} } + \int_compare:nNnTF {##1} = {\l_phone_nummerlaenge_int} { \msg_warning:nn {phonenumbers} {missing subscriber number} } { - \phone_UK_teilnehmerrufnummer_schreiben:Nx \l_phone_vorwahl_str {\str_range:Nnn \l_phone_bereinigte_nummer_str {##1 + 1} {-1}} + \phone_UK_teilnehmerrufnummer_schreiben:Nx \l_phone_vorwahl_str { \str_range:Nnn \l_phone_bereinigte_nummer_str {##1 + 1} {-1} } } } } @@ -2025,11 +2169,11 @@ % #1: Vorwahl, #2: Folgt eine Rufnummer? -\cs_new:Npn \phone_US_vorwahl_schreiben:nN #1 #2 +\cs_new_protected:Npn \phone_US_vorwahl_schreiben:nN #1 #2 { - \bool_lazy_or:nnTF {\str_if_eq_p:Vn \l_phone_auslandsvorwahltyp_str {off}} {\str_if_eq_p:Vn \l_phone_heimatland_str {US}} + \bool_lazy_or:nnTF { \str_if_eq_p:Vn \l_phone_auslandsvorwahltyp_str {off} } { \str_if_eq_p:Vn \l_phone_heimatland_str {US} } { - \bool_lazy_and:nnF {\str_if_eq_p:Vn \l_phone_heimatland_str {US}} {\str_if_eq_p:Vn \l_phone_heimatvorwahl_str {#1}} + \bool_lazy_and:nnF { \str_if_eq_p:Vn \l_phone_heimatland_str {US} } { \str_if_eq_p:Vn \l_phone_heimatvorwahl_str {#1} } { \bool_if:NTF \l_phone_US_ferngespraechspraefix_bool { @@ -2145,7 +2289,7 @@ \tl_use:c {c_phone_US_ortsname_#1_tl} \c_space_tl } - + \bool_if:NTF #2 { \str_case:VnF \l_phone_vorwahltrennung_str @@ -2202,9 +2346,9 @@ % #1: Ortsvorwahl, #2: Vermittlungsstellennummer -\cs_new:Npn \phone_US_vermittlungsstellennummer_schreiben:nn #1 #2 +\cs_new_protected:Npn \phone_US_vermittlungsstellennummer_schreiben:nn #1 #2 { - \str_case:xnTF {\str_head:n {#2}} + \str_case:xnTF { \str_head:n {#2} } { {0} { } {1} { } @@ -2228,7 +2372,7 @@ \bool_if:NTF \l_tmpa_bool { - \str_if_eq:xnT {\str_range:nnn {#2} {2} {3}} {11} + \str_if_eq:xnT { \str_range:nnn {#2} {2} {3} } {11} { \msg_warning:nnn {phonenumbers} {US/invalid central office code} {#2} } @@ -2243,7 +2387,7 @@ \tl_put_right:Nn \l_phone_ausgabetext_tl {#2} - \bool_lazy_or:nnTF {\str_if_eq_p:Vn \l_phone_auslandsvorwahltyp_str {off}} {\str_if_eq_p:Vn \l_phone_heimatland_str {US}} + \bool_lazy_or:nnTF { \str_if_eq_p:Vn \l_phone_auslandsvorwahltyp_str {off} } { \str_if_eq_p:Vn \l_phone_heimatland_str {US} } { \tl_put_right:NV \l_phone_ausgabetext_tl \c_phone_bindestrich_tl } @@ -2267,9 +2411,9 @@ \cs_generate_variant:Nn \phone_US_vermittlungsstellennummer_schreiben:nn {Vx} -\cs_new:Npn \phone_US_nummer_schreiben: +\cs_new_protected:Npn \phone_US_nummer_schreiben: { - \int_case:nnF {\str_count:N \l_phone_bereinigte_nummer_str} + \int_case:nnF { \str_count:N \l_phone_bereinigte_nummer_str } { {3} { @@ -2285,13 +2429,13 @@ } {7} { - \phone_US_vermittlungsstellennummer_schreiben:Vx \c_empty_tl {\str_range:Nnn \l_phone_bereinigte_nummer_str {1} {3}} + \phone_US_vermittlungsstellennummer_schreiben:Vx \c_empty_tl { \str_range:Nnn \l_phone_bereinigte_nummer_str {1} {3} } - \tl_put_right:Nx \l_phone_ausgabetext_tl {\str_range:Nnn \l_phone_bereinigte_nummer_str {4} {7}} + \tl_put_right:Nx \l_phone_ausgabetext_tl { \str_range:Nnn \l_phone_bereinigte_nummer_str {4} {7} } } {10} { - \str_set:Nx \l_tmpa_str {\str_range:Nnn \l_phone_bereinigte_nummer_str {1} {3}} + \str_set:Nx \l_tmpa_str { \str_range:Nnn \l_phone_bereinigte_nummer_str {1} {3} } \clist_if_in:NVF \c_phone_US_vorwahlen_clist \l_tmpa_str { @@ -2300,14 +2444,14 @@ \phone_US_vorwahl_schreiben:VN \l_tmpa_str \c_true_bool - \phone_US_vermittlungsstellennummer_schreiben:Vx \l_tmpa_str {\str_range:Nnn \l_phone_bereinigte_nummer_str {4} {6}} + \phone_US_vermittlungsstellennummer_schreiben:Vx \l_tmpa_str { \str_range:Nnn \l_phone_bereinigte_nummer_str {4} {6} } - \tl_put_right:Nx \l_phone_ausgabetext_tl {\str_range:Nnn \l_phone_bereinigte_nummer_str {7} {10}} - \str_put_right:Nx \l_phone_linktext_str {\str_range:Nnn \l_phone_bereinigte_nummer_str {7} {10}} + \tl_put_right:Nx \l_phone_ausgabetext_tl { \str_range:Nnn \l_phone_bereinigte_nummer_str {7} {10} } + \str_put_right:Nx \l_phone_linktext_str { \str_range:Nnn \l_phone_bereinigte_nummer_str {7} {10} } } } { - \int_compare:nNnTF {\str_count:N \l_phone_bereinigte_nummer_str} < {10} + \int_compare:nNnTF { \str_count:N \l_phone_bereinigte_nummer_str } < {10} { \msg_warning:nnnn {phonenumbers} {number too short} {phone} {10} } @@ -2322,9 +2466,9 @@ %%%%%%%%%%%%%%%%%%%% SONSTIGE LÄNDER %%%%%%%%%%%%%%%%%%%% -\cs_new:Npn \phone_SONST_nummer_schreiben: +\cs_new_protected:Npn \phone_SONST_nummer_schreiben: { - \int_set:Nn \l_phone_nummerlaenge_int {\str_count:N \l_phone_bereinigte_nummer_str} + \int_set:Nn \l_phone_nummerlaenge_int { \str_count:N \l_phone_bereinigte_nummer_str } \bool_set_false:N \l_phone_vorwahl_gefunden_bool @@ -2332,10 +2476,10 @@ { \bool_if:NF \l_phone_vorwahl_gefunden_bool { - \int_compare:nT {\l_phone_nummerlaenge_int >= ##1} + \int_compare:nT { \l_phone_nummerlaenge_int >= ##1 } { - \str_set:Nx \l_tmpa_str {\str_range:Nnn \l_phone_bereinigte_nummer_str {1} {##1}} - + \str_set:Nx \l_tmpa_str { \str_range:Nnn \l_phone_bereinigte_nummer_str {1} {##1} } + \clist_if_in:NVT \c_phone_landeskennzahlen_clist \l_tmpa_str { \bool_set_true:N \l_phone_vorwahl_gefunden_bool @@ -2348,7 +2492,7 @@ } { \tl_put_right:NV \l_phone_ausgabetext_tl \c_space_tl - \phone_gruppierte_ziffernfolge_schreiben:x {\str_range:Nnn \l_phone_bereinigte_nummer_str {##1 + 1} {-1}} + \phone_von_hinten_gruppiert_schreiben:x { \str_range:Nnn \l_phone_bereinigte_nummer_str {##1 + 1} {-1} } \str_put_right:Nn \l_phone_linktext_str {+} \str_put_right:NV \l_phone_linktext_str \l_phone_bereinigte_nummer_str |