[IDE-Tool]Einruecker

Anwendungen, Tools, Userlibs und anderes nützliches.
pebo
Beiträge: 66
Registriert: 01.12.2006 21:08
Wohnort: 66450 Bexbach

Beitrag von pebo »

@HeXOR

erstmal vielen Dank für das coole Tool :allright:

Ich hab aber, glaube ich, einen kleinen Fehler entdeckt oder werden kommentierte Zeilen grundsätzlich nicht berücksichtigt?
Beispiel:
Wenn ich bei folgendem Code:

Code: Alles auswählen

If a = 1
	b = 2
Else
	b = 3
EndIf
hinter dem "Else" einen Kommentar hinzufüge, dann sieht das bei mir so aus:

Code: Alles auswählen

If a = 1
	b = 2
	Else	;Kommentar
	b = 3
EndIf
Wenn ich hinter dem "Endif" einen Kommentar einfüge, dann erscheint die Fehlermeldung "Something wrong with your Code! Wouldt you like to parse it anyway?" und wenn ich diesen mit "Ja" bestätige, sieht das dann so aus:

Code: Alles auswählen

If a = 1
	b = 2
Else
	b = 3
	EndIf	;Kommentar

	; IDE Options = PureBasic 4.10 Beta 4 (Windows - x86)
	; CursorPosition = 2
	; CursorColumn = 6
	; Folding = -
	; EnableXP
Wäre prima wenn Du das noch abstellen könntest.

Viele Grüsse
Peter[/quote]
Alle sagten "das geht nicht!" .... und dann kam einer der nichts davon wusste und machte es einfach.
Benutzeravatar
HeX0R
Beiträge: 2954
Registriert: 10.09.2004 09:59
Computerausstattung: AMD Ryzen 7 5800X
96Gig Ram
NVIDIA GEFORCE RTX 3060TI/8Gig
Win10 64Bit
G19 Tastatur
2x 24" + 1x27" Monitore
Glorious O Wireless Maus
PB 3.x-PB 6.x
Oculus Quest 2
Kontaktdaten:

Beitrag von HeX0R »

Eigentlich passiert das nur, wenn dein Kommentar direkt ohne Leerzeichen dem Else folgt.
Also nicht so wie in deinem Beispiel, das würde korrekt dargestellt werden.

Übrigens ist mir der Fehler auch schon mal aufgefallen, allerdings nie bei eigenen Quelltexten (weil ich auf die Art niemals kommentieren würde).
Deswegen war meine Lust am fixen entsprechend gering.

Das gute ist ja, dass der Quelltext offen liegt, also hau rein ;)
Benutzeravatar
Kurzer
Beiträge: 1614
Registriert: 25.04.2006 17:29
Wohnort: Nähe Hamburg

Beitrag von Kurzer »

Liegt es eigentlich an Win98, daß es diese beiden EnvVars bei mir nicht gibt?

Code: Alles auswählen

...
  If OpenPreferences(GetPathPart(GetEnvironmentVariable("PB_TOOL_IDE")) + "purebasic.prefs") = 0
    OpenPreferences(GetEnvironmentVariable("APPDATA") + "\Purebasic\purebasic.prefs")
  EndIf
...
Fiel mir auf, weil das Tool nicht mit TAB, sondern mit Spaces einrückt.

PB Version 4.10 beta4
"Never run a changing system!" | "Unterhalten sich zwei Alleinunterhalter... Paradox, oder?"
PB 6.02 x64, OS: Win 7 Pro x64 & Win 11 x64, Desktopscaling: 125%, CPU: I7 6500, RAM: 16 GB, GPU: Intel Graphics HD 520
Useralter in 2023: 56 Jahre.
pebo
Beiträge: 66
Registriert: 01.12.2006 21:08
Wohnort: 66450 Bexbach

Beitrag von pebo »

HeX0R hat geschrieben:Eigentlich passiert das nur, wenn dein Kommentar direkt ohne Leerzeichen dem Else folgt.
Also nicht so wie in deinem Beispiel, das würde korrekt dargestellt werden.
Du hast recht, der Fehler tritt auf wenn kein Leerzeichen zwischen dem Else und dem Kommentar ist. In meinem Beispiel hatte ich zwar einen Abstand zwischen Else und Kommentar, allerdings hatte ich im PB-Editor bei TAB "Echten Tabulator benutzen (ASCII 9)" eingestellt, hatte also nicht wirklich Leerzeichen dazwischen.
Übrigens ist mir der Fehler auch schon mal aufgefallen, allerdings nie bei eigenen Quelltexten (weil ich auf die Art niemals kommentieren würde).
Deswegen war meine Lust am fixen entsprechend gering.
Naja, über "Geschmack" soll man ja bekanntlich nicht streiten :wink: Ich kommentiere gerne hinter jeden Zeile, finde ich übersichtlich.
Das gute ist ja, dass der Quelltext offen liegt, also hau rein ;)
Wo denkst Du hin, ich bin Anfänger und habe dadurch ehrlich gesagt noch Schwierigkeiten mich in deinen Code hinein zu denken :wink:

Gruss
Peter
Alle sagten "das geht nicht!" .... und dann kam einer der nichts davon wusste und machte es einfach.
Benutzeravatar
HeX0R
Beiträge: 2954
Registriert: 10.09.2004 09:59
Computerausstattung: AMD Ryzen 7 5800X
96Gig Ram
NVIDIA GEFORCE RTX 3060TI/8Gig
Win10 64Bit
G19 Tastatur
2x 24" + 1x27" Monitore
Glorious O Wireless Maus
PB 3.x-PB 6.x
Oculus Quest 2
Kontaktdaten:

Beitrag von HeX0R »

Kurzer hat geschrieben:Liegt es eigentlich an Win98, daß es diese beiden EnvVars bei mir nicht gibt?
Die PB_TOOL_IDE Var gibts natürlich nur, wenn das Programm auch als PB-IDE-Tool ausgeführt wird. Das ist keine allgemeingültige Environment Variable.
APPDATA könnte theoretisch erst nach Win98 gekommen sein, da bin ich aber überfragt.
Zuletzt geändert von HeX0R am 07.06.2009 23:15, insgesamt 1-mal geändert.
pebo
Beiträge: 66
Registriert: 01.12.2006 21:08
Wohnort: 66450 Bexbach

Beitrag von pebo »

@HeXOR

super, vielen Dank :allright:

Ich hätte da noch eine allgemeine Frage:
Du verwendest die Konstanten #LF$ und #TAB$. Ich habe eben in der PB-Hilfe unter "Überblick über PureBasic Konstanten" nachgeschaut, Fehlanzeige. Wo finde ich diese Konstanten in der Hilfe?

Gruss
Peter
Alle sagten "das geht nicht!" .... und dann kam einer der nichts davon wusste und machte es einfach.
Benutzeravatar
HeX0R
Beiträge: 2954
Registriert: 10.09.2004 09:59
Computerausstattung: AMD Ryzen 7 5800X
96Gig Ram
NVIDIA GEFORCE RTX 3060TI/8Gig
Win10 64Bit
G19 Tastatur
2x 24" + 1x27" Monitore
Glorious O Wireless Maus
PB 3.x-PB 6.x
Oculus Quest 2
Kontaktdaten:

Beitrag von HeX0R »

In der Hilfe wahrscheinlich gar nicht, aber hier.
pebo
Beiträge: 66
Registriert: 01.12.2006 21:08
Wohnort: 66450 Bexbach

Beitrag von pebo »

HeX0R hat geschrieben:In der Hilfe wahrscheinlich gar nicht, aber hier.
Danke :allright:
Alle sagten "das geht nicht!" .... und dann kam einer der nichts davon wusste und machte es einfach.
Benutzeravatar
HeX0R
Beiträge: 2954
Registriert: 10.09.2004 09:59
Computerausstattung: AMD Ryzen 7 5800X
96Gig Ram
NVIDIA GEFORCE RTX 3060TI/8Gig
Win10 64Bit
G19 Tastatur
2x 24" + 1x27" Monitore
Glorious O Wireless Maus
PB 3.x-PB 6.x
Oculus Quest 2
Kontaktdaten:

Beitrag von HeX0R »

eineinhalb Jahre ist das mittlerweile her... Wahnsinn, wie die Zeit vergeht :shock:

Ich habe mal wieder ein paar Verschlimmbesserungen eingebaut.
Zum einen werden verschiedene Leerzeichen gesetzt und auch Variablenzuweisungen werden versucht auf eine Linie zu bringen.

Also aus dem hier:

Code: Alles auswählen

Procedure Aha(Ameisenbaer,Affe,Hosenscheisser)
	Protected i,jaaa,keeeeee

 i=12
jaaa=222
	   keeeeee=3333

     ProcedureReturn jaaaa
   EndProcedure


Aha(0,0,0)
wird auf Knopfdruck das hier:

Code: Alles auswählen

Procedure Aha(Ameisenbaer, Affe, Hosenscheisser)
	Protected i, jaaa, keeeeee

	i       = 12
	jaaa    = 222
	keeeeee = 3333

	ProcedureReturn jaaaa
EndProcedure


Aha(0, 0, 0)
Ich muß sagen, dass das ganze nun ziemlich unübersichtlich geworden ist,
da ich auch Konstrukte wie <> oder -1 nicht auseinanderreissen wollte.

Ausserdem habe ich den * nicht wirklich vernünftig ausgearbeitet, da er ja entweder ein Mal-Zeichen oder den Beginn eines Pointers darstellen kann.

Daher mal ohne Garantie (ist ja Source, kann jeder selbst dran rumpfuschen)
Zuletzt geändert von HeX0R am 07.06.2009 23:15, insgesamt 1-mal geändert.
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag von ts-soft »

:allright:

Hab leider öfters mal ein Problem, mit Compilerdirektiven kommt das Teil
ganz durcheinander :wink:

Da geht dann die Rechnung nicht auf, aber das sollte nicht so einfach zu
umschiffen sein.

LG

Thomas
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Antworten