Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht Das deutsche QBasic- und FreeBASIC-Forum
Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
 
FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen  RegistrierenRegistrieren
ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin
Zur Begleitseite des Forums / Chat / Impressum
Aktueller Forenpartner:

mdLanguage
Gehe zu Seite 1, 2  Weiter
 
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Projektvorstellungen
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
MOD
Fleißiger Referenzredakteur


Anmeldungsdatum: 10.09.2007
Beiträge: 1003

BeitragVerfasst am: 27.06.2012, 21:18    Titel: mdLanguage Antworten mit Zitat

mdLanguage ist eine kleine .bi, die es erlaubt, ein Programm einfach mit mehreren Sprachen nutzen zu können. Die jeweiligen Sprachen werden dann über Sprachdateien gesteuert und zur Laufzeit geladen.

Der Code ist recht simpel, vermutlich nicht der schnellste, aber sehr leicht anzuwenden und für kleine und mittlere Projekte gut geeignet.

Code, Readme und Beispiele im >>DOWNLOAD<<

Danke an nemored für die Tests und das Beispiel 'bottles'!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Roland Chastain



Anmeldungsdatum: 05.12.2011
Beiträge: 190
Wohnort: Frankreich

BeitragVerfasst am: 30.06.2012, 09:19    Titel: Antworten mit Zitat

Sehr interessant !

Da ist mein Beitrag :

Code:
test-one=Bonjour le monde
test-two=Bonjour {0}
test-three=Bonjour {0} et bienvenue à {1}
hallo-x-sign-into-x-and-get-your-x=Bonjour {0}, enregistre-toi sur {1} et obtiens ton {2}!
test-four=Bonjour {0} ton nom est {0} ou {1}?
present=cadeau
hello=Bonjour
label=Titre
your-name=Ton nom:
change-language=Choisir le langage


Code:
HowManyBottles?=Combien de bouteilles de biere y a-t-il sur le mur ?
tooLittle=Il n'y a pas assez de bouteilles!
tooMany=Il y a trop de bouteilles!
0=aucune
1=une
last=une
2=deux
3=trois
4=quatre
5=cinq
6=six
7=sept
8=huit
9=neuf
10=dix
11=onze
12=douze
13=treize
14=quatorze
15=quinze
16=seize
17=dix-sept
18=dix-huit
19=dix-neuf
20=vingt
30=trente
40=quarante
50=cinquante
60=soixante
70=soixante-dix
80=quatre-vingt
90=quatre-vingt-dix
20+={0}-{1}
100={0} cent
100+={0} cent et {1}
1000={0} mille
1000+={0} mille {1}
bottle=bouteille
bottles=bouteilles
verse1={0} {1} de biere sur le mur, {0} {1} de biere.
verse2=Prends-en une et fais la passer, {0} {1} de biere sur le mur.


Aber wäre es möglich "bière" zu schreiben ?
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
MOD
Fleißiger Referenzredakteur


Anmeldungsdatum: 10.09.2007
Beiträge: 1003

BeitragVerfasst am: 30.06.2012, 10:44    Titel: Antworten mit Zitat

Danke für die Übersetzungen! Ich habe sie gleich eingebaut und den Download aktualisiert.

Das Problem mit Sonderzeichen wie è, aber auch äüößÄÜÖ ist, dass sie im normalen String nicht funktionieren und falsch dargestellt werden. Es ist allgemein nicht so einfach, das Problem zu lösen. Vorerst wird es also leider nicht gehen.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Roland Chastain



Anmeldungsdatum: 05.12.2011
Beiträge: 190
Wohnort: Frankreich

BeitragVerfasst am: 30.06.2012, 11:39    Titel: Antworten mit Zitat

MOD hat Folgendes geschrieben:
Danke für die Übersetzungen! Ich habe sie gleich eingebaut und den Download aktualisiert.


Es freut mich.

MOD hat Folgendes geschrieben:
Das Problem mit Sonderzeichen wie è, aber auch äüößÄÜÖ ist, dass sie im normalen String nicht funktionieren und falsch dargestellt werden. Es ist allgemein nicht so einfach, das Problem zu lösen. Vorerst wird es also leider nicht gehen.


Jedenfalls es ist ein sehr gut Code meiner Meinung nach. Ich denke ich will es benutzen.


Zuletzt bearbeitet von Roland Chastain am 30.06.2012, 12:30, insgesamt einmal bearbeitet
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
MOD
Fleißiger Referenzredakteur


Anmeldungsdatum: 10.09.2007
Beiträge: 1003

BeitragVerfasst am: 30.06.2012, 11:49    Titel: Antworten mit Zitat

Freut mich, wenn es dir nützt. lächeln
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Eternal_pain



Anmeldungsdatum: 08.08.2006
Beiträge: 1783
Wohnort: BW/KA

BeitragVerfasst am: 30.06.2012, 12:17    Titel: Antworten mit Zitat

Hatte selbst leider noch keine Zeit gefunden rein zu sehen, werd ich aber schnellstens noch Nachholen da ich etwas vergleichbares schon gesucht habe lächeln
Also mal Dank im vorraus ohne getestet zu haben zwinkern
_________________
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen MSN Messenger
Roland Chastain



Anmeldungsdatum: 05.12.2011
Beiträge: 190
Wohnort: Frankreich

BeitragVerfasst am: 30.06.2012, 12:47    Titel: Antworten mit Zitat

Zitat:
test-three=Bonjour {0} et bienvenue à {1}


Berichtigung :

Zitat:
test-three=Bonjour {0} et bienvenue a {1}


lächeln
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
MOD
Fleißiger Referenzredakteur


Anmeldungsdatum: 10.09.2007
Beiträge: 1003

BeitragVerfasst am: 30.06.2012, 12:59    Titel: Antworten mit Zitat

Danke, hab es ausgebessert. lächeln

Und noch eine kleine Verbesserung:
loadCustomLanguage erlaubt nun, den Dateinamen der Sprachdatei mit prefix und suffix zu manipulieren, die Pfadangabe hat hingegen nun einen Prüfung auf "/" bzw. "\" erhalten.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
28398



Anmeldungsdatum: 25.04.2008
Beiträge: 1917

BeitragVerfasst am: 30.06.2012, 19:59    Titel: Antworten mit Zitat

MOD hat Folgendes geschrieben:
Das Problem mit Sonderzeichen wie è, aber auch äüößÄÜÖ ist, dass sie im normalen String nicht funktionieren und falsch dargestellt werden. Es ist allgemein nicht so einfach, das Problem zu lösen. Vorerst wird es also leider nicht gehen.
Man nennt es "Unicode" zwinkern
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
nemored



Anmeldungsdatum: 22.02.2007
Beiträge: 4594
Wohnort: ~/

BeitragVerfasst am: 30.06.2012, 20:04    Titel: Antworten mit Zitat

Schon richtig, aber die Unterstützung durch FreeBASIC ist da eben leider marginal.
_________________
Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
28398



Anmeldungsdatum: 25.04.2008
Beiträge: 1917

BeitragVerfasst am: 30.06.2012, 20:21    Titel: Antworten mit Zitat

Das musste man dann alles mit Pointern machen, oder?
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
nemored



Anmeldungsdatum: 22.02.2007
Beiträge: 4594
Wohnort: ~/

BeitragVerfasst am: 30.06.2012, 20:30    Titel: Antworten mit Zitat

Es gibt zwar den Datentyp WSTRING, es scheitert aber an der Ausgabe. Im Grafikfenster sind die Sonderzeichen (also nicht die in der entsprechenden ANSI-Codepage, sondern die anderen) gar nicht erst im Zeichensatz. Wie das in der Konsole aussieht, weiß ich nicht.
_________________
Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
28398



Anmeldungsdatum: 25.04.2008
Beiträge: 1917

BeitragVerfasst am: 30.06.2012, 20:31    Titel: Antworten mit Zitat

Sollte unter Linux gehen, unter Windows kann man zwar UTF-16 in die Konsole schreiben (nachdem die Codepage entsprechend gesetzt wurde), aber ohne das der Nutzer Einstellungen verändert, geht da nicht viel.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
MisterD



Anmeldungsdatum: 10.09.2004
Beiträge: 3071
Wohnort: bei Darmstadt

BeitragVerfasst am: 30.06.2012, 23:55    Titel: Antworten mit Zitat

benutz halt windows/linux/was auch immer fürn betriebssystem fenster oder ne lib wie GTK statt PRINT und DRAW STRING, die können auch sonderzeichen-text darstellen Zunge rausstrecken dummerweise is das halt mehr arbeit.
_________________
"It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration."
Edsger W. Dijkstra
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
28398



Anmeldungsdatum: 25.04.2008
Beiträge: 1917

BeitragVerfasst am: 01.07.2012, 13:34    Titel: Antworten mit Zitat

Der Hauptteil der Arbeit steckt hier wohl kaum in der Darstellung, sondern viel eher in der schlechten Unicode-Unterstützung von FB. Allerdings lehne ich mich hier mal nicht zu weit aus dem Fenster sonst ist wieder der Zentralrat der Freebasicanwender (Jojo durchgeknallt) empört zwinkern
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Jojo
alter Rang


Anmeldungsdatum: 12.02.2005
Beiträge: 9736
Wohnort: Neben der Festplatte

BeitragVerfasst am: 01.07.2012, 16:43    Titel: Antworten mit Zitat

28398 hat Folgendes geschrieben:
Allerdings lehne ich mich hier mal nicht zu weit aus dem Fenster sonst ist wieder der Zentralrat der Freebasicanwender (Jojo durchgeknallt) empört zwinkern

Ich benutze doch gar kein FreeBASIC mehr. Und meine Liebelingssprache bietet von Haus aus auch praktisch keinen Unicode-Support, da sie ohne STL gar keine Strings kennt. zwinkern
_________________
» Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
28398



Anmeldungsdatum: 25.04.2008
Beiträge: 1917

BeitragVerfasst am: 01.07.2012, 19:46    Titel: Antworten mit Zitat

C++ ist da auch so eine Tragödie, was DAS angeht (schonmal nen UTF-16 String in UTF-8 konvertiert? :>)

Da lob ich mir mein Python, dass handhabt Kodierung wenigstens richtig...
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Jojo
alter Rang


Anmeldungsdatum: 12.02.2005
Beiträge: 9736
Wohnort: Neben der Festplatte

BeitragVerfasst am: 01.07.2012, 22:43    Titel: Antworten mit Zitat

28398 hat Folgendes geschrieben:
C++ ist da auch so eine Tragödie, was DAS angeht (schonmal nen UTF-16 String in UTF-8 konvertiert? :>)

Wenn ich das mal brauchen werde, habe ich dafür Qt oder andere Bibliotheken. Zunge rausstrecken Selbiges gilt wie MisterD schon anmerkte auch für FB.
_________________
» Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Roland Chastain



Anmeldungsdatum: 05.12.2011
Beiträge: 190
Wohnort: Frankreich

BeitragVerfasst am: 13.08.2012, 07:08    Titel: Antworten mit Zitat

Hallo MOD !

Ich möchte meine "properties" Dateien in ein Folder zusammen ordnen.

Zitat:
to load from another path, manipulate the file name with prefixes and suffixes or create a default variable, use loadCustomLanguage(var, "language"[, "path", "prefix", "suffix"])


Ich verstehe nicht wohl. Könnten Sie ein Beispiel geben ? lächeln
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
nemored



Anmeldungsdatum: 22.02.2007
Beiträge: 4594
Wohnort: ~/

BeitragVerfasst am: 13.08.2012, 10:49    Titel: Antworten mit Zitat

Code:
loadCustomLanguage(lang, "DE", "meinOrdner/")

lädt meinOrdner/Language_DE.properties in die Variable* 'lang'

Code:
loadCustomLanguage(lang, "DE", "meinOrdner/", "prefix", "suffix")

lädt meinOrdner/prefixDEsuffix in die Variable 'lang'


*) Ich nenne es mal Variable, auch wenn es ein verstecktes Array ist.
_________________
Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Projektvorstellungen Alle Zeiten sind GMT + 1 Stunde
Gehe zu Seite 1, 2  Weiter
Seite 1 von 2

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.

 Impressum :: Datenschutz