Buchstabensalat im Source (Delphis Beispiele)
Liste der Anhänge anzeigen (Anzahl: 1)
Bei den von Delphi mitgelieferten Beispielen steht z.T. Buchstabensalat dort, wo Kommentare stehen sollten, siehe anliegenden Screenshot (stammt aus dem Hauptformular des Beispiels "Shaderfilters").
Wieso ist das so und kann man das vermeiden? |
AW: Buchstabensalat im Source (Delphis Beispiele)
Das ist vermutlich Kyrillisch. Die Dokumente wurden in ANSI abgespeichert, auf einem System, auf dem ANSI etwas anderes als bei dir ist. Auf westlichen PCs ist ANSI=Windows-1252.
|
AW: Buchstabensalat im Source (Delphis Beispiele)
Das Beispiel gibt es auch in Englisch:
Delphi-Quellcode:
https://sourceforge.net/p/radstudiod...pas?format=raw
procedure TfrmMain.listFX1Click(Sender: TObject);
var i: integer; Item: TListboxItem; Shape: TSelectionPoint; begin if (TransitionAni <> nil) and (TransitionAni.Running) then TransitionAni.Stop; if listFX.ItemIndex < 0 then Exit; // Delete setting controls if TransitionAni <> nil then FreeAndNil(TransitionAni); Dest.DeleteChildren; panelSettings.Clear; // Create Filter if Filter <> nil then Filter.Free; Filter := FilterByName(listFX.ListItems[listFX.ItemIndex].Text); // Create settings Rec := FilterClassByName(listFX.ListItems[listFX.ItemIndex].Text).FilterAttr; // labelName.Text := Rec.Desc; .... oder alles: https://sourceforge.net/p/radstudiod...RadStudio_XE2/ Ist zwar für XE2, aber in BERLIN bzw. TOKYO sicher brauchbar. |
AW: Buchstabensalat im Source (Delphis Beispiele)
OK, aber warum bestehen nur die auskommentierten Zeilen aus diesem Buchstabensalat, die "normalen" Source-Code-Zeilen aber nicht?
|
AW: Buchstabensalat im Source (Delphis Beispiele)
Quelltext schreibt man in der Sprache Delphi.
Kommentare in der Muttersprache. Die Zeichensätze haben übereinstimmende Teilmengen und halt noch die der jeweiligen Muttersprache der Programmierer (oder was halt sonst auf dem System eingestellt ist). Delphiquelltext benutzt halt überall den von der Programmiersprache vorgesehenen Zeichensatz, der ja auch nicht vollständig unserem Zeichensatz entspricht. Kommentare von uns mit äöü ... sehen andernorts auch kryptisch aus. Oder anders: Die Übereinstimmung unserer Schrift mit der der Programmiersprache ist (zufällig) recht hoch, für andere Sprachen und Schriften sieht das anderrs aus, da gibt es entweder wenige oder auch garkeine Übereinstimmung. Und das sieht man halt an allem, was der Compiler nicht zu verstehen braucht. |
AW: Buchstabensalat im Source (Delphis Beispiele)
Zitat:
Im 4.Jahrhundert zerfiel das Römische Reich, ca. 400 000 Römer verließen fast alle Britannia. Dann kamen Angeln und Sachsen. Die Sprache der Einwanderer und die Sprache der Germanen entwickelten sich in den letzten 1600 Jahren getrennt weiter - beeinflusst von GRIECHISCH, LATEIN (RÖMISCH), FRANZÖSISCH. Vielleicht redet man in Germany in 100 Jahren nur noch ENGLISH... |
AW: Buchstabensalat im Source (Delphis Beispiele)
Naja, mit dem Zufall meinte ich das so, dass unsere Schriftsprachen Übereinstimmungen mit der Sprache hat, auf der Delphi basiert.
Für den weitaus größten Teil der Menschheit dürfte dies nicht zutreffen. Gäbe es eine Programmiersprache, die z. B. auf der japanischen Sprache und der japanischen Schriftsprache basiert, könnten wir halt unsere Kommentare lesen, aber der "Rest" sähe (erstmal) kryptisch aus. Das dürfte bei Sanskrit, Kyrillisch, Griechisch, Chinesisch, ... halt ähnlich sein. Die Leute dort müssen, neben der Programmiersprache auch erstmal eine neue Schrift (mit eher ungewohnten Zeichen) lernen. Für Kommentare können sie ihre eigene Schriftsprache nutzen. |
AW: Buchstabensalat im Source (Delphis Beispiele)
Zitat:
Delphi-Quellcode:
type
TPaßform = class(TForm) Hauptmenü: TMainMenu; HübscheBildchen: TImageList; Großbaustelle: TMenuItem; KurzDöser: TTimer; Maßeingabe: TComboBox; procedure KurzDöserTimer(Sender: TObject); private public published end; |
AW: Buchstabensalat im Source (Delphis Beispiele)
Das mit den Umlauten ist aber auch "neu", mein olles Delphi 7 haut mir das noch um die Ohren.
Aber unsere Eltern und Großeltern haben noch Sütterlin gelernt. Die Eltern konnten beides, Sütterlin und unsere heutige Schriftsprache, bei den Großeltern war diese "Zweisprachigkeit" nicht zwingend gegeben, bzw. nur beim Lesen, das Schreiben war schon schwieriger. Unsereins hat am Anfang in der Volksschule auch noch beides lernen dürfen, aber nur in den ersten zwei Schuljahren. (Aber davon ist nix übriggeblieben ;-)) Wäre aber nett zu wissen, ob man beim heutigen Delphi Kommentare auch in Sütterlin schreiben kann ;-) |
AW: Buchstabensalat im Source (Delphis Beispiele)
Zitat:
Zitat:
Muß man ständig den Tastaturtreiber wechseln, wenn man von echtem Quellcode auf eigensprachliche Kommentare und dann zurückwechselt? (In Windows 2000 und XP gibt es ja dieses ominöse blaue DE-Symbol, das ich nach jeder Windows-Installation irgendwie wegputze). Falls man immer umschalten muß, wäre das wirklich lästig. Welch ein Glück, daß Deutsch und Englisch sich so sehr ähneln. Edit: Das Ding hat den hochtrabenden Namen "Eingabegebietsschemaleiste" und kann über die Symbolleisten ein- und ausgeblendet werden. |
AW: Buchstabensalat im Source (Delphis Beispiele)
Liste der Anhänge anzeigen (Anzahl: 1)
Das mit den Bezeichnern geht seit D2005.
Zitat:
|
AW: Buchstabensalat im Source (Delphis Beispiele)
Wäre es da denn nicht sinnvoller, die Texte direkt im Unicode-Format zu erstellen? Alles dreht sich inzwischen um Unicode (z.B. UTF-8), aber die Delphi-Quelltexte sind standardmäßig immmer noch in ANSI (ebenso die Formular-Dateien).
|
AW: Buchstabensalat im Source (Delphis Beispiele)
Delphi nimmt ANSI, sofern alle Buchstaben in deiner derzeit verwendeten ANSI-Codepage liegen. Ansonsten wirst du gefragt, ob du UTF-8 nehmen möchtest. Man kann das natürlich auch einstellen, dass immer UTF-8 genommen wird.
|
AW: Buchstabensalat im Source (Delphis Beispiele)
Liste der Anhänge anzeigen (Anzahl: 2)
Wer was Anderes braucht, kann es einstellen - siehe Anhang.
|
AW: Buchstabensalat im Source (Delphis Beispiele)
Zitat:
man kann Dich ja leider nicht per PN erreichen, darum muß ich hier fragen: Ich nutze nämlich auch noch Delphi 5 - zum Leidwesen aller anderen Programmierer im internet, wie mir scheint. Daß meine HelloWorld-Programme deutlich unter 2 MB groß sind [380 KB] ist in Zeiten von Terabytes und Petabytes leider uninteressant. Gibt es da was zum "nachrrüsten" [ich möchte nicht die 24 GB große Berlin Starter Edition installieren - mein D5 hat 67 MB in C:\Program Files (x86)\Borland\Delphi5] Leider muß ich auch auf Hilfen wie ByteStream oder StringReplace verzichten. Naja. Zitat:
°= Pro/Enterprise/Archi |
AW: Buchstabensalat im Source (Delphis Beispiele)
Zitat:
|
AW: Buchstabensalat im Source (Delphis Beispiele)
Ich habe mal UTF-8 getestet.
Nachträglich kann man falsch decodierten Text nicht mehr ändern. // Falsch decodiert: // Îñòàíàâëèâàåì àíèìàöèþ äëÿ ýôôåêòîâ ïåðåõîäà // Beispiel Russisch: // Описание журнала = Beschreibung der Zeitschrift |
AW: Buchstabensalat im Source (Delphis Beispiele)
Zitat:
Der Editor in der IDE verwendet immer Unicode. Lediglich beim Laden und Speichern kommt das eingestellte Format zum tragen. Ist der Text erstmal falsch dekodiert worden, weil die CodePage nicht passt, dann ist das im Unicode nicht mehr zu reparieren. |
AW: Buchstabensalat im Source (Delphis Beispiele)
Zitat:
Ich hab mal dein "Îñòàíàâëèâàåì àíèìàöèþ äëÿ ýôôåêòîâ ïåðåõîäà" nach Notepad++ kopiert und dort Kodierung->Zeichensatz->Kyrillisch->Windows-1251 ausgewählt. Ergebnis: "Останавливаем анимацию для эффектов перехода", laut Google Translator "Stop the animation for transition effects". |
AW: Buchstabensalat im Source (Delphis Beispiele)
Liste der Anhänge anzeigen (Anzahl: 1)
Toll, das hätte ich nicht gedacht.
Grund: Kyrillische Zeichen sowie Zeichen fernöstlicher Sprachen und von Sprachen aus dem afrikanischen Raum belegen bis zu 4 Byte je Zeichen. https://de.wikipedia.org/wiki/Windows-1251 https://de.wikipedia.org/wiki/UTF-8 Nebenbei bemerkt: Eine Umstellung im DELPHI-Editor ändert auch die Kürzel - siehe Anhang. |
AW: Buchstabensalat im Source (Delphis Beispiele)
Zitat:
Dieses sind (für ANSI) immer gleich. Erst ab $80 wird die entsprechene Codepage eineblendet. Zitat:
Zitat:
Die Formulardateien brauchen nicht geändert werden da diese schon seit D5 (?) Unicodetexte speichern können. |
AW: Buchstabensalat im Source (Delphis Beispiele)
Zitat:
Zitat:
Zitat:
Zitat:
Zitat:
|
AW: Buchstabensalat im Source (Delphis Beispiele)
Zitat:
|
AW: Buchstabensalat im Source (Delphis Beispiele)
Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:
Erst wenn ich explizit per Rechtsklick in den Source-Code, Befehl "Dateiformat" auf UTF8 umstelle (siehe Anlage) wird der Text auch in UTF8 gespeichert. Also letztlich würden von Anwendern, welche ihre Kyrillischen Kommentare im UTF8-Format erstellen diese auch auf meinem in D laufenden PC richtig dargestellt. Insofern wäre es schon sinnvoll, wenn EMBA Demo-Dateien mit kyrillischen Kommentaren ausliefert, dass die Source-Dateien dann in UTF8 sind, statt in ANSI. Dann hätte man zumindest noch die Chance per Google-Translate (wie hier etwas später im Thread angesprochen) ermitteln zu können, wie der Kommentar lautet. Übrigens: Wenn ich die übersetzten kyrillischen Zeichen im Ansi-Text einbette, bietet mir Delphi an, den Text in UTF8 zu speichern, damit Zeichen nicht verloren gehen. Also warum nicht gleich alles in UTF8, dann kann man sich diese ganze Problematik sparen. |
AW: Buchstabensalat im Source (Delphis Beispiele)
Zitat:
Zitat:
|
AW: Buchstabensalat im Source (Delphis Beispiele)
Aber wo kann man das einstellen? Was hier gezeigt wurde, gilt für die Modellierungs-Funktion, aber wohl nicht für den Editor.
|
AW: Buchstabensalat im Source (Delphis Beispiele)
Zitat:
Finde ich auch ziemlich doof. SourceTree bspw. hat nämlich damit so seine Probleme wenn ich in Beschreibungen von Methoden Umlaute verwende wenn es auf ANSI eingestellt ist. Auf UTF8 gibt es da keine Probleme. |
AW: Buchstabensalat im Source (Delphis Beispiele)
Zitat:
Schon seit Jahren wirst du von Delphi gefragt, wenn du eine Unit speicherst und dort nicht alle Zeichen in die aktuelle Codepage passen. Aber ja, einfach immer gleich als UTF-8 gespeichert sorgt für weniger Problemchen. Genauso wie TextDFMs schon seit Jahren für mehr Freude in Versionssystemen bereiten, gegenüber den BinärDFMs. In diesem Fall die Datei mit einem Texteditor öffnen, dabei eine passende Codepage auswählen und das dann wieder als UTF-8 abgespeichert, schon ist der Salat weg, auch wenn Viele es dann dennoch nicht lesen können. :stupid: Du kannst auch TStringList nehmen, beim Laden die gewünschte Codepage (TEncoding) mitgeben und anschließend mit TEncoding.UTF8 wieder abspeichern. |
AW: Buchstabensalat im Source (Delphis Beispiele)
Ich meinte damit, dass man per Rechtklick auf den Editor das umstellen kann, dass die aktuelle Unit UTF-8 benutzt.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:51 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz