Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Die Delphi-IDE (https://www.delphipraxis.net/62-die-delphi-ide/)
-   -   Buchstabenverschiebung im Delphi-Editor (https://www.delphipraxis.net/212835-buchstabenverschiebung-im-delphi-editor.html)

DBRSSchlumpf 11. Apr 2023 11:41

Buchstabenverschiebung im Delphi-Editor
 
Hallo,

ich habe ein Problem, welches ich mir nicht erklären und auch nicht beheben kann.

Ich schreibe gerade an einem Programm in Delphi 10.4.1 Seit einigen Tagen, habe ich das Problem, dass wenn ich durch einen Doppelklick im Objektinspektor, z.B. für das OnClick Ereignis eine Routine erstellen will, dass immer folgendermaßen aussieht. Das passiert auch bei einem Doppelklick auf das Objekt selbst.

Delphi-Quellcode:
pprocedure TForm1.Button1Click(Sender: TObject);
begin

end;

rocedure TForm1.LoadConfig;
var
  IniFile: TMemIniFile;
  multisample : string;
.....
Es wird also immer das p von der Procedure darunter vor das procedure der neuen gesetzt. Das ist total nervig, wenn man im Flow ist.
Das passiert nur bei diesem Programm und auch auf unterschiedlichen Installationen.

Hat jemand eine Ahnung, woran das liegen und vor allem, wie ich das beheben kann?

Viele Grüße

KodeZwerg 11. Apr 2023 11:59

AW: Buchstabenverschiebung im Delphi-Editor
 
Das passierte mir unter Delphi Rio auch oft, der Grund war bei mir meist zu viele {$Anweisungen} im Quelltext so das der Editor das irgendwann nicht mehr korrekt interpretieren konnte.

Uwe Raabe 11. Apr 2023 12:15

AW: Buchstabenverschiebung im Delphi-Editor
 
Das kann auch durch falsche Zeilenenden in den Source-Dateien kommen.

Delbor 11. Apr 2023 12:24

AW: Buchstabenverschiebung im Delphi-Editor
 
Hi DBRSSchlumpf

Zitat:

Zitat von DBRSSchlumpf (Beitrag 1520857)
Hallo,
Delphi-Quellcode:
pprocedure TForm1.Button1Click(Sender: TObject);
----

rocedure TForm1.LoadConfig;
----
.....
Es wird also immer das p von der Procedure darunter vor das procedure der neuen gesetzt.

Das beurteile ich ein wenig anders - für mich scheint es so, als sei das Caret zu begin der Erstellung des neuen Prozedurkopfes nach dem 'p' der vorhergehenden Prozedur platziert. Um Platz für die neue Prozedur zu schaffen, wird nun ab Cursor (Caret) dieser reserviert.
Hatte ich auch schon, weiss aber nicht mehr, was ich erfolgreich dagegen unternommen habe. Deshalb würde ich als erstes mal alle zum Projekt gehörenden DCUs löschen.
Auch kannst du den Cursor mal dahin setzen, wo du die neuen Prozedur haben willst - vielleicht nützts ja was (speichern nicht vergessen auch wenn du sonst nichts geändert hast).

Zitat:

Zitat von KodeZwerg (Beitrag 1520858)
Das passierte mir unter Delphi Rio auch oft, der Grund war bei mir meist zu viele {$Anweisungen} im Quelltext so das der Editor das irgendwann nicht mehr korrekt interpretieren konnte.

Derartige Anweisungen füge ich kaum je selbst ein. Aber das mit dem 'Korrekt interpretieren' scheint mir sehr plausibel - check doch mal deine Deklarationen, deren Abstände und eventuell nicht benutzte Variablen ('VariableX wurde deklariert, aber nie verwendet' etc)

Zitat:

Zitat von Uwe Raabe (Beitrag 1520859)
Das kann auch durch falsche Zeilenenden in den Source-Dateien kommen.

@Uwe Raabe: falsche Zeilenenden in den Sourcen? Wie kann sowas aussehen?

Gruss
Delbor

Uwe Raabe 11. Apr 2023 13:20

AW: Buchstabenverschiebung im Delphi-Editor
 
Zitat:

Zitat von Delbor (Beitrag 1520861)
@Uwe Raabe: falsche Zeilenenden in den Sourcen? Wie kann sowas aussehen?

Na ja, da steht dann z.B. nur ein LF oder CR anstatt der unter Windows üblichen CR/LF Sequenz. Das passiert z.B. bei einem nicht korrekt eingestellten GIT Client, der die unter Linux üblichen LFs nicht in CR/LFs umsetzt.

himitsu 11. Apr 2023 15:46

AW: Buchstabenverschiebung im Delphi-Editor
 
Aktuelle Delphis (seit paar Versionen) ersetzen/reparieren aber inzwischen die "falschen" Zeilenumrüche, wenn die Datei in der IDE geladen wird (und diese neue Option nicht deaktiviert wurde)

Es gab aber auch noch ein paar andere (gern unsichtbare) Unicodezeichen, welche der Compiler erlaubt, aber die den CodeEditor etwas verwirren.

Früher waren Einige Fehler leicht behebbar, indem man den Code ins Notepad kopierten und zurück (Strg+C -> Strg+V ... nicht "Datei öffnen" und Speichern)
Aber der neue Notepad (Win11) ist hier leider nicht mehr so hilfreich, da er (leider) einige unschöne Zeichen nicht mehr entfernt.

Ein (hässlicher) Einblick mit einem Hex-Editor, in die Datei kann eventuell das zeigen (falls man es findet).
https://www.delphipraxis.net/39594-h...am-editor.html

DBRSSchlumpf 12. Apr 2023 08:28

AW: Buchstabenverschiebung im Delphi-Editor
 
@Uwe

Vielen Dank. Das war das Problem. Ich bearbeite den gleichen Quelltext auch in Lazarus (Linux Version). Nachdem ich die Zeilenendzeichen konvertiert habe, funktioniert es wieder.

Viele Grüße und Dank für eure Hilfe

himitsu 12. Apr 2023 12:10

AW: Buchstabenverschiebung im Delphi-Editor
 
Wie gesagt.
Schau mal in Tools>Optionen.
Da sollte es im "Editor" irgendwo eine Option zum "automatischen konvertieren" geben.


Ich bin mir aber grade doch nicht mehr ganz sicher, aber glaub das war im 10.4 bereits enthalten. Aber eventuell dort noch standardmäßig deaktiviert.

Ansonsten müsste hier und im Jira mindestens ein Thema dazu existieren, wo dann drin steht ab welchem Delphi das repariert wurde.


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:06 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz