Format der Quelltexte Ansi oder UTF8?

Für Fragen rund um die Ide und zum Debugger
Antworten
Martin V
Beiträge: 142
Registriert: Sa 30. Jan 2010, 19:35
OS, Lazarus, FPC: Linux64, Wiindows32, MacOS, Lazarus 1.8.2
CPU-Target: xxBit

Format der Quelltexte Ansi oder UTF8?

Beitrag von Martin V »

Hallo,

ich habe noch nicht richtig verstanden, wann die Lazarus-IDE die Pascal-Quelltexte in Ansi-Kodierung oder in UTF8 abspeichert, wann er als Return-Zeichen #13#10 (Windows-typisch) oder nur #10 (Unix) verwendet. Ich habe scheinbar ein Durcheinander von Formaten, denn einmal muß ich beispielsweise Caption := AnsiToUTF8('Äpfel') schreiben, damit das Ä erscheint, und in der anderen Quelltextdatei desselben Projekts gerade eben nicht. Kann jemand bitte einmal erklären, wo man diese Formate festlegen kann oder ob es Regeln gibt, wie Lazarus vorgeht. Danke! Ich benutze mehrere Plattformen und spiele die Quelltexte hin und her. Ich verwende die Dateierweiterung *.pp, könnte aber auch *.pas verwenden. (Macht das einen Unterschied?)

Für Neulinge: Bei Ansi werden die Zeichen mit Dezimalcode > #127 wie die deutschen Umlaute als ein Zeichen abgespeichert, bei UTF8 mit zwei Zeichen kodiert. Der Nutzer bekommt davon meist nichts mit, weil der Editor beim Laden und Speichern die Konvertierung durchführt.

Martin

lrlr
Beiträge: 127
Registriert: Di 3. Nov 2009, 09:48

Re: Format der Quelltexte Ansi oder UTF8?

Beitrag von lrlr »

unter "werkzeuge -> kodierung von projekte/packages konvertieren.."

kannst du nachschauen was es aktuell ist und es ändern..
(wo sich lazarus das "merkt" weiß ich nicht)

(wobei unter window, meiner meinung nach nur UTF8 funktioniert)

siehe meinen (unbeachteten) thread http://www.lazarusforum.de/viewtopic.php?f=10&t=3869" onclick="window.open(this.href);return false;

Benutzeravatar
theo
Beiträge: 10856
Registriert: Mo 11. Sep 2006, 19:01

Re: Format der Quelltexte Ansi oder UTF8?

Beitrag von theo »

Mit Lazarus erstellte Units sind immer in UTF-8, egal auf welcher Plattform.
Von Delphi importierte Units sollte man umwandeln von ANSI nach UTF-8.
Um die LineEndings kümmert sich der Editor von selbst, das hat damit nichts zu tun.

shokwave
Beiträge: 475
Registriert: Do 15. Nov 2007, 16:58
OS, Lazarus, FPC: Win11/Ubuntu Budgie (L 3.0 FPC 3.2.2)
CPU-Target: i386, x64
Wohnort: Gera

Re: Format der Quelltexte Ansi oder UTF8?

Beitrag von shokwave »

theo hat geschrieben:Mit Lazarus erstellte Units sind immer in UTF-8, egal auf welcher Plattform.
IIRC aber erst seit 0.9.28. Ältere Lazarus-Projekte sollten also auch umgewandelt werden.
Die Dateiendung spielt keine Rolle.
mfg Ingo

Socke
Lazarusforum e. V.
Beiträge: 3177
Registriert: Di 22. Jul 2008, 19:27
OS, Lazarus, FPC: Lazarus: SVN; FPC: svn; Win 10/Linux/Raspbian/openSUSE
CPU-Target: 32bit x86 armhf
Wohnort: Köln
Kontaktdaten:

Re: Format der Quelltexte Ansi oder UTF8?

Beitrag von Socke »

Nach meinen Beobachtungen, hatte mein Lazarus unter Windows (geschätzte 0.9.25) keine Probleme damit, Zeilenumbrüche mit #10 (Linux) korrekt darzustellen.
Die LCL verwendet seit neustem immer UTF-8 bei allen Widgetsets. Die RTL gibt die Strings aber immer in Originalform an das System weiter.
MfG Socke
Ein Gedicht braucht keinen Reim//Ich pack’ hier trotzdem einen rein

Antworten