Strengere Regeln für den Editor und den Compiler

Für Fragen rund um die Ide und zum Debugger
Antworten
navyseabear
Beiträge: 16
Registriert: So 21. Jan 2018, 09:27

Strengere Regeln für den Editor und den Compiler

Beitrag von navyseabear »

Moin moin,
ich habe da mal eine Frage zum Editor und dem Compiler.
Und zwar habe ich vor langer Zeit unter Delphi und davor unter TurboPascal programmiert, bin dann zu C++ umgeschwenkt und würde nun gerne wieder unter Linux mit Hilfe von Lazarus in Pascal programmieren.

Nun meine Probleme:
1) Dem Editor ist es egal wie ich programmiere. Ich kann Groß und Kleinbuchstaben für Befehle verwenden, ich kann zig Leerzeichen von einem Semikolon einfügen und noch so ein paar andere Dinge. Wie bekomme ich da nun ein etwas strengeres Verhalten des Editors hin. Halt so wie ich es unter TurboPascal und Delphi gewohnt war?
2) Ich habe mich gestern fast tot gesucht nach einem Fehler in meinem Programm. Nach Stunden habe ich dann herausgefunden, dass ich bei eine Variable an einer Stelle im Namen einen Buchstabendreher hatte. Unter TurboPascal und Delphi hätte mir der Compiler sehr frühzeitig diesen Fehler angezeigt und mich auf die unbekannte Variable hingewiesen. Wie stelle ich das unter Lazarus ein?

Eine letzte Frage, auch wenn sie nicht ganz in die Gesamtfragestellung passt wäre, wo ich kostenlose Bitmaps für eigene Buttons in meinem Programm her bekomme. Ich habe zwar so meine kleine Sammlung aber eben nicht wirklich etwas schönes.

Vielen Dank schon einmal für die Hilfe.

Tobias

Benutzeravatar
af0815
Lazarusforum e. V.
Beiträge: 6198
Registriert: So 7. Jan 2007, 10:20
OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
CPU-Target: 32Bit (64Bit)
Wohnort: Burgenland
Kontaktdaten:

Re: Strengere Regeln für den Editor und den Compiler

Beitrag von af0815 »

Icon für Buttons etc. zum Beispiel.

Code: Alles auswählen

Silk icon set 1.3
_________________________________________
Mark James
http://www.famfamfam.com/lab/icons/silk/
_________________________________________
 
This work is licensed under a Creative Commons Attribution 2.5 License. [ http://creativecommons.org/licenses/by/2.5/ ]
 
This means you may use it for any purpose, and make any changes you like. All I ask is that you include a link back to this page in your credits. Are you using this icon set? Send me an email (including a link or picture if available) to mjames@gmail.com. Any other questions about this icon set please contact mjames@gmail.com


Was du an Lazarus ändern bzw. einstellen kannst, findet du unter Werkzeuge->Einstellungen. Bezüglich Leerzeichen etc. würde ich einen Codeformatter verwenden. Bei der Schreibweise, da ist natürlich unter Pascal die Groß/Kleinschreibung egal. Das per definition. Bei Buchstabendrehern etc. schreitet der Compiler sehr wohl ein und sagt, das die Variable/Typ/Objekt undefiniert ist. Ich verwende meist die ersten Buchstaben einer Variable etc. und dann STRG+Leerzeichen für das automatische Fertigstellen, dabei wird auch die ursprüngliche Schreibweise bei der Definition übernommen.
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

Benutzeravatar
Niesi
Lazarusforum e. V.
Beiträge: 331
Registriert: So 26. Jun 2016, 19:44
OS, Lazarus, FPC: Linux Mint Cinnamon (Windows wenn notwendig), Lazarus 3.0 FPC 3.3.1

Re: Strengere Regeln für den Editor und den Compiler

Beitrag von Niesi »

navyseabear hat geschrieben:Moin moin,
ich habe da mal eine Frage zum Editor und dem Compiler.
Und zwar habe ich vor langer Zeit unter Delphi und davor unter TurboPascal programmiert, bin dann zu C++ umgeschwenkt und würde nun gerne wieder unter Linux mit Hilfe von Lazarus in Pascal programmieren.

Nun meine Probleme:
1) Dem Editor ist es egal wie ich programmiere. Ich kann Groß und Kleinbuchstaben für Befehle verwenden, ich kann zig Leerzeichen von einem Semikolon einfügen und noch so ein paar andere Dinge. Wie bekomme ich da nun ein etwas strengeres Verhalten des Editors hin. Halt so wie ich es unter TurboPascal und Delphi gewohnt war?
2) Ich habe mich gestern fast tot gesucht nach einem Fehler in meinem Programm. Nach Stunden habe ich dann herausgefunden, dass ich bei eine Variable an einer Stelle im Namen einen Buchstabendreher hatte. Unter TurboPascal und Delphi hätte mir der Compiler sehr frühzeitig diesen Fehler angezeigt und mich auf die unbekannte Variable hingewiesen. Wie stelle ich das unter Lazarus ein?

Eine letzte Frage, auch wenn sie nicht ganz in die Gesamtfragestellung passt wäre, wo ich kostenlose Bitmaps für eigene Buttons in meinem Programm her bekomme. Ich habe zwar so meine kleine Sammlung aber eben nicht wirklich etwas schönes.

Vielen Dank schon einmal für die Hilfe.


Tobias


1) Selbstdisziplin sollte ausreichen ...

2) Das mit der falsch geschriebenen Variablen kann ich nicht nachvollziehen - wenn ich einen Schreibfehler habe, dann bleibt der Cursor genau an der stehen und im Nachrichtenfenster wird der Fehler angezeigt / erläutert. Mit einem Klick auf die Fehlermeldung springt Lazarus zum Fehler im Quelltext ...

Mit was arbeitetst Du?

Ach ja, Icons: https://www.heise.de/download/product/o ... rary-89063
Wissen ist das einzige Gut, das sich vermehrt, wenn es geteilt wird ...

navyseabear
Beiträge: 16
Registriert: So 21. Jan 2018, 09:27

Re: Strengere Regeln für den Editor und den Compiler

Beitrag von navyseabear »

Vielen Dank erst einmal.

Tja, ich habe gerade das Projekt von Gestern wieder eingeladen und versucht den Fehler zu reproduzieren. Jetzt bekomme ich ständig eine Fehlermeldung. Keine Ahnung was da gestern anders war.

Das mit der Selbstdisziplin ist richtig und ich halte mich auch daran. Doch leider passiert es trotzdem manchmal das man etwas falsch tippt oder anders schreibt. Und genau da fand ich die Formatierung von TurboPascal / Delphi ganz gut.

mfg

Tobias

martin_frb
Beiträge: 572
Registriert: Mi 25. Mär 2009, 21:12
OS, Lazarus, FPC: Laz trunk / fpc latest release / Win and other
CPU-Target: mostly 32 bit

Re: Strengere Regeln für den Editor und den Compiler

Beitrag von martin_frb »

1) Buchstabendreher...
Wie andere schon gesagt haben -> Fehler.

Außer man hat extrem ähnliche Variablen:

Code: Alles auswählen

var 
  AEG, Age: integer


Da haette aber auch Turbo Pascal nix geholfen...

2) Leerzeichen.
Gegen Leerzeichen die Du selber tippst lässt sich nix machen. Dein Problem...

Wenn Du Code Completion (ctrl space) nutzt: Menu -> Tools-> Optionen -> Codetools -> Space
Da kannst Du einstellen wie der generierte Code aussehen soll.

3) Ungewollte Leerzeichen (und andere häufige Fehler)
Es gibt eine Möglichkeit etliche solche "Ungewolltheiten" rot einzufärben.

Allerdings wenn Du doppelte Spaces färbst, dann solltest Du TAB zum einrücken nutzen. Sonst sind auch alle Einrückungen rot.

Menu -> Tools-> Optionen -> Editor -> Display -> User defined Markup // http://wiki.lazarus.freepascal.org/IDE_ ... ined_Words

- Neue Gruppe erstellen "Add list"
- Name geben...
- "Background" Farbe auf Rot setzen
- Das große weise Feld oben rechts nimmt die Liste aller Strings auf, die gefärbt werden sollen.

In der Liste einfügen
<Space><Space>
<Space>;

und was immer sonst ungewollt ist....
(Fehlende spaces, sind nicht so einfach, außer man weiß genau welches Zeichen davor UND dahinter steht)

Empfehlung (Da manchmal durch Code Completion ein ; hinter das "then" gerät)
then;
then ;

---
Es gibt eine Option "Trim trailing spaces"

martin_frb
Beiträge: 572
Registriert: Mi 25. Mär 2009, 21:12
OS, Lazarus, FPC: Laz trunk / fpc latest release / Win and other
CPU-Target: mostly 32 bit

Re: Strengere Regeln für den Editor und den Compiler

Beitrag von martin_frb »

Actually: Fuer fehlende Spaces sollte folgendes gehen.

Man braucht 2 Listen.

Liste 1, wie oben, folgenden String
:=

Liste2
Background: white (oder was immer default ist)
Priority für Background: 3501 (höher als in Liste 1)

String:
<Space>:=<Space>

Achtung:
priority 3500/3501 überbietet Farben wie den roten Hintergrund für breakpoints.

ggf beide priorities herabsetzen: 100 / 101

Benutzeravatar
m.fuchs
Lazarusforum e. V.
Beiträge: 2636
Registriert: Fr 22. Sep 2006, 19:32
OS, Lazarus, FPC: Winux (Lazarus 2.0.10, FPC 3.2.0)
CPU-Target: x86, x64, arm
Wohnort: Berlin
Kontaktdaten:

Re: Strengere Regeln für den Editor und den Compiler

Beitrag von m.fuchs »

navyseabear hat geschrieben:1) Dem Editor ist es egal wie ich programmiere. Ich kann Groß und Kleinbuchstaben für Befehle verwenden, ich kann zig Leerzeichen von einem Semikolon einfügen und noch so ein paar andere Dinge. Wie bekomme ich da nun ein etwas strengeres Verhalten des Editors hin. Halt so wie ich es unter TurboPascal und Delphi gewohnt war?

Wie warst du es denn unter Turbo Pascal gewohnt? Der Editor dort ist nicht strenger gewesen als Lazarus es ist.
Software, Bibliotheken, Vorträge und mehr: https://www.ypa-software.de

Antworten