Documentation Comment

Anwendungen, Tools, Userlibs und anderes nützliches.
Benutzeravatar
NicTheQuick
Ein Admin
Beiträge: 8675
Registriert: 29.08.2004 20:20
Computerausstattung: Ryzen 7 5800X, 32 GB DDR4-3200
Ubuntu 22.04.3 LTS
GeForce RTX 3080 Ti
Wohnort: Saarbrücken
Kontaktdaten:

Re: Documentation Comment

Beitrag von NicTheQuick »

Ohnein. Endlich ein Tool, das ich gebrauchen kann, und dann gibt es das nur für Windows. :(

Was fehlt denn für eine Linux-Version?
Bild
Benutzeravatar
RSBasic
Admin
Beiträge: 8022
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Re: Documentation Comment

Beitrag von RSBasic »

Tut mir leid :( :D

Ich kann gerne eine Liste der WinAPI-Funktionen posten, die in diesem Projekt verwendet werden. Vielleicht kann ein Linux-User jeweils eine API-Funktion von Linux/GTK/QT posten.
Hier die Liste:

Code: Alles auswählen

;==========Zum Ermitteln des PB-Prozesses==========
CreateToolhelp32Snapshot_()
Process32First_()
GetCurrentProcessId_()
CloseHandle_()
Process32Next_()
GetWindowLongPtr_()
;==========Zum Ermitteln des PB-Fensters und ScintillaGadgets==========
GetWindowThreadProcessId_()
GetClassName_()
EnumWindows_()
FindWindowEx_()
GetWindowTextLength_()
GetWindowText_()
EnumChildWindows_()
GetWindowRect_()
;==========Zum Ermitteln des Quellcodes==========
SendMessageTimeout_()
OpenProcess_()
ReadProcessMemory_()
SendMessage_()
;==========Stylen und Verwalten des eigenen Fensters==========
SetWindowLongPtr_()
SetWindowPos_()
GetForegroundWindow_()
Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
Benutzeravatar
Sicro
Beiträge: 955
Registriert: 11.08.2005 19:08
Kontaktdaten:

Re: Documentation Comment

Beitrag von Sicro »

Ok, wenn im Procedure-Header auch Macros eingebaut sind, wie hier, dann müssen die Macros aufgelöst werden:

Code: Alles auswählen

Macro Test
	Bla
EndMacro

Procedure Test#Proc()
	Debug "test"
EndProcedure

BlaProc()
Ebenso in dem Fall:

Code: Alles auswählen

Macro PathMacro
	"/home/user/"
EndMacro

#Path = "Safe.dat"

IncludeFile PathMacro + "data\" + ~"Meine \"geheimen\" Daten\\" + #Path
Dann ist es nicht mehr so einfach. Das habe ich gestern Abend nicht bedacht.
Josh hat geschrieben:Wenn du /PREPROCESS kugelsicher nachbilden willst, dann bist du wahrscheinlich bei 50k Programmzeilen.
Der komplette Funktionsumfang von /PREPROCESS ist hier nicht erforderlich, daher lässt sich das mit deutlich weniger Programmzeilen realisieren.

Zum Beispiel finde ich, dass die CompilerIf/CompilerSelect-Blöcke nicht ausgewertet werden sollten:

Code: Alles auswählen

CompilerIf #PB_Compiler_Debugger
	;<comment>
	;  <summary>Funktionsbeschreibung.</summary>
	;  <param>Parameter1: Beschreibung</param>
	;  <param>Parameter2: Beschreibung</param>
	;  <param>Parameter3: Beschreibung</param>
	;  <return>Beschreibung des Rückgabewertes</return>
	;  <example>Test()</example>
	;</comment>
	Procedure Test()
		; Code
	EndProcedure
CompilerEndIf

Test() ; <==== Popup-Fenster sollte hier immer erscheinen, ob Debugger eingeschaltet ist oder nicht
Bild
Warum OpenSource eine Lizenz haben sollte :: PB-CodeArchiv-Rebirth :: Pleasant-Dark (Syntax-Farbschema) :: RegEx-Engine (kompiliert RegExes zu NFA/DFA)
Manjaro Xfce x64 (Hauptsystem) :: Windows 10 Home (VirtualBox) :: Neueste PureBasic-Version
Benutzeravatar
Sicro
Beiträge: 955
Registriert: 11.08.2005 19:08
Kontaktdaten:

Re: Documentation Comment

Beitrag von Sicro »

NicTheQuick hat geschrieben:Was fehlt denn für eine Linux-Version?
Zugriff auf das Scintilla der PB-IDE.
Soweit ich das in den Foren mitbekommen habe, könnte noch niemand unter Linux auf das Scintilla mit diesem Handle zugreifen:

Code: Alles auswählen

scintillaHandle = GetEnvironmentVariable("PB_TOOL_Scintilla")
Bild
Warum OpenSource eine Lizenz haben sollte :: PB-CodeArchiv-Rebirth :: Pleasant-Dark (Syntax-Farbschema) :: RegEx-Engine (kompiliert RegExes zu NFA/DFA)
Manjaro Xfce x64 (Hauptsystem) :: Windows 10 Home (VirtualBox) :: Neueste PureBasic-Version
Benutzeravatar
RSBasic
Admin
Beiträge: 8022
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Re: Documentation Comment

Beitrag von RSBasic »

Im Stackoverflow-Forum hatte jemand eine ähnliche Frage: https://stackoverflow.com/questions/235 ... equivalent
Hat jemand damit schon mal versucht?
Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
Benutzeravatar
Kiffi
Beiträge: 10620
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Re: Documentation Comment

Beitrag von Kiffi »

RSBasic hat geschrieben:Neue Summary-Änderung kann erst ausgelesen werden, wenn im Quellcode keine Syntax-Fehler gibt.
ja, kleines Missverständnis. Ich meinte einen Syntax-Fehler in der Dokumentation; nicht in meinem Source.
RSBasic hat geschrieben:Kannst du mir bei deiner Testdatei ein paar Informationen geben wie z.B. ob Reintext oder UTF8 usw.? Danke im Voraus
an der Datei ist eigentlich nix besonderes. Neuen Tab geöffnet (UTF8), den kleinen Beispielcode (nebst Dokumentation) eingetippert und gespeichert.

Grüße ... Peter
Hygge
Benutzeravatar
RSBasic
Admin
Beiträge: 8022
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Re: Documentation Comment

Beitrag von RSBasic »

Kiffi hat geschrieben:ja, kleines Missverständnis. Ich meinte einen Syntax-Fehler in der Dokumentation; nicht in meinem Source.
Ah ok, hast du ein Beispiel?
Ich habe folgendes ausprobiert:

Code: Alles auswählen

;<comment>
;  <summary>1111111 < </ <> 22222222222222</summary>
;  <param>Parameter1: aaaaaaaa < </ <> bbbbbbbbb</param>
;  <Return>Beschreibung des Rückgabewertes</Return>
;</comment>
Es wird nichts abgeschnitten und das Informationsfenster wird angezeigt.
Kiffi hat geschrieben:an der Datei ist eigentlich nix besonderes. Neuen Tab geöffnet (UTF8), den kleinen Beispielcode (nebst Dokumentation) eingetippert und gespeichert.
Okay, habe ich gemacht. Ich kann es trotzdem nicht nachstellen. Kannst du es jedes Mal nachstellen oder nur manchmal, wenn man z.B. viel geklickt hat?
Wenn du es mit einer bestimmten Test-PB-Datei nachstellen kannst, kannst du diese Datei hochladen. Oder hat es was mit einer bestimmten PB-Einstellung zu tun?
Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
Benutzeravatar
RSBasic
Admin
Beiträge: 8022
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Re: Documentation Comment

Beitrag von RSBasic »

Documentation Comment 1.0.3 wurde veröffentlicht.

Changelog:
  • Geändert: Das Auslesen der Summary-Kommentare funktioniert jetzt ohne "/PREPROCESS". Danke an Sicro für den Lexer und Parser.

@Sicro
Vielen herzlichen Dank für deinen Lexer und Parser. :allright:
Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
MenschMarkus
Beiträge: 220
Registriert: 30.04.2009 21:21
Computerausstattung: i5-2300 (2.8 Ghz) Win10 -64bit / PB 5.73 LTS

Re: Documentation Comment

Beitrag von MenschMarkus »

Zur Installation...
Laut der Beschreibung zu Beginn kann man ja eigentlich nix falsch machen.
Nur.....warum sehe ich nichts?

1. Die ausführbare Datei habe ich ins Projekt Verzeichnis kopiert
2. Das Werkzeug habe ich wie im Bild beschrieben eingebunden
3. Die komplette Dateiinformation wird im Fenstertitel angezeigt
  • Projekt auf Syntax Fehler geprüft
  • Kommentar wie beschrieben eingegeben

    Code: Alles auswählen

    ;<comment>
    ;<summary>hier ein Text</summary>
    ;</comment>
    Procedure MyProcedure()
    ...
  • Programmcode gespeichert
  • PB neu gestartet
Leider keine Reaktion.

Wo liegt mein Fehler?
Wissen schadet nur dem, der es nicht hat !
Benutzeravatar
Sicro
Beiträge: 955
Registriert: 11.08.2005 19:08
Kontaktdaten:

Re: Documentation Comment

Beitrag von Sicro »

@RSBasic: Gern geschehen :)

@MenschMarkus: Ich denke, diese Informationen könnten noch hilfreich sein:
  • Windows-Version?
  • PB-Version?
  • Läuft das Tool "Documentation Comment.exe" im Task-Manager, wenn du nun die PB-IDE öffnest?
  • Hat die vorherige Version von dem Tool funktioniert?
Bild
Warum OpenSource eine Lizenz haben sollte :: PB-CodeArchiv-Rebirth :: Pleasant-Dark (Syntax-Farbschema) :: RegEx-Engine (kompiliert RegExes zu NFA/DFA)
Manjaro Xfce x64 (Hauptsystem) :: Windows 10 Home (VirtualBox) :: Neueste PureBasic-Version
Antworten