Startseite
  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche
Startseite › Forum › Drupalcenter.de › Anfängerfragen ›

Rückfallsprache de-ch de-at und IE8 Problem

Eingetragen von DruBlue (11)
am 18.12.2009 - 17:40 Uhr in
  • Anfängerfragen
  • Drupal 6.x

Hallo zusammen,

ich bin neu hier und will erstmal meinen dank an alle richten die uns Anfängern mit ihrer Erfahrung unter die Arme greifen. Hat mir bisher sehr geholfen.

Doch jetzt hab ich ein Problem das ich selbst nicht auf die Reihe kriege:

Ich versuche eine zweisprachige Seite aufzustellen (englisch-deutsch), dabei hab ich 2 Probleme.

1. beim IE8 funktioniert die Erkennung der Spracheinstellung nicht, wenn man in den Einstellungen den Browser nicht explizit auf "de" stellt. Per default steht der auf "de-DE"...hat Drupal keinen Bock drauf....damit kommen wir zum Problem No....

2. Wenn die Sprachen de-at (Gruss nach Österreich) ..und de-ch (I love switzerland) eingestellt sind, kapiert Drupal auch nicht, dass damit deutsch gemeint ist.

scheint, als ob Drupal mit Länderkennungen die >2 Zeichen beinhalten nicht klar kommt. Ich hab die Tage in meinem Recherchewahn mal irgendwas gefunden, wo ein Chinese dasselbe Problem hatte und ein Schnipsel PHP das Problem anscheinend behoben hat. Aber keine Ahnung wo das war.

Wenn einer einen Tip hat wie ich das lösen kann, wär ich sehr dankbar.

Gruss
der Blaue

‹ Video Modul [gelöst] Datei in Datenbank schreiben ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

WAs bedeutet Rückfallsprache ?

Eingetragen von Bogus (319)
am 18.12.2009 - 18:22 Uhr

Hallo ;D

Sorry für das OT

Aber was bedeutet Rückfallsprache ? Das Wort habe ich echt noch nie gehört ?

Greetings

Bogus

www.LinuxSoftBoard.de

  • Anmelden oder Registrieren um Kommentare zu schreiben

Hi, unter Sprachen >

Eingetragen von DruBlue (11)
am 18.12.2009 - 18:37 Uhr

Hi,

unter Sprachen > konfigurieren kann man einstellen, wie sich Drupal bei der Spracherkennung verhalten soll:

Keine.
Nur Pfad-Präfix
Prad-Präfix mit Rückfallsprache
Nur Domain-Name.

Rückfallsprache bedeutet in dem Fall, das wenn Drupal eine Sprache erkennt (anhand meiner Browsereinstellung z.B.) die Anzeigesprache (sofern installiert) darauf umgestellt wird.

Also:

2 Sprachen istalliert...deutsch/englisch....Browser steht auf "deutsch"...Drupal zeigt automatisch deutsch an (auch wenn die default Sprache englisch ist).

www.speednuts.de

  • Anmelden oder Registrieren um Kommentare zu schreiben

Hallo zusammen,mir sind

Eingetragen von fh (153)
am 18.12.2009 - 18:55 Uhr

Hallo zusammen,

mir sind einige Möglichkeiten eingefallen, vielleicht führt das auch gleich zur Lösung.

Du schreibst für deutsch "de-de", meines Erachtens ist das nicht richtig. Versuch doch mal nur "de" anzugeben. Wenn deutsch deine Standardsprache ist, so würde ich überhaupt nichts als Präfix angeben, dafür aber in englisch das "en".
Vielleicht wäre es besser, für eine mehrsprachige Site englisch als Standard einzustellen. Dem Deutsch "de", bei "de-CH" und "de-AT" würde ich die Präfixe "de-ch" und "de-at" vergeben. Wenn du enlisch als Standard nimmst, so vergiss nicht das "en" rauszunehmen und bei deutsch ein "de" zu vergeben.

Du hast ja bemerkt, dass bei de-ch als Hauptübersetzung auch englisch genommen wird, dies hat mit der Programmierung von Drupal zu tun. Wenn es kein de-ch gibt, so wird die Sprache gemäss Programmierung ausgegeben und da de-ch nichts hat ist das englisch.

Anonsten könnte eventuell dieser Link weiterhelfen http://drupal.org/project/potx
das i18n (wichtig für Übersetzung von Links, Blöcken, Taxonomien und mehr) hast du dir schon angesehen? Du findest das glaub ich unter http://drupal.org/project/i18n
ev. wäre das auch noch was http://drupal.org/project/l10n_client (und l10n_server)

Vielleicht hilft es ja weiter

Gruss

Fredi

EDIT: korrigiert

  • Anmelden oder Registrieren um Kommentare zu schreiben

Hi Fredi, danke für die

Eingetragen von DruBlue (11)
am 18.12.2009 - 19:02 Uhr

Hi Fredi,

danke für die schnelle Antwort.

i18n hab ich schon installiert, aber wenn ich das richtig sehe hat das zunächst mal keinen Einfluss auf die Browser Erkennung....

"de-DE" (auch mit dem großen Buchstaben) ist die default Einstellung beim IE8. Das ist es was Drupal nicht erkennt. Erst wenn ich händisch auf das ebenfalls verfügbare "de" umstelle, erkennt Drupal, dass es sich um deutsch handelt.

Dasselbe bei "de-at" und "de-ch". Versteh ich das richtig, dass ich beim Pfad Präfix nur einen Präfix angeben kann?

Es muss ja irgendwie möglich sein, Drupal zu sagen, dass er diese 3 Spracheinstellung browserseits als deutsch interpretieren soll (de-DE, de-ch und de-at).

Danke erstmal für deinen input.

www.speednuts.de

  • Anmelden oder Registrieren um Kommentare zu schreiben

de-DE, en-US

Eingetragen von DruBlue (11)
am 18.12.2009 - 23:00 Uhr

also ich hab jetzt eine Lösung gefunden. Diesen Post eines Chinesen den ich erwähnt hatte habe ich wieder gefunden. Das hat mich auf die richtige Fährte gebracht.

http://drupal.org/node/365615

da wird der richtige Ländercode in die language.inc "hartcodiert". Ist natürlich nicht die eleganteste Lösung.

Der reguläre Ausdruck in der language.inc parsed wohl die Länderkennungen nicht richtig, was dafür sorgt, dass Codes wie en-US nicht richtig interpretiert werden. Gilt offensichtlich auch für de-at (was eigentlich zu "de" führen sollte).

Das führte mich zu einem anderen Eintrag:

http://drupal.org/node/221712

dort wird angeregt über das Problem diskutiert und mehrere Patches bereitgestellt. Da hat auch jemand exakt dasselbe Problem wie ich "de-DE" beim IE8, kommt aber mit den Patches offensichtlich doch nicht weiter.
Ganz am Ende jedoch präsentiert jemand eine Lösung und postet ein paar Zeilen PHP code die in settings.php eingefügt werden. Damit werden die Ländercodes korrekt geparsed, inklusive upper/lower case und alles funktionert wunderbar:

http://drupal.org/user/39593

<?php
/**
* Help Drupal identify the correct browser language.
*
* Make sure browser languages are lowercase, and simple langcode
* entries exist when complex language entries are used.
*
* @see language_from_browser() in includes/language.inc
*/
if (isset($_SERVER['HTTP_ACCEPT_LANGUAGE'])) {
 
$http_accept_language = array();
 
$browser_languages = array_filter(array_map('trim', explode(',', strtolower($_SERVER['HTTP_ACCEPT_LANGUAGE']))));
  foreach (
$browser_languages as $browser_language) {
    if (
preg_match('!^(?:([a-z]+)([-_a-z]*))(;q=(?:[\.0-9]+))?$!', $browser_language, $found)) {
      if (!empty(
$found[1])) {
        if (!isset(
$http_accept_language[$found[1]])) {
          if (!empty(
$found[2])) {
           
$http_accept_language[$browser_language] = $browser_language;
           
$http_accept_language[$found[1]] = $found[1] . (!empty($found[3]) ? $found[3] : ';q=1.0');
          }
          else {
           
$http_accept_language[$found[1]] = $browser_language;
          }
        }
      }
      else {
       
$http_accept_language[$browser_language] = $browser_language;
      }
    }
    else {
     
$http_accept_language[$browser_language] = $browser_language;
    }
  }
 
$_SERVER['HTTP_ACCEPT_LANGUAGE'] = implode(',', $http_accept_language);
}
?>

Kein patch notwendig und alles verhält sich korrekt:

Browsersprache: de, de-DE, de-at, de-ch
Drupal: erkennt "de", content wird korrekt in deutsch angezeigt (Präfix mit Rückfallsprache)

Browsersprache: en, en-EN, en-US, en-au etc.
Drupal erkennt "en", content wird in englisch angezeigt (Präfix mit Rückfallsprache)

mir hat das zumindest geholfen. Vielleicht hat ja jemand ein ähnliches Problem.

www.speednuts.de

  • Anmelden oder Registrieren um Kommentare zu schreiben

Hallo, schön, wenn ich

Eingetragen von fh (153)
am 19.12.2009 - 10:52 Uhr

Hallo,

schön, wenn ich wenigstens einen kleinen Anstoss geben konnte, jetzt sollte es ja gehen :-)

Aber nochmals, ich verstehe das nicht ganz, oder stehe auf dem Schlauch:
Das Problem hat doch eher damit zu tun dass für de(Deutschland) normalerweise nur de angegeben wird, es ist auch gar nicht mehr nötig. Wenn du mal in einen Drupal Ordner gehst findest du in diversen Modulen einen Ordner "translation"(o.ä.), darin sind die Übersetzungs-Dateien de.po oder en.po usw. - das dürfte auch Teil deines Problems sein.

Wenn du nämlich hingehst und für Deutsch de-DE angibst, wird Drupal nach den Übersetzungs-Dateien "de-de.po" suchen, die aber nicht existieren, genau wie en-en nicht exisitiert, sondern en und daraus wird der Dateiname en.po abgeleitet.

Wenn du die Oberfläche sauber übersetzen möchtest, so würde ich mich mit diesen *.po Dateien mal auseinandersetzen. Das ist aber eine riesige Arbeit...

Ansonsten sollte es doch genügen "Oberfläche übersetzen" zu benutzen. Das Problem mit dem IE8 habe ich leider noch nicht bemerkt, da ich an meinem Arbeitspc aus diversen Gründen den IE7 und Firefox verwende.
Du kriegst das sicher hin und hast ja selber schon diverse Lösungen gesucht und gefunden.

Ich kann dir nur nochmal diese grundsätzlichen Tipps geben:
Möchtest du "nur" einige Strings und Inhalte übersetzen, würde ich mich auf "locale", "Content translation" und das "i18n" konzentrieren.
Hast du weitergehende Ansprüche so würde ich mich unbedingt mit "l10n" und dem "potx" befassen und wie *.po bzw. *.pot Dateien erstellt und geändert werden können.

Eine andere Möglichkeit wäre, dass du die de.po Dateien erstmal für das de-ch und de-at sauber anpasst. Dann könntest du mit irgend einer Datei mal einen Versuch starten, indem du diese Dateien anpasst und mit den richtigen Namen versiehst. Sobald Drupal eine de-ch oder de-at Datei auffindet, wird er diese auch benutzen.

So, ich wünsche dir und allen anderen natürlich auch schon mal frohe Weihnachten und dass deine Vorhaben klappen!

Gruss

Fredi

P.S. Dass Drupal das de-ch und de-at nicht von sich aus als Deutsch erkennt ist wirklich etwas unglücklich.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Hi Fredi, ja ich glaube wir

Eingetragen von DruBlue (11)
am 19.12.2009 - 11:27 Uhr

Hi Fredi,

ja ich glaube wir haben tatsächlich ein bißchen aneinander vorbeigeredet :)

auf Drupal-Seite ist alles übersetzt und startklar.

Es geht tatsächlich nur darum, dass Drupal nicht richtig erkennt welche Sprache der User in seinem Browser eingestellt hat, der sich die Seite gerade betrachtet. Vor allem Spracheinstellungen mit doppelter Länderkennung, also "de-at" statt "de" machen Probleme. Drupal erkennt das nicht out of the box. Zumindest bei der aktuellen Installation. Auch "en-US" oder "en-au" (Australien) werden nicht richtig erkannt.

Wenn nun also die Spracherkennung auf "Präfix mit Rückfallsprache" gestellt ist (hiess vorher Ausweichlösung glaub ich) sollte Drupal normalerweise erkennen ob die Sprache, die im Browser eingestellt ist auf der Seite installiert ist und automatisch auf diese umschalten (in meinem Fall deutsch). Ansonsten aber die defaultsprache anzeigen (in meinem Fall englisch).

Um also zu erreichen, dass jeder mögliche Fall der deutschen Spracheinstellung im Browser erkannt und auch umgeschaltet wird muss entweder language.inc gepatched werden, oder eben zuvor erwähntes Skript in die settings.php eingefügt werden, was in meinem Fall zum Erfolg geführt hat.

www.speednuts.de

  • Anmelden oder Registrieren um Kommentare zu schreiben

Hallo DruBlue, sorry, ich

Eingetragen von fh (153)
am 19.12.2009 - 12:48 Uhr

Hallo DruBlue,

sorry, ich dachte es geht dir um das Übersetzen an sich.
Das von dir beschriebene Verhalten habe ich auf dem aktuellen FF und dem IE7 auch beobachten können.
Jetzt habe ich auch dein Problem verstanden und kann es nur bestätigen, dass Drupal bei fehlendem de-ch auf englisch zurückfällt. Mir war nicht klar gewesen, dass es dir nur um die Präfixe geht und dachte du müsstest das noch übersetzen.

Jetzt habe ich auch verstanden, warum du unbedingt für die vom Browser ausgegebene Sprache eine Lösung suchtest.
Ich werde mir diesen Thread jedenfalls markieren, damit ich den Code dann ev. schon zur Verfügung habe - Danke dafür!

Das habe ich wirklich gründlich missverstanden, jetzt habe ich dafür von dir was lernen dürfen und bin froh um die Aufklärung :-)

Gruss

Fredi

  • Anmelden oder Registrieren um Kommentare zu schreiben

Benutzeranmeldung

  • Registrieren
  • Neues Passwort anfordern

Aktive Forenthemen

  • für drupal11 ein Slider Modul
  • [gelöst] W3CSS Paragraphs Views
  • Drupal 11 neu aufsetzen und Bereiche aus 10 importieren
  • Wie erlaubt man neuen Benutzern auf die Resetseite zugreifen zu dürfen.
  • [gelöst] Anzeigeformat Text mit Bild in einem Artikel, Drupal 11
  • Social Media Buttons um Insteragram erweitern
  • Nach Installation der neuesten D10-Version kein Zugriff auf Website
  • Composer nach Umzug
  • [gelöst] Taxonomie Begriffe zeigt nicht alle Nodes an
  • Drupal 11 + Experience Builder (Canvas) + Layout Builder
  • Welche KI verwendet ihr?
  • Update Manger läst sich nicht Installieren
Weiter

Neue Kommentare

  • melde mich mal wieder, da ich
    vor 2 Wochen 2 Tagen
  • Hey danke
    vor 2 Wochen 3 Tagen
  • Update: jetzt gibt's ein
    vor 2 Wochen 4 Tagen
  • Hallo, im Prinzip habe ich
    vor 3 Wochen 1 Tag
  • Da scheint die Terminologie
    vor 3 Wochen 1 Tag
  • Kannst doch auch alles direkt
    vor 3 Wochen 5 Tagen
  • In der entsprechenden View
    vor 3 Wochen 5 Tagen
  • Dazu müsstest Du vermutlich
    vor 3 Wochen 5 Tagen
  • gelöst
    vor 6 Wochen 2 Tagen
  • Ja natürlich. Dass ist etwas,
    vor 6 Wochen 3 Tagen

Statistik

Beiträge im Forum: 250233
Registrierte User: 20454

Neue User:

  • ByteScrapers
  • Mroppoofpaync
  • 4aficiona2

» Alle User anzeigen

User nach Punkten sortiert:
wla9461
stBorchert6003
quiptime4972
Tobias Bähr4019
bv3924
ronald3857
md3717
Thoor3678
Alexander Langer3416
Exterior2903
» User nach Punkten
Zur Zeit sind 0 User und 25 Gäste online.

Hauptmenü

  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche

Quicklinks I

  • Infos
  • Drupal Showcase
  • Installation
  • Update
  • Forum
  • Team
  • Verhaltensregeln

Quicklinks II

  • Drupal Jobs
  • FAQ
  • Drupal-Kochbuch
  • Best Practice - Drupal Sites - Guidelines
  • Drupal How To's

Quicklinks III

  • Tipps & Tricks
  • Drupal Theme System
  • Theme Handbuch
  • Leitfaden zur Entwicklung von Modulen

RSS & Twitter

  • Drupal Planet deutsch
  • RSS Feed News
  • RSS Feed Planet
  • Twitter Drupalcenter
Drupalcenter Team | Impressum & Datenschutz | Kontakt
Angetrieben von Drupal | Drupal is a registered trademark of Dries Buytaert.
Drupal Initiative - Drupal Association