Farbige begin/end Blöcke

Für Fragen rund um die Ide und zum Debugger
Benutzeravatar
Winni
Beiträge: 1577
Registriert: Mo 2. Mär 2009, 16:45
OS, Lazarus, FPC: Laz2.2.2, fpc 3.2.2
CPU-Target: 64Bit
Wohnort: Fast Dänemark

Re: Farbige begin/end Blöcke

Beitrag von Winni »

Hi!

Glaube ich nicht. Aber das ist 35 Jahre her.
Verlang nicht zu viel von meinem Gedächnis!

Ich glaub die Ziel-Graphik blieb beim Standard-Format, aber die Turbo-Entwicklungs-Umgebung hab ich aufgebohrt. Da hab ich dann entdeckt, dass die maximale Stringlänge im Turbo-Editor irgend ne krause Zahl war - 135 oder so. Nicht 128, wie man vermutet hätte.

Tja, das war so die Zeit um Tschernobyl ...

Winni

Benutzeravatar
Winni
Beiträge: 1577
Registriert: Mo 2. Mär 2009, 16:45
OS, Lazarus, FPC: Laz2.2.2, fpc 3.2.2
CPU-Target: 64Bit
Wohnort: Fast Dänemark

Re: Farbige begin/end Blöcke

Beitrag von Winni »

Hallo!

Dann hab ich mich doch mal mit den farbigen Begin-End Blöcken beschäftigt.

Und nach nur 10 Minuten die Logik aufs Kreuz gelegt:

Eine procedure enthält zwei functions.
Die erste ist brav eingerückt: Er zeigt korrekt Level 2 mit Magenta an.
Nun rückt man die Funktion aus und klebt sie an den linken Rand:
Er zeigt fälschlicherweise Level 1 mit Rot an.

Siehe Anhang.

Nicht so recht überzeugend.

Winni
Dateianhänge
IDE_FarbenFehler.png
IDE_FarbenFehler.png (70.92 KiB) 1782 mal betrachtet

Mathias
Beiträge: 6146
Registriert: Do 2. Jan 2014, 17:21
OS, Lazarus, FPC: Linux (die neusten Trunk)
CPU-Target: 64Bit
Wohnort: Schweiz

Re: Farbige begin/end Blöcke

Beitrag von Mathias »

Sieht mir nach einem Bug aus.
Oder vielleicht ist die auch so gewollt, das man sieht, das es 2 Proceduren sind.
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot

Benutzeravatar
Winni
Beiträge: 1577
Registriert: Mo 2. Mär 2009, 16:45
OS, Lazarus, FPC: Laz2.2.2, fpc 3.2.2
CPU-Target: 64Bit
Wohnort: Fast Dänemark

Re: Farbige begin/end Blöcke

Beitrag von Winni »

Hi!

Das ist nicht gewollt:

Wenn ich die untere Funktion einrücke, erscheint sie in Magenta!

Winni

Mathias
Beiträge: 6146
Registriert: Do 2. Jan 2014, 17:21
OS, Lazarus, FPC: Linux (die neusten Trunk)
CPU-Target: 64Bit
Wohnort: Schweiz

Re: Farbige begin/end Blöcke

Beitrag von Mathias »

Dann scheint es ein Bug zu sein.
Eigentlich sollte die Textformatierung keinen Einfluss auf die Farben haben.
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot

Timm Thaler
Beiträge: 1224
Registriert: So 20. Mär 2016, 22:14
OS, Lazarus, FPC: Win7-64bit Laz1.9.0 FPC3.1.1 für Win, RPi, AVR embedded
CPU-Target: Raspberry Pi 3

Re: Farbige begin/end Blöcke

Beitrag von Timm Thaler »

Winni hat geschrieben:
Sa 3. Okt 2020, 12:41
Die erste ist brav eingerückt: Er zeigt korrekt Level 2 mit Magenta an.
Nein, die erste ist falsch, es ist Level 1. Es hängt von der Stellung von "function" ab.

Benutzeravatar
Winni
Beiträge: 1577
Registriert: Mo 2. Mär 2009, 16:45
OS, Lazarus, FPC: Laz2.2.2, fpc 3.2.2
CPU-Target: 64Bit
Wohnort: Fast Dänemark

Re: Farbige begin/end Blöcke

Beitrag von Winni »

Hi!

Nö Falsch.

Das ist eine Function innerhalb einer procedure.
Genau hingucken hilft.

Die Procedure ist level 1.
Die Function innerhalb der Procedure ist Level 2.

Jedenfalls hab ich so das Zählen gelernt.

Winni

Warf
Beiträge: 1907
Registriert: Di 23. Sep 2014, 17:46
OS, Lazarus, FPC: Win10 | Linux
CPU-Target: x86_64

Re: Farbige begin/end Blöcke

Beitrag von Warf »

Was mMn. ein deutlich sinnvolleres feature wäre ist relative farbkodierung wie sie z.B. emacs hat. Das markiert die blöcke ({ und } bei C++) relativ nach der cursor position. Also der block in dem sich grade der cursor befindet ist grün, der ein level drüber dann dunkelgrün, ein weiteres level drüber dann blau und der auf level 4 dann lila. Alle anderen haben die standardfarbe. Somit weißt du auch immer ganz genau wo du grade bist

Benutzeravatar
Winni
Beiträge: 1577
Registriert: Mo 2. Mär 2009, 16:45
OS, Lazarus, FPC: Laz2.2.2, fpc 3.2.2
CPU-Target: 64Bit
Wohnort: Fast Dänemark

Re: Farbige begin/end Blöcke

Beitrag von Winni »

Hi!

Naja. Das braucht man für emacs. Und erst recht für C.

Aber wir sind hier im Pascal-Land.
Ich weiß auch so, wo ich bin.
Und zur Not gibts am Rand Zeilennummern.

Man muss ja nicht alles nachmachen.
Schwarm-Intelligenz ist ja am Besten bei den Lemmingen zu betrachten.

Winni

Warf
Beiträge: 1907
Registriert: Di 23. Sep 2014, 17:46
OS, Lazarus, FPC: Win10 | Linux
CPU-Target: x86_64

Re: Farbige begin/end Blöcke

Beitrag von Warf »

Es geht mir nicht darum zu wissen wo mein cursor ist, sondern in welchen blöcken ich mich aufhalte.
Wenn ich 5 geschachtelte if-else if-else blöcke habe und noch dazu welche die keine begin und end benutzen, da fällt es mir auch mit pascal schwer zu wissen ob ich jetzt 3 level höher in dem if branch bin oder nicht. Das begin/end für diesen block kann ja sogar 2 scroll displays entfernt sein. Selbiges gilt übrigens auch für normale klammern. Ich hatte schon so oft das ich die ( und ) bzw. begin und end zählen musste um zu wissen welche bedingungen jetzt genau gelten, in emacs musste ich das nie.

Ich muss auch zugeben, wenn es eine vernünftige pascal integration in emacs gäb, würd ich eh emacs statt Lazarus verwenden.

Antworten