Modul:Unicodezeichen

aus Wikipedia, der freien Enzyklopädie

Die Dokumentation für dieses Modul kann unter Modul:Unicodezeichen/Doku erstellt werden

local Unicodezeichen = {}

    function Unicodezeichen.Darstellung(frame) -- Zeichendarstellung für [[Vorlage:Zzeile]], Parameter "zeichentyp"
      local cc = '&#x' .. mw.text.trim(frame.args[1]) .. ';'	
      local punktkreis = '◌'
      local vs15       = '︎'
      local vs16       = '️'
      local rtl        = '‏'
      local ltr        = '‎'
      --    zwj        = '‍'
      local zeichentyp = frame.args[2]
      
      if     zeichentyp == 'diakrit'  then return punktkreis .. cc
      elseif zeichentyp == 'diakrit2' then return punktkreis .. cc .. punktkreis
      elseif zeichentyp == 'emoji'    then return cc .. vs15 .. '  ' .. cc .. vs16
      elseif zeichentyp == 'arab'     then return rtl .. cc .. cc .. cc .. ' ' .. cc .. ltr
      end
      return cc	
    end

    function Unicodezeichen.Dezimalcode(frame) -- liefert Dezimalcode gemäß DIN 5008 Anhang H
      local a = tonumber(frame.args[1],16)	  
      if not a then
        return 0
      end  

      local cc
      if     a >  0x2122 then return a -- Jenseits des maximalen Werts der in Win1252 enthaltenen Zeichen kann so die if-Kaskade übergangen werden
      elseif a == 0x20ac then cc = ' (0128)' -- 0x80 (Win1252 code)
      elseif a == 0x201a then cc = ' (0130)' -- 0x82
      elseif a == 0x0192 then cc = ' (0131)' -- 0x83
      elseif a == 0x201e then cc = ' (0132)' -- 0x84
      elseif a == 0x2026 then cc = ' (0133)' -- 0x85
      elseif a == 0x2020 then cc = ' (0134)' -- 0x86
      elseif a == 0x2021 then cc = ' (0135)' -- 0x87
      elseif a == 0x02c6 then cc = ' (0136)' -- 0x88
      elseif a == 0x2030 then cc = ' (0137)' -- 0x89
      elseif a == 0x0160 then cc = ' (0138)' -- 0x8a
      elseif a == 0x2039 then cc = ' (0139)' -- 0x8b
      elseif a == 0x0152 then cc = ' (0140)' -- 0x8c
      elseif a == 0x017d then cc = ' (0142)' -- 0x8e
      elseif a == 0x2018 then cc = ' (0145)' -- 0x91
      elseif a == 0x2019 then cc = ' (0146)' -- 0x92
      elseif a == 0x201c then cc = ' (0147)' -- 0x93
      elseif a == 0x201d then cc = ' (0148)' -- 0x94
      elseif a == 0x2022 then cc = ' (0149)' -- 0x95
      elseif a == 0x2013 then cc = ' (0150)' -- 0x96
      elseif a == 0x2014 then cc = ' (0151)' -- 0x97
      elseif a == 0x02dc then cc = ' (0152)' -- 0x98
      elseif a == 0x2122 then cc = ' (0153)' -- 0x99
      elseif a == 0x0161 then cc = ' (0154)' -- 0x9a
      elseif a == 0x203a then cc = ' (0155)' -- 0x9b
      elseif a == 0x0153 then cc = ' (0156)' -- 0x9c
      elseif a == 0x017e then cc = ' (0158)' -- 0x9e
      elseif a == 0x0178 then cc = ' (0159)' -- 0x9f
      else                    cc = ''
      end
      
      if a < 1000 then
      	return '0' .. a .. cc
      else
        return a .. cc
      end
    end

    function Unicodezeichen.Unicodeblocklemma(frame) -- liefert Lemma für den Unicode-Blocknamen (bzw. leere Zeichenfolge, falls das Zeichen zu keinem gelisteten Block gehört)
      local a = tonumber(frame.args[1],16)
      if not a then
        return ''
      end

      if     a <= 0x007F then return 'Basis-Lateinisch'
      elseif a <= 0x00FF then return 'Lateinisch-1, Ergänzung'
      elseif a <= 0x017F then return 'Lateinisch, erweitert-A'
      elseif a <= 0x024F then return 'Lateinisch, erweitert-B'
      elseif a <= 0x02AF then return 'IPA-Erweiterungen'
      elseif a <= 0x02FF then return 'Spacing Modifier Letters'
      elseif a <= 0x036F then return 'Kombinierende diakritische Zeichen'
      elseif a <= 0x03FF then return 'Griechisch und Koptisch'
      elseif a <= 0x04FF then return 'Kyrillisch'
      elseif a <= 0x052F then return 'Kyrillisch, Ergänzung'
      elseif a <= 0x058F then return 'Armenisch'
      elseif a <= 0x05FF then return 'Hebräisch'
      elseif a <= 0x06FF then return 'Arabisch'
      elseif a <= 0x074F then return 'Syrisch'
      elseif a <= 0x077F then return 'Arabisch, Ergänzung'
      elseif a <= 0x07BF then return 'Thaana'
      elseif a <= 0x07FF then return 'N’Ko'
      elseif a <= 0x083F then return 'Samaritanisch'
      elseif a <= 0x085F then return 'Mandäisch'
      elseif a <= 0x086F then return 'Syrisch, Ergänzung'
      elseif a <= 0x089F then return '' -- ''KEIN BLOCK''
      elseif a <= 0x08FF then return 'Arabisch, erweitert-A'
      elseif a <= 0x097F then return 'Devanagari'
      elseif a <= 0x09FF then return 'Bengalisch'
      elseif a <= 0x0A7F then return 'Gurmukhi'
      elseif a <= 0x0AFF then return 'Gujarati'
      elseif a <= 0x0B7F then return 'Oriya'
      elseif a <= 0x0BFF then return 'Tamilisch'
      elseif a <= 0x0C7F then return 'Telugu'
      elseif a <= 0x0CFF then return 'Kannada'
      elseif a <= 0x0D7F then return 'Malayalam'
      elseif a <= 0x0DFF then return 'Singhalesisch'
      elseif a <= 0x0E7F then return 'Thailändisch'
      elseif a <= 0x0EFF then return 'Laotisch'
      elseif a <= 0x0FFF then return 'Tibetisch'
      elseif a <= 0x109F then return 'Birmanisch'
      elseif a <= 0x10FF then return 'Georgisch'
      elseif a <= 0x11FF then return 'Hangeul-Jamo'
      elseif a <= 0x137F then return 'Äthiopisch'
      elseif a <= 0x139F then return 'Äthiopisch, Zusatz'
      elseif a <= 0x13FF then return 'Cherokee'
      elseif a <= 0x167F then return 'Vereinheitlichte Silbenzeichen kanadischer Ureinwohner'
      elseif a <= 0x169F then return 'Ogam'
      elseif a <= 0x16FF then return 'Runen'
      elseif a <= 0x171F then return 'Tagalog'
      elseif a <= 0x173F then return 'Hanunóo'
      elseif a <= 0x175F then return 'Buid'
      elseif a <= 0x177F then return 'Tagbanuwa'
      elseif a <= 0x17FF then return 'Khmer'
      elseif a <= 0x18AF then return 'Mongolisch'
      elseif a <= 0x18FF then return 'Vereinheitlichte Silbenzeichen kanadischer Ureinwohner, erweitert'
      elseif a <= 0x194F then return 'Limbu'
      elseif a <= 0x197F then return 'Tai Le'
      elseif a <= 0x19DF then return 'Neu-Tai-Lue'
      elseif a <= 0x19FF then return 'Khmer-Symbole'
      elseif a <= 0x1A1F then return 'Buginesisch'
      elseif a <= 0x1AAF then return 'Lanna'
      elseif a <= 0x1AFF then return 'Kombinierende diakritische Zeichen, erweitert'
      elseif a <= 0x1B7F then return 'Balinesisch'
      elseif a <= 0x1BBF then return 'Sundanesisch'
      elseif a <= 0x1BFF then return 'Batak'
      elseif a <= 0x1C4F then return 'Lepcha'
      elseif a <= 0x1C7F then return 'Ol Chiki'
      elseif a <= 0x1C8F then return 'Kyrillisch, erweitert-C'
      elseif a <= 0x1CBF then return 'Georgisch, erweitert'
      elseif a <= 0x1CCF then return 'Sundanesisch, Ergänzung'
      elseif a <= 0x1CFF then return 'Vedische Erweiterungen'
      elseif a <= 0x1D7F then return 'Phonetische Erweiterungen'
      elseif a <= 0x1DBF then return 'Phonetische Erweiterungen, Ergänzung'
      elseif a <= 0x1DFF then return 'Kombinierende diakritische Zeichen, Ergänzung'
      elseif a <= 0x1EFF then return 'Lateinisch, weiterer Zusatz'
      elseif a <= 0x1FFF then return 'Griechisch, Zusatz'
      elseif a <= 0x206F then return 'Allgemeine Interpunktion'
      elseif a <= 0x209F then return 'Hoch- und tiefgestellte Zeichen'
      elseif a <= 0x20CF then return 'Währungszeichen'
      elseif a <= 0x20FF then return 'Kombinierende diakritische Zeichen für Symbole'
      elseif a <= 0x214F then return 'Buchstabenähnliche Symbole'
      elseif a <= 0x218F then return 'Zahlzeichen'
      elseif a <= 0x21FF then return 'Pfeile'
      elseif a <= 0x22FF then return 'Mathematische Operatoren'
      elseif a <= 0x23FF then return 'Verschiedene technische Zeichen'
      elseif a <= 0x243F then return 'Symbole für Steuerzeichen'
      elseif a <= 0x245F then return 'Optische Zeichenerkennung'
      elseif a <= 0x24FF then return 'Umschlossene alphanumerische Zeichen'
      elseif a <= 0x257F then return 'Rahmenzeichnung'
      elseif a <= 0x259F then return 'Blockelemente'
      elseif a <= 0x25FF then return 'Geometrische Formen'
      elseif a <= 0x26FF then return 'Verschiedene Symbole'
      elseif a <= 0x27BF then return 'Dingbats'
      elseif a <= 0x27EF then return 'Verschiedene mathematische Symbole-A'
      elseif a <= 0x27FF then return 'Zusätzliche Pfeile-A'
      elseif a <= 0x28FF then return 'Braille-Zeichen'
      elseif a <= 0x297F then return 'Zusätzliche Pfeile-B'
      elseif a <= 0x29FF then return 'Verschiedene mathematische Symbole-B'
      elseif a <= 0x2AFF then return 'Zusätzliche Mathematische Operatoren'
      elseif a <= 0x2BFF then return 'Verschiedene Symbole und Pfeile'
      elseif a <= 0x2C5F then return 'Glagolitisch'
      elseif a <= 0x2C7F then return 'Lateinisch, erweitert-C'
      elseif a <= 0x2CFF then return 'Koptisch'
      elseif a <= 0x2D2F then return 'Georgisch, Ergänzung'
      elseif a <= 0x2D7F then return 'Tifinagh'
      elseif a <= 0x2DDF then return 'Äthiopisch, erweitert'
      elseif a <= 0x2DFF then return 'Kyrillisch, erweitert-A'
      elseif a <= 0x2E7F then return 'Zusätzliche Interpunktion'
      elseif a <= 0x2EFF then return 'CJK-Radikale, Ergänzung'
      elseif a <= 0x2FDF then return 'Kangxi-Radikale'
      elseif a <= 0x2FEF then return '' -- ''KEIN BLOCK''
      elseif a <= 0x2FFF then return 'Ideographische Beschreibungszeichen'
      elseif a <= 0x303F then return 'CJK-Symbole und -Interpunktion'
      elseif a <= 0x309F then return 'Hiragana'
      elseif a <= 0x30FF then return 'Katakana'
      elseif a <= 0x312F then return 'Bopomofo'
      elseif a <= 0x318F then return 'Hangeul-Jamo, Kompatibilität'
      elseif a <= 0x319F then return 'Kanbun'
      elseif a <= 0x31BF then return 'Bopomofo, erweitert'
      elseif a <= 0x31EF then return 'CJK-Striche'
      elseif a <= 0x31FF then return 'Katakana, Phonetische Erweiterungen'
      elseif a <= 0x32FF then return 'Umschlossene CJK-Zeichen und -Monate'
      elseif a <= 0x33FF then return 'CJK-Kompatibilität'
      elseif a <= 0x4DBF then return 'Vereinheitlichte CJK-Ideogramme, Erweiterung A'
      elseif a <= 0x4DFF then return 'I-Ging-Hexagramme'
      elseif a <= 0x9FFF then return 'Vereinheitlichte CJK-Ideogramme'
      elseif a <= 0xA48F then return 'Yi-Silbenzeichen'
      elseif a <= 0xA4CF then return 'Yi-Radikale'
      elseif a <= 0xA4FF then return 'Lisu'
      elseif a <= 0xA63F then return 'Vai'
      elseif a <= 0xA69F then return 'Kyrillisch, erweitert-B'
      elseif a <= 0xA6FF then return 'Bamum'
      elseif a <= 0xA71F then return 'Modifizierende Tonzeichen'
      elseif a <= 0xA7FF then return 'Lateinisch, erweitert-D'
      elseif a <= 0xA82F then return 'Syloti Nagri'
      elseif a <= 0xA83F then return 'Allgemeine indische Ziffern'
      elseif a <= 0xA87F then return 'Phagspa'
      elseif a <= 0xA8DF then return 'Saurashtra'
      elseif a <= 0xA8FF then return 'Devanagari, erweitert'
      elseif a <= 0xA92F then return 'Kayah Li'
      elseif a <= 0xA95F then return 'Rejang'
      elseif a <= 0xA97F then return 'Hangeul-Jamo, erweitert-A'
      elseif a <= 0xA9DF then return 'Javanisch'
      elseif a <= 0xA9FF then return 'Birmanisch, erweitert-B'
      elseif a <= 0xAA5F then return 'Cham'
      elseif a <= 0xAA7F then return 'Birmanisch, erweitert-A'
      elseif a <= 0xAADF then return 'Tai Viet'
      elseif a <= 0xAAFF then return 'Meitei-Mayek, Erweiterungen'
      elseif a <= 0xAB2F then return 'Äthiopisch, erweitert-A'
      elseif a <= 0xAB6F then return 'Lateinisch, erweitert-E'
      elseif a <= 0xABBF then return 'Cherokee, Ergänzung'
      elseif a <= 0xABFF then return 'Meitei-Mayek'
      elseif a <= 0xD7AF then return 'Hangeul-Silbenzeichen'
      elseif a <= 0xD7FF then return 'Hangeul-Jamo, erweitert-B'
      elseif a <= 0xDB7F then return '' -- [[Unicode Transformation Format|High Surrogates]]
      elseif a <= 0xDBFF then return '' -- [[Unicode Transformation Format|High Surrogates (privater Bereich)]]
      elseif a <= 0xDFFF then return '' -- Low Surrogates
      elseif a <= 0xF8FF then return '' -- [[Private Use Area#Private Use Zone|Private Use Zone]]
      elseif a <= 0xFAFF then return 'CJK-Ideogramme, Kompatibilität'
      elseif a <= 0xFB4F then return 'Alphabetische Präsentationsformen'
      elseif a <= 0xFDFF then return 'Arabische Präsentationsformen-A'
      elseif a <= 0xFE0F then return 'Variantenselektoren'
      elseif a <= 0xFE1F then return 'Vertikale Formen'
      elseif a <= 0xFE2F then return 'Kombinierende halbe diakritische Zeichen'
      elseif a <= 0xFE4F then return 'CJK-Kompatibilitätsformen'
      elseif a <= 0xFE6F then return 'Kleine Formvarianten'
      elseif a <= 0xFEFF then return 'Arabische Präsentationsformen-B'
      elseif a <= 0xFFEF then return 'Halbbreite und vollbreite Formen'
      elseif a <= 0xFFFD then return 'Spezielles'
      elseif a <= 0xFFFF then return '' -- Kein Unicode-Zeichen
      elseif a <= 0x1007F then return 'Linear-B-Silbenzeichen'
      elseif a <= 0x100FF then return 'Linear-B-Ideogramme'
      elseif a <= 0x1013F then return 'Ägäische Zahlzeichen'
      elseif a <= 0x1018F then return 'Altgriechische Zahlzeichen'
      elseif a <= 0x101CF then return 'Alte Symbole'
      elseif a <= 0x101FF then return 'Diskos von Phaistos'
      elseif a <= 0x1023F then return '' -- Nord-Paläohispanisch|url=[https://www.unicode.org/L2/L2019/19045-paleo-hispanic.pdf Info (PDF)]
      elseif a <= 0x1027F then return '' -- Süd-Paläohispanisch|url=[https://www.unicode.org/L2/L2019/19045-paleo-hispanic.pdf Info (PDF)]
      elseif a <= 0x1029F then return 'Lykisch'
      elseif a <= 0x102DF then return 'Karisch'
      elseif a <= 0x102FF then return 'Koptische Zahlzeichen'
      elseif a <= 0x1032F then return 'Altitalisch'
      elseif a <= 0x1034F then return 'Gotisch'
      elseif a <= 0x1037F then return 'Altpermisch'
      elseif a <= 0x1039F then return 'Ugaritisch'
      elseif a <= 0x103DF then return 'Altpersisch'
      elseif a <= 0x103FF then return '' -- Shaw-Alphabet QS
      elseif a <= 0x1044F then return 'Mormonenalphabet'
      elseif a <= 0x1047F then return 'Shaw-Alphabet'
      elseif a <= 0x104AF then return 'Osmaniya'
      elseif a <= 0x104FF then return 'Osage'
      elseif a <= 0x1052F then return 'Albanisch'
      elseif a <= 0x1056F then return 'Alwanisch'
      elseif a <= 0x105BF then return '' -- Vithkuqi-Alphabet
      elseif a <= 0x105FF then return '' -- Todhri-Schrift
      elseif a <= 0x1077F then return 'Linear A'
      elseif a <= 0x107BF then return '' -- ''KEIN BLOCK''
      elseif a <= 0x107FF then return '' -- Rejang Erweitert
      elseif a <= 0x1083F then return 'Kyprische Schrift'
      elseif a <= 0x1085F then return 'Aramäisch'
      elseif a <= 0x1087F then return 'Palmyrenisch'
      elseif a <= 0x108AF then return 'Nabatäisch'
      elseif a <= 0x108BF then return '' -- ''KEIN BLOCK''
      elseif a <= 0x108DF then return '' -- Numidisch
      elseif a <= 0x108FF then return 'Hatran'
      elseif a <= 0x1091F then return 'Phönizisch'
      elseif a <= 0x1093F then return 'Lydisch'
      elseif a <= 0x1097F then return '' -- ''KEIN BLOCK''
      elseif a <= 0x1099F then return 'Meroitische Hieroglyphen'
      elseif a <= 0x109FF then return 'Meroitisch-demotisch'
      elseif a <= 0x10A5F then return 'Kharoshthi'
      elseif a <= 0x10A7F then return 'Altsüdarabisch'
      elseif a <= 0x10A9F then return 'Altnordarabisch'
      elseif a <= 0x10ABF then return '' -- Baltisch|url=[http://www.unicode.org/L2/Historical/wg2-n2042-utr3-proposals.pdf Info (PDF)]
      elseif a <= 0x10AFF then return 'Manichäisch'
      elseif a <= 0x10B3F then return 'Avestisch'
      elseif a <= 0x10B5F then return 'Parthisch'
      elseif a <= 0x10B7F then return 'Inschriften-Pahlavi'
      elseif a <= 0x10BAF then return 'Psalter-Pahlavi'
      elseif a <= 0x10BDF then return '' -- Buch-Pahlavi|url=[https://www.unicode.org/L2/L2018/18276-book-pahlavi.pdf Info (PDF)]
      elseif a <= 0x10BFF then return '' -- Baburisch|url=[http://www.unicode.org/L2/L2011/11341-khatt-i-baburi.pdf Info (PDF)]
      elseif a <= 0x10C4F then return 'Alttürkisch'
      elseif a <= 0x10C7F then return '' -- ''KEIN BLOCK''
      elseif a <= 0x10CFF then return 'Altungarisch'
      elseif a <= 0x10D3F then return 'Hanifi Rohingya'
      elseif a <= 0x10D8F then return '' -- Wolof|url=[http://www.unicode.org/L2/L2016/16069-n4709-garay-revision.pdf Info (PDF)]
      elseif a <= 0x10DFF then return '' -- Byblos-Schrift
      elseif a <= 0x10E5F then return '' -- ''KEIN BLOCK''
      elseif a <= 0x10E7F then return 'Rumi-Ziffern'
      elseif a <= 0x10EBF then return '' -- Yezidi|url=[https://www.unicode.org/L2/L2019/19051-yezidi.pdf Info (PDF)]
      elseif a <= 0x10EFF then return '' -- ''KEIN BLOCK''
      elseif a <= 0x10F2F then return 'Altsogdisch'
      elseif a <= 0x10F6F then return 'Sogdisch'
      elseif a <= 0x10FAF then return '' -- Alt-Uigurisch
      elseif a <= 0x10FDF then return '' -- Chorasmian
      elseif a <= 0x10FFF then return 'Elymaisch'
      elseif a <= 0x1107F then return 'Brahmi'
      elseif a <= 0x110CF then return 'Kaithi'
      elseif a <= 0x110FF then return 'Sorang-Sompeng'
      elseif a <= 0x1114F then return 'Chakma'
      elseif a <= 0x1117F then return 'Mahajani'
      elseif a <= 0x111DF then return 'Sharada'
      elseif a <= 0x111FF then return 'Singhalesische Zahlzeichen'
      elseif a <= 0x1124F then return 'Khojki'
      elseif a <= 0x1127F then return '' -- Landa-Alphabet|url=[http://www.unicode.org/L2/L2010/10013r-landa.pdf Info (PDF)]
      elseif a <= 0x112AF then return 'Multanisch'
      elseif a <= 0x112FF then return 'Khudabadi'
      elseif a <= 0x1137F then return 'Grantha'
      elseif a <= 0x113FF then return '' -- [[Tigalari]]|url=[http://www.unicode.org/L2/L2017/17378-tigalari.pdf Info (PDF)]
      elseif a <= 0x1147F then return 'Newa'
      elseif a <= 0x114DF then return 'Tirhuta'
      elseif a <= 0x114FF then return '' -- [[Tanisch]]|url=[http://www.unicode.org/L2/L2010/10146-tani-lipi.pdf Info (PDF), Codepoints im Antrag veraltet]
      elseif a <= 0x1157F then return '' -- [[Ranjana]]|url=[http://www.unicode.org/L2/L2016/16015-ranjana.pdf Info (PDF)]
      elseif a <= 0x115FF then return 'Siddham'
      elseif a <= 0x1165F then return 'Modi'
      elseif a <= 0x1167F then return 'Mongolisch, Ergänzung'
      elseif a <= 0x116CF then return 'Takri'
      elseif a <= 0x116FF then return '' -- Jenticha-Schrift|url=[http://www.unicode.org/L2/L2011/11218-n4028-jenticha.pdf Info (PDF)]
      elseif a <= 0x1173F then return 'Ahom'
      elseif a <= 0x1179F then return '' -- [[Zou (Sprache)|Zou]]|url=[http://www.unicode.org/L2/L2010/10254r2-zou.pdf Info (PDF)]
      elseif a <= 0x117FF then return '' -- Pyu-Schrift|url=[http://www.unicode.org/L2/L2010/10295-pyu-chart.pdf Info (PDF)]
      elseif a <= 0x1184F then return 'Dogra'
      elseif a <= 0x1188F then return '' -- Sirmauri
      elseif a <= 0x1189F then return '' -- ''KEIN BLOCK''
      elseif a <= 0x118FF then return 'Varang Kshiti'
      elseif a <= 0x1195F then return '' -- Dhives Akuru|url=[http://www.unicode.org/L2/L2018/18016r-dives-akuru.pdf Info (PDF)]
      elseif a <= 0x1199F then return '' -- [[Vatteluttu-Alphabet|Vatteluttu]]|url=[http://www.unicode.org/L2/L2016/16068-vatteluttu.pdf Info (PDF), Codepoints im Antrag veraltet]
      elseif a <= 0x119FF then return 'Nandinagari'
      elseif a <= 0x11A4F then return 'Dsanabadsar-Quadratschrift'
      elseif a <= 0x11AAF then return 'Sojombo'
      elseif a <= 0x11ABF then return '' -- ''KEIN BLOCK''
      elseif a <= 0x11AFF then return 'Pau Cin Hau'
      elseif a <= 0x11B4F then return '' -- Devanagari Extended-A
      elseif a <= 0x11B7F then return '' -- Sharada Extended
      elseif a <= 0x11BBF then return '' -- Tolong Siki|url=[http://www.unicode.org/L2/L2010/10106-n3811-tolongsiki.pdf Info (PDF)]
      elseif a <= 0x11BFF then return '' -- Khambu Rai|url=[http://www.unicode.org/L2/L2011/11105-khambu-rai.pdf Info (PDF)]
      elseif a <= 0x11C6F then return 'Bhaiksuki'
      elseif a <= 0x11CBF then return 'Marchen'
      elseif a <= 0x11CFF then return '' -- Baltisch-B|url=[http://www.unicode.org/L2/L2011/11103-balti-b.pdf Info (PDF)]
      elseif a <= 0x11D5F then return 'Masaram Gondi'
      elseif a <= 0x11DAF then return 'Gunjala Gondi'
      elseif a <= 0x11DFF then return '' -- Kawi|url=[http://www.unicode.org/L2/L2012/12125-kawi.pdf Info (PDF)]
      elseif a <= 0x11E6F then return '' -- [[Tocharische Sprache|Tocharisch]]|url=[http://www.unicode.org/L2/L2015/15023-tocharian.pdf Info (PDF)]
      elseif a <= 0x11ECF then return '' -- [[Sakische Sprache|Khotanesisch]]|url=[http://www.unicode.org/L2/L2015/15022-khotanese.pdf Info (PDF)]
      elseif a <= 0x11EDF then return '' -- ''KEIN BLOCK''
      elseif a <= 0x11EFF then return 'Makassar'
      elseif a <= 0x11F3F then return '' -- Leke|url=[http://www.unicode.org/L2/L2012/12363-n4344.pdf Info (PDF)]
      elseif a <= 0x11F5F then return '' -- ''KEIN BLOCK''
      elseif a <= 0x11FAF then return '' -- "Chola" (?)|url=[http://www.unicode.org/L2/L2018/18083-pallava.pdf Info (PDF)]
      elseif a <= 0x11FBF then return '' -- Lisu, Zusatz|url=[http://www.unicode.org/L2/L2018/18338r-lisu-letter-yha.pdf Info (PDF)]
      elseif a <= 0x11FFF then return 'Tamilisch, Ergänzung'
      elseif a <= 0x123FF then return 'Keilschrift'
      elseif a <= 0x1247F then return 'Keilschrift-Zahlzeichen und -Interpunktion'
      elseif a <= 0x1254F then return 'Frühe Keilschrift'
      elseif a <= 0x1257F then return '' -- ''KEIN BLOCK''
      elseif a <= 0x1267F then return '' -- Proto-Keilschrift|url=[http://www.unicode.org/L2/L2017/17157-n4797-proto-cuneiform.pdf Info (PDF)], Codepoints seitdem geändert
      elseif a <= 0x126CF then return '' -- Proto-Keilschrift-Ziffern|url=[http://www.unicode.org/L2/L2017/17157-n4797-proto-cuneiform.pdf Info (PDF)], Codepoints seitdem geändert
      elseif a <= 0x12DFF then return '' -- ''KEIN BLOCK''
      elseif a <= 0x12F8F then return '' -- [[Indus-Schrift]]|url=[http://www.unicode.org/L2/L1999/n1959.pdf Info (PDF)]
      elseif a <= 0x12FFF then return '' -- ''KEIN BLOCK''
      elseif a <= 0x1342F then return 'Ägyptische Hieroglyphen'
      elseif a <= 0x1343F then return 'Ägyptische Hieroglyphen-Steuerzeichen'
      elseif a <= 0x143FF then return '' -- Ägypt. Hieroglyphen, erweitert A|url=[http://www.unicode.org/L2/L2017/17415-n4924-hieroglyphs.pdf Info (PDF)]
      elseif a <= 0x1467F then return 'Anatolische Hieroglyphen'
      elseif a <= 0x14FFF then return '' -- Ägypt. Hieroglyphen, erweitert B|url=[http://www.unicode.org/L2/L2017/17415-n4924-hieroglyphs.pdf Info (PDF)]
      elseif a <= 0x1503F then return '' -- Lampung|url=[http://www.unicode.org/L2/L2016/16073-lampung.pdf Info (PDF)]
      elseif a <= 0x1506F then return '' -- Kerinci|url=[http://www.unicode.org/L2/L2016/16074-kerinci.pdf Info (PDF)]
      elseif a <= 0x1507F then return '' -- ''KEIN BLOCK''
      elseif a <= 0x154FF then return '' -- Mandombe|url=[http://www.unicode.org/L2/L2015/15118-mandombe.pdf Info (PDF)]
      elseif a <= 0x159FF then return '' -- Maya-Hieroglyphen
      elseif a <= 0x15BFF then return '' -- ''KEIN BLOCK''
      elseif a <= 0x15FFF then return '' -- Azteken-Piktogramme
      elseif a <= 0x1607F then return '' -- [[Cirth]]|url=[http://std.dkuug.dk/JTC1/SC2/WG2/docs/n1642/n1642.htm Info (HTML)]
      elseif a <= 0x160FF then return '' -- [[Tengwar]]|url=[http://std.dkuug.dk/JTC1/SC2/WG2/docs/n1641/n1641.htm Info (HTML)]
      elseif a <= 0x1613F then return '' -- Khema-Gurung|url=[http://www.unicode.org/L2/L2011/11106-gurung-khema.pdf Info (HTML)]
      elseif a <= 0x1617F then return '' -- Khe-Prih-Gurung
      elseif a <= 0x1619F then return '' -- ''KEIN BLOCK''
      elseif a <= 0x161FF then return '' -- [[Moonalphabet]]
      elseif a <= 0x166FF then return '' -- [[Bliss-Symbole]]
      elseif a <= 0x167AF then return '' -- Bagam-Schrift
      elseif a <= 0x167FF then return '' -- [[Iban (Sprache)|Iban]]
      elseif a <= 0x16A3F then return 'Bamum, Ergänzung'
      elseif a <= 0x16A6F then return 'Mro'
      elseif a <= 0x16ACF then return '' -- Tangsa-Schrift (Mossang)|url=[http://www.unicode.org/L2/L2013/13231-intro-mossang-tangsa.pdf Info (PDF)]
      elseif a <= 0x16AFF then return 'Bassa Vah'
      elseif a <= 0x16B8F then return 'Pahawh Hmong'
      elseif a <= 0x16BFF then return '' -- Woleai-Schrift|url=[http://www.unicode.org/L2/L2011/11362-n4146-woleai.pdf Info (PDF)]
      elseif a <= 0x16C7F then return '' -- Kpelle|url=[http://www.unicode.org/L2/L2010/10063-n3762-kpelle.pdf Info (PDF)]
      elseif a <= 0x16CCF then return '' -- Afaka|url=[http://www.unicode.org/L2/L2012/12228-n4292-afaka.pdf Info (PDF)]
      elseif a <= 0x16CFF then return '' -- Tangsa-Schrift (Khimhun)|url=[http://www.unicode.org/L2/L2013/13230-intro-khimhun-tangsa.pdf Info (PDF)]
      elseif a <= 0x16D3F then return '' -- Tikamuli|url=[http://www.unicode.org/L2/L2010/10465r-tikamuli.pdf Info (PDF), Codepoints seitdem geändert]
      elseif a <= 0x16D7F then return '' -- Kirat Rai|url=[http://www.unicode.org/L2/L2011/11145-kirat-rai.pdf Info (PDF)]
      elseif a <= 0x16DCF then return '' -- ''KEIN BLOCK''
      elseif a <= 0x16DFF then return '' -- Kulitan|url=[http://www.unicode.org/L2/L2015/15232-kulitan.pdf Info (PDF)]
      elseif a <= 0x16E3F then return '' -- Mwangwego|url=[http://www.unicode.org/L2/L2012/12311-n4323-mwangwego.pdf Info (PDF)]
      elseif a <= 0x16E9F then return 'Medefaidrin'
      elseif a <= 0x16EFF then return '' -- Buginesisch, Ergänzung|url=[http://www.unicode.org/L2/L2016/16159-buginese-ext.pdf Info (PDF)]
      elseif a <= 0x16F9F then return 'Pollard-Schrift'
      elseif a <= 0x16FDF then return '' -- [[Lontara]]
      elseif a <= 0x16FFF then return 'Ideographische Symbole und Interpunktion'
      elseif a <= 0x187FF then return 'Xixia'
      elseif a <= 0x18AFF then return 'Xixia-Komponenten'
      elseif a <= 0x18CFF then return '' -- Kitan-Schmalschrift|url=[http://www.unicode.org/L2/L2018/18221-n5006-6th-ed-cd-chart.pdf Info (PDF)]
      elseif a <= 0x18D1F then return '' -- Kitan-Schmalschrift-Radikale
      elseif a <= 0x195FF then return '' -- Kitan-Ideogramme|url=[http://www.unicode.org/L2/L2014/14234-n4631-khitan.pdf Info (PDF)]
      elseif a <= 0x19B5F then return '' -- [[Jurchen]]|url=[http://www.unicode.org/L2/L2010/10101-n3788.pdf Info (PDF)]
      elseif a <= 0x19B9F then return '' -- Jurchen Radikale|url=[http://www.unicode.org/L2/L2010/10101-n3788.pdf Info (PDF)]
      elseif a <= 0x19DFF then return '' -- ''KEIN BLOCK''
      elseif a <= 0x1A2FF then return '' -- Pau-Cin-Hau-Silben|url=[http://www.unicode.org/L2/L2013/13067-paucinhau-syllabary.pdf Info (PDF)]
      elseif a <= 0x1A75F then return '' -- Eskaya-Schrift|url=[http://www.unicode.org/L2/L2013/13229-eskaya.pdf Info (PDF)]
      elseif a <= 0x1A77F then return '' -- ''KEIN BLOCK''
      elseif a <= 0x1A7FF then return '' -- "Kaida"
      elseif a <= 0x1ACFF then return '' -- Naxi Dongba|url=[http://www.unicode.org/L2/L2017/17337-n4895-naxi-dongba-adhoc.pdf Info (PDF)]
      elseif a <= 0x1AFFF then return '' -- "Naxi Geba"
      elseif a <= 0x1B0FF then return 'Kana, Ergänzung'
      elseif a <= 0x1B12F then return 'Kana, erweitert-A'
      elseif a <= 0x1B16F then return 'Kleine Kana, erweitert'
      elseif a <= 0x1B2FF then return 'Frauenschrift'
      elseif a <= 0x1B4FF then return '' -- Shuishu|url=[http://www.unicode.org/L2/L2017/17336-n4894-shuishu-adhoc.pdf Info (PDF)]
      elseif a <= 0x1B52F then return '' -- Shuishu-Radikale|url=[http://www.unicode.org/L2/L2017/17336-n4894-shuishu-adhoc.pdf Info (PDF)]
      elseif a <= 0x1BBFF then return '' -- "Proto-Elamite"
      elseif a <= 0x1BC9F then return 'Duployé-Kurzschrift'
      elseif a <= 0x1BCAF then return 'Kurzschrift-Steuerzeichen'
      elseif a <= 0x1BCFF then return '' -- [[Pitman-Kurzschrift]]|url=[http://www.unicode.org/L2/L2015/15116-pitman.pdf Info (PDF)]
      elseif a <= 0x1BFFF then return '' -- Kurzschrift
      elseif a <= 0x1CA7F then return '' -- Micmac-Hieroglyphen
      elseif a <= 0x1CDBF then return '' -- Rongorongo
      elseif a <= 0x1CFFF then return '' -- ''KEIN BLOCK''
      elseif a <= 0x1D0FF then return 'Byzantinische Notenschriftzeichen'
      elseif a <= 0x1D1FF then return 'Notenschriftzeichen'
      elseif a <= 0x1D24F then return 'Altgriechische Notenschriftzeichen'
      elseif a <= 0x1D27F then return '' -- ''KEIN BLOCK''
      elseif a <= 0x1D2AF then return '' -- Pipa-Notenschrift|url=[https://www.unicode.org/L2/L2017/17311-n4848-lute.pdf Info (PDF)]
      elseif a <= 0x1D2CF then return '' -- Chinesische Flöten-Notenschrift|url=[https://www.unicode.org/L2/L2017/17312-n4849-flute.pdf Info (PDF)]
      elseif a <= 0x1D2DF then return '' -- ''KEIN BLOCK''
      elseif a <= 0x1D2FF then return 'Maya-Zahlzeichen'
      elseif a <= 0x1D35F then return '=Tai-Xuan-Jing-Symbole'
      elseif a <= 0x1D37F then return 'Zählstabziffern'
      elseif a <= 0x1D3FF then return '' -- Mathematische alphanumerische Symbole, Zusatz
      elseif a <= 0x1D7FF then return 'Mathematische alphanumerische Symbole'
      elseif a <= 0x1DAAF then return 'Sutton-SignWriting'
      elseif a <= 0x1DFFF then return '' -- ''KEIN BLOCK''
      elseif a <= 0x1E02F then return 'Glagolitisch, Ergänzung'
      elseif a <= 0x1E0FF then return '' -- ''KEIN BLOCK''
      elseif a <= 0x1E14F then return 'Nyiakeng Puachue Hmong'
      elseif a <= 0x1E1FF then return '' -- Eebee Hmong|url=[http://www.unicode.org/L2/L2015/15180-n4668-eebee-hmong.pdf Info (PDF)]
      elseif a <= 0x1E25F then return '' -- Westliches Cham|url=[http://www.unicode.org/L2/L2016/16198-n4734-western-cham.pdf Info (PDF)]
      elseif a <= 0x1E28F then return '' -- [[Beria]]
      elseif a <= 0x1E2BF then return '' -- ''KEIN BLOCK''
      elseif a <= 0x1E2FF then return 'Wancho'
      elseif a <= 0x1E41F then return '' -- Loma|url=[http://www.unicode.org/L2/L2017/17059-n4786-loma.pdf Info (PDF)]
      elseif a <= 0x1E4FF then return '' -- ''KEIN BLOCK''
      elseif a <= 0x1E52F then return '' -- Pungchen-Schrift|url=[https://www.unicode.org/L2/L2017/17181-pungchen.pdf Info (PDF)]
      elseif a <= 0x1E55F then return '' -- Pungchung
      elseif a <= 0x1E59F then return '' -- Marchung
      elseif a <= 0x1E5CF then return '' -- Brucha-Schrift|url=[https://www.unicode.org/L2/L2017/17183-brusha.pdf Info (PDF)]
      elseif a <= 0x1E7FF then return '' -- ''KEIN BLOCK''
      elseif a <= 0x1E8DF then return 'Mende-Schrift'
      elseif a <= 0x1E8FF then return '' -- ''KEIN BLOCK''
      elseif a <= 0x1E95F then return 'Adlam'
      elseif a <= 0x1EBFF then return '' -- ''KEIN BLOCK''
      elseif a <= 0x1EC6F then return '' -- "Persian Siyaq Numbers"|url=[ Info (PDF)]
      elseif a <= 0x1ECBF then return 'Indische Siyaq-Zahlzeichen'
      elseif a <= 0x1ECFF then return '' -- "Diwani Siyaq Numbers"|url=[ Info (PDF)]
      elseif a <= 0x1ED4F then return 'Osmanische Siyaq-Zahlzeichen'
      elseif a <= 0x1EDFF then return '' -- ''KEIN BLOCK''
      elseif a <= 0x1EEFF then return 'Arabische mathematische alphanumerische Symbole'
      elseif a <= 0x1EFFF then return '' -- ''KEIN BLOCK''
      elseif a <= 0x1F02F then return 'Mahjonggsteine'
      elseif a <= 0x1F09F then return 'Dominosteine'
      elseif a <= 0x1F0FF then return 'Spielkarten'
      elseif a <= 0x1F1FF then return 'Zusätzliche umschlossene alphanumerische Zeichen'
      elseif a <= 0x1F2FF then return 'Zusätzliche umschlossene CJK-Zeichen'
      elseif a <= 0x1F5FF then return 'Verschiedene piktografische Symbole'
      elseif a <= 0x1F64F then return 'Smileys'
      elseif a <= 0x1F67F then return 'Ziersymbole'
      elseif a <= 0x1F6FF then return 'Verkehrs- und Kartensymbole'
      elseif a <= 0x1F77F then return 'Alchemistische Symbole'
      elseif a <= 0x1F7FF then return 'Geometrische Formen, erweitert'
      elseif a <= 0x1F8FF then return 'Zusätzliche Pfeile-C'
      elseif a <= 0x1F9FF then return 'Zusätzliche piktografische Symbole'
      elseif a <= 0x1FA6F then return 'Schachsymbole'
      elseif a <= 0x1FAFF then return 'Piktografische Symbole, erweitert-A'
      elseif a <= 0x1FBFF then return '' -- Symbole für [[Altsystem]]e|url=[http://www.unicode.org/L2/L2017/17435-terminals-prop.pdf Info (PDF)]
      elseif a <= 0x1FFFF then return '' -- ''KEIN BLOCK''
      elseif a <= 0x2A6DF then return 'Vereinheitlichte CJK-Ideogramme, Erweiterung B'
      elseif a <= 0x2A6FF then return '' -- ''KEIN BLOCK''
      elseif a <= 0x2B73F then return 'Vereinheitlichte CJK-Ideogramme, Erweiterung C'
      elseif a <= 0x2B81F then return 'Vereinheitlichte CJK-Ideogramme, Erweiterung D'
      elseif a <= 0x2CEAF then return 'Vereinheitlichte CJK-Ideogramme, Erweiterung E'
      elseif a <= 0x2EBEF then return 'Vereinheitlichte CJK-Ideogramme, Erweiterung F'
      elseif a <= 0x2F7FF then return '' -- ''KEIN BLOCK''
      elseif a <= 0x2FA1F then return 'CJK-Ideogramme, Kompatibilität, Ergänzung'
      elseif a <= 0x2FFFF then return '' -- ''KEIN BLOCK''
      elseif a <= 0x3138F then return '' -- Vereinheitlichte CJK-Ideogramme, Erweiterung G|url=[http://www.unicode.org/L2/L2017/17366r-n4922-5th-ed-pdam2-2-chart.pdf Info (PDF)]
      elseif a <= 0x313FF then return '' -- ''KEIN BLOCK''
      elseif a <= 0x33D1F then return '' -- Schmale [[Siegelschrift]]|url=[http://www.unicode.org/L2/L2015/15281-n4688-small-seal.pdf Info (PDF)]
      elseif a <= 0x33DFF then return '' -- ''KEIN BLOCK''
      elseif a <= 0x355FF then return '' -- Schmale Orakelknochen-Schrift|url=[http://www.unicode.org/L2/L2015/15280-n4687-oracle-bone.pdf Info (PDF)]
      elseif a <= 0xDFFFF then return '' -- ''KEIN BLOCK''
      elseif a <= 0xE007F then return 'Tags'
      elseif a <= 0xE00FF then return '' -- ''KEIN BLOCK''
      elseif a <= 0xE01EF then return 'Variantenselektoren, Ergänzung'
      elseif a <= 0xEFFFF then return '' -- ''KEIN BLOCK''
      end
    return ''
    end

    function Unicodezeichen.CodepunktMitBlocklink(frame) -- liefert Codepunkt-Angabe, ggf. mit Link auf Unicodeblock
      local cc = 'U+' .. mw.text.trim(frame.args[1])
      local b = Unicodezeichen.Unicodeblocklemma(frame)
      if b == '' then -- "frame" fehlerhaft, oder kein Block zugeordnet
        return cc
      end  

      return '[[Unicodeblock ' .. b .. '|' .. cc .. ']]'
    end
    
return Unicodezeichen