Skip to content

Instantly share code, notes, and snippets.

@oberhamsi
Last active January 29, 2026 07:31
Show Gist options
  • Select an option

  • Save oberhamsi/5f989c16d72f505fedca329921e87c28 to your computer and use it in GitHub Desktop.

Select an option

Save oberhamsi/5f989c16d72f505fedca329921e87c28 to your computer and use it in GitHub Desktop.

Entscheidungsfälle (in der Reihenfolge im Code)

  1. Nur name vorhanden (name_de=="" && name_int=="" && name_en=="")
    • Rückgabe: transliterate(name)
  2. name + name_en, aber kein name_de und kein name_int (name_de=="" && name_int=="")
    • Wenn name lateinisch: Rückgabe name
    • Sonst, wenn name_en != name und name_en lateinisch und nicht „cluttered“: Rückgabe name_en
    • Sonst: Rückgabe name
  3. name + name_de, aber kein name_en und kein name_int (name_en=="" && name_int=="")
    • Wenn name lateinisch und name enthält name_de: Rückgabe name
    • Sonst, wenn name ein "/" enthält: Rückgabe name
    • Sonst, wenn name nicht „latin/greek/cyrillic“ (gemäß isLatinOrGreek) und name_de nicht „cluttered“: Rückgabe name_de
    • Sonst, wenn name „cyrillic“ (gemäß isCyrillic): Rückgabe transliterate(name)
    • Sonst: fällt später in Fall 7 („deutscher Name“) zurück
  4. name + name_int, aber kein name_de und kein name_en (name_de=="" && name_en=="")
    • Wenn name lateinisch: Rückgabe name
    • Sonst: Rückgabe name_int (falls nicht leer), sonst transliterate(name)
  5. name, name_de, name_en vorhanden, aber name_int fehlt (name_int=="")
    • Wenn name lateinisch: Rückgabe name
    • Sonst:
      • Wenn name_en „cluttered“ oder name nicht „latin/greek/cyrillic“: Rückgabe name_de
      • Sonst: Rückgabe name_en
  6. Alles außer name_de vorhanden (name_de=="")
    • Wenn name_int lateinisch und name_int != name:
      • Wenn name lateinisch: Rückgabe name
      • Sonst, wenn name_int enthält name oder name_int „cluttered“: Rückgabe name_en
      • Sonst: Rückgabe name_int
    • Sonst: Rückgabe name_en
  7. Fallback: „deutschen Namen verwenden“, wenn name_de existiert (name_de != "")
    • Normalfall: Rückgabe name_de
    • Ausnahme: Wenn name enthält name_de oder name/name_de enthält "(":
      • Wenn name lateinisch: Rückgabe name
      • Sonst: Rückgabe name_de
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment