internationalization

___ qstntxt ___

In den Apple Docs heißt es, dass eine Nib Internationalisierung ermöglicht, indem sie die Nib einfach in viele Sprachen übersetzt. Ich denke jetzt an ein schlimmeres, aber realistisches Szenario: Sie haben eine riesige Benutzeroberfläche erstellt. Dann übersetze du das in 25 Sprachen. Also bekommst du 25 verschiedene Nibs. Sie erhalten auch eine große Redundanz beim Gestalten und Definieren der Benutzeroberfläche: 25 Mal das gleiche Zeug. Gleiche Bindungen, alles gleich. Nur Text ist anders.

Also, ich denke wirklich, das ist ein sehr schlechter Ansatz. Stattdessen würde ich es vorziehen, alle Texte aus einem Ressourcenbündel oder ähnlichem zu verknüpfen. Nur eine Datei mit Textzeichenfolgen, die zur Laufzeit von der entsprechenden Sprachressource verlinkt wird. Dann haben Sie nur "Probleme" in den Text zu verknüpfen, die wirklich keinen Spaß machen. Aber dann können Sie einmal auf der Benutzeroberfläche Änderungen vornehmen, ohne den gleichen Schritt 25 Mal wiederholen zu müssen. Eine neue Bindung in jeder Spitze. Das wäre so schrecklich!

Nun, bitte sag mir, dass ich das falsch verstanden habe. Apple geht nicht davon aus, dass wir etwas so Kreatives machen?

    
___ answer598067 ___

Manchmal beinhaltet die Lokalisierung mehr als nur das Ersetzen von Text, sondern auch Änderungen im Layout. Beispielsweise können Zeichenfolgen in einem Gebietsschema / Sprache deutlich länger sein als in einem anderen, wodurch eine Änderung des Layouts erzwungen wird. Rechts-nach-links-Sprache bedeutet oft auch einige Änderungen im Layout.

    
___ tag123objectivec ___ Dieses Tag sollte nur bei Fragen verwendet werden, die sich auf Objective-C-Funktionen beziehen oder von Code in der Sprache abhängen. Die Tags [Kakao] und [Kakao-Touch] sollten verwendet werden, um nach Frameworks oder Klassen von Apple zu fragen. Verwenden Sie die zugehörigen Tags [ios], [macos], [apple-watch] und [tvos] für Probleme, die für diese Plattformen spezifisch sind. ___ qstnhdr ___ Internationalisierung mit Nibs. Ist das wirklich eine gute Idee? ___ tag123cocoa ___ Cocoa ist Apples Entwicklungsumgebung für MacOS, bestehend aus Foundation, Application Kit und Core Data. Verwenden Sie den "Kakao-Touch" -Tag für iOS-Fragen. ___ tag123internationalisierung ___ Internationalisierung (i18n: repräsentiert "internationalisierung" als "ich" gefolgt von 18 weiteren Buchstaben, gefolgt von "n") ist der Prozess der Planung und Implementierung von Produkten und Dienstleistungen so dass sie leicht an bestimmte lokale Sprachen und Kulturen angepasst werden können, ein Prozess namens Lokalisierung. Der Internationalisierungsprozess wird manchmal als Übersetzungs- oder Lokalisierungsaktivierung bezeichnet. ___ answer598109 ___

Aufbauend auf den beiden vorherigen Antworten gibt es ein Tool namens iLocalize , das den Prozess einfacher macht als ibtool (und es ist älter als ibtool). Ich habe es nie selbst benutzt, aber mein Freund Evan benutzt es sowohl auf Adium als auch auf Growl und liebt es.

    
___ answer598079 ___

Die Lokalisierungssituation ist nicht ideal. Obwohl Cocoa-UI-Elemente eine gewisse dynamische Flexibilität bei der Dimensionierung unterstützen (die Aussetzungskennzeichen), ist es sehr schwierig, sie in einer Ansicht anzuordnen, so dass sie Text beliebiger Größe aufnehmen können.

Wie Heng-Cheong hervorhebt, bedeutet dies in der Regel, dass eine Anpassung des Layouts pro Lokalisierung erforderlich ist. Apple unterstützt einen Prozess namens inkrementelle Lokalisierung mit einem Tool namens "ibtool", das mit Ihren Entwicklertools gebündelt ist. Der Prozess ist bei weitem nicht intuitiv und scheint einige subtile Fehler zu enthalten, aber es hilft, den Prozess einfacher zu machen, als beispielsweise 25 verschiedene Nibs einzeln manuell zu warten. Der Prozess umfasst im Wesentlichen das Zuordnen von Änderungen, die Sie an Ihrer Primärfeder vornehmen, auf die anderen lokalisierten Federn. Apple beschreibt den Prozess genauer:

Ссылка

Um diesen schmerzhaften Prozess zu vermeiden, gehen manche Menschen einen anderen Weg. Wenn Sie beim Layout Ihrer Ansichten Kompromisse eingehen, können Sie eine Situation erreichen, in der jedes Oberflächenelement die größte lokalisierte Zeichenfolge enthält. Mit den Ausrichtungsfunktionen von Textfeldern usw. können Sie also ein akzeptables Layout anordnen, obwohl der zusätzliche Abstand, der für die Lokalisierung mit den größten Zeichenfolgen erforderlich ist, oft ein weniger als ideales Layout für die Sprache verursacht, deren Zeichenfolgen am kürzesten sind. Wenn Sie diesen Ansatz verwenden, müssen Sie Ihre nibs so entwerfen, dass eine Controller-Klasse die Benutzeroberflächenelemente der nib zur Laufzeit mit den richtigen lokalisierten Strings füllt.

Schließlich gehen manche Entwickler so weit, dass sie ihre eigenen Relayouts auf die Elemente in einer Nib anwenden und sie für die Größe der Strings optimieren, die auf ihnen gesetzt wurden. Dies wäre eine Verfeinerung der obigen Strategie, bei der eine einzelne Spitze zur Laufzeit verwendet und manipuliert wird, um den gewünschten Effekt zu erzielen.

    
___
3
Antworten

Postgresql Volltextsuche in postgresql - Japanisch, Chinesisch, Arabisch

Ich entwickle eine Volltextsuchfunktion in postgresql für mein aktuelles Projekt. Es funktioniert soweit mit ispell / myspell-Wörterbüchern. Jetzt muss ich Unterstützung für die chinesische, japanische und arabische Suche hinzufügen. Wo soll ich...
22.03.2010, 21:44
1
Antwort

iOS Die lokalisierte Version einer Zeichenfolge für eine bestimmte Sprache abrufen

Ich erstelle eine Anwendung für iOS, die sowohl in Englisch als auch in Französisch verfügbar sein wird. Ich habe einige Tutorials zur Internationalisierung gelesen und verstehe, wie es funktioniert und was ich tun muss. Das Problem, das ich...
20.02.2015, 17:07
2
Antworten

Wie gruppiere ich japanische und andere nicht-lateinische Namen in LongListSelector?

Wenn Sie Ihren Windows Phone-Emulator oder Ihr Gerät in Japanisch, Koreanisch oder andere nicht-lateinische Sprachen einsetzen und die People-App verwenden, werden in der Implementierung der LongListSelector japanische Gruppierungszeichen sowie...
02.02.2012, 18:11
2
Antworten

Wie kann ich Unicode-Zeichen in Perl POD-abgeleiteten Manpages verwenden?

Und wenn das nicht möglich ist, was ist die beste Vorgehensweise für den Umgang mit man-Seiten, die von UTF-8-kodierten POD abgeleitet sind? Um mit Unicode in POD zu arbeiten, müssen Sie zuerst die Direktive verwenden %Vor% (wie besproche...
25.10.2012, 09:25
1
Antwort

Django i18n finde unterstützte Sprachen

Ich ermittle die Sprachpräferenz eines Benutzers durch einen Drittanbieter-Dienst, bei dem er auch registriert ist. Dieser Dienst stellt mir einen Ländercode zur Verfügung (z. B. en_US ). Wenn ich nicht den entsprechenden Sprachcode in settin...
04.04.2011, 12:50
4
Antworten

Vor-und Nachteile der Verwendung von Gettext anstelle von QObject.tr () für die Lokalisierung von PyQt4-Anwendung?

Ich habe eine Reihe von Anwendungen geschrieben in PyQt4, wo ich Standard-Python-gettext-Bibliothek für die Internationalisierung und Lokalisierung von GUI verwendet habe. Es funktioniert gut für mich. Aber ich habe Gettext gewählt, nur weil ich...
07.01.2010, 15:50
3
Antworten

Werkzeug zum Organisieren von Übersetzungen in JSON-Dateien [geschlossen]

Ich untersuche verschiedene Übersetzungstools für meine Angular App. Bisher scheint angular-translate dafür eine gute Lösung zu sein. Es verwendet JSON-Dateien pro Sprache, die wie "lang / NAMESPACE / LANG.json" (z. B. "lang / user / de.json")...
28.02.2016, 09:17
2
Antworten

Was sind die Kompromisse zwischen boost :: locale und std :: locale?

Ich bin dabei, eine große Legacy-Codebase in C ++ zu internationalisieren, und ich stehe vor einer schwierigen Entscheidung: Soll ich boost :: locale's oder std c ++ locales verwenden? Ich bin verpflichtet, utf-8 zu verwenden. Wir müssen eine...
06.08.2015, 15:44
3
Antworten

Die Reihenfolge der Standardparameter für die Bean-Validierung?

Ich versuche derzeit, eine benutzerdefinierte Validierungsnachricht mithilfe der Bean-Validierung bereitzustellen. Derzeit wird die Version 3.1.4 von Spring mvc verwendet, um die Apache-Bean zu validieren. In meiner Bean spezifiziere ich:...
05.05.2012, 12:43
2
Antworten

Wie kann ich das gesamte Format des Datums / Zeit-Formats in GWT für verschiedene Gebietsschemas erhalten?

Ich versuche, das gesamte Datums- / Zeitformatmuster in GWT zu erhalten, indem ich DateTimeFormat.PredefinedFormat verwende, um alle Muster des aktuellen Gebietsschemas zu erhalten. aber wie kann ich alle Muster für ein anderes Gebietsschema b...
08.06.2011, 08:16