Syntax Highlightning für PureBasic 4.00
- Vermilion
- Beiträge: 1846
- Registriert: 08.04.2006 16:00
- Computerausstattung: Apple iMac (2010) & HP Notebook
- Wohnort: Heidekreis
Syntax Highlightning für PureBasic 4.00
Ich habe mich dumm und dämlich gesucht, aber irgendwie trotzdem nichts gefunden. OK, ich bin auf den Scintilla Kram gestoßen, aber letztendlich hat es mich nicht weitergebracht. Ich hab noch für PureBasic 3.92 eine Userlib (weiß nicht mehr von wem) mit der Syntax Highlightning möglich war. Obwohl ich mich damit zurechtfand, war sie doch etwas zu kompliziert für das was sie machen soll.
Jetzt wollte ich fragen, ob jemand eine Userlib oder irgendwas zum Highlighten für PureBasic 4.00 kennt, die möglichst einfach sein sollte. Darunter würde ich sowas verstehen:
HighlightString(#EditorGadget, StringToHighlight$, RGB()[, Flags])
Aber die Einfachheit steht nicht an erster Stelle. Eher an letzter, hauptsache es gibt sowas für PureBasic 4.00. Oder es ginge auch, wenn mir jemand erklären könnte, wie ich im Scintilla Gadget bestimme Strings highlighte.
Jetzt wollte ich fragen, ob jemand eine Userlib oder irgendwas zum Highlighten für PureBasic 4.00 kennt, die möglichst einfach sein sollte. Darunter würde ich sowas verstehen:
HighlightString(#EditorGadget, StringToHighlight$, RGB()[, Flags])
Aber die Einfachheit steht nicht an erster Stelle. Eher an letzter, hauptsache es gibt sowas für PureBasic 4.00. Oder es ginge auch, wenn mir jemand erklären könnte, wie ich im Scintilla Gadget bestimme Strings highlighte.
- Vermilion
- Beiträge: 1846
- Registriert: 08.04.2006 16:00
- Computerausstattung: Apple iMac (2010) & HP Notebook
- Wohnort: Heidekreis

Und selbst im Englischen Forum finde ich mit den Tags "Scintilla" oder "Highlightning" nichts brauchbares finden. Ein paar Leute haben dort auch die selbe Frage wie ich gestellt aber keine Antwort bekommen (Ich hoffe, das ist bei mir anders).
- 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
Scintilla hat eine Documentation. Selbst Profi's haben Schwierigkeiten damit
umzugehen und wenns einer Verstanden hat, wird er es einem anderen in so
einem Forum nicht erklären können. Studiere die Beispiel-Sourcen, "jaPBe"
zum Beispiel. Wenn damit nicht weiter kommst probiere es in ein paar Jahren
nochmal
umzugehen und wenns einer Verstanden hat, wird er es einem anderen in so
einem Forum nicht erklären können. Studiere die Beispiel-Sourcen, "jaPBe"
zum Beispiel. Wenn damit nicht weiter kommst probiere es in ein paar Jahren
nochmal

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.

Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

Du musst die Dll nicht unbedingt nutzen. Wenn du was einfaches haben willst, wo nur Wörter farbig dargestellt werden, musst du einfach mittels findstring etc. die Position der Texte in der aktuellen line finden, sie selektieren und sie dann mit z.B:
format\cbSize = SizeOf(CHARFORMAT)
format\dwMask = #CFM_COLOR
format\crTextColor = Color
SendMessage_(GadgetID(Gadget), #EM_SETCHARFORMAT, #SCF_SELECTION, format)
färben.
format\cbSize = SizeOf(CHARFORMAT)
format\dwMask = #CFM_COLOR
format\crTextColor = Color
SendMessage_(GadgetID(Gadget), #EM_SETCHARFORMAT, #SCF_SELECTION, format)
färben.
- Thorsten1867
- Beiträge: 1360
- Registriert: 04.02.2005 15:40
- Computerausstattung: [Windows 10 x64] [PB V5.7x]
- Wohnort: Kaufbeuren
- Kontaktdaten:
- Vermilion
- Beiträge: 1846
- Registriert: 08.04.2006 16:00
- Computerausstattung: Apple iMac (2010) & HP Notebook
- Wohnort: Heidekreis
Zum Thema parsen:
Ich will ja einen simplen HTML Editor machen (Also einfach nur Notepad mit Highlightning, weil mir das hantieren mit Notepad bei großen Quelltexten zu unübersichtlich wird). Und dann in ein HTML Dokument noch mal sone tags usw. reinschreiben? Das funktioniert nicht, denn dann sieht man die Tags ja auch, wenn man die Seite in einem Browser betrachtet.
Zum Thema Userlib von DarkDragon:
Ja, hab ich gemacht. Aber als der Compiler dann meinte, dass die Library "GadgetExtension" fehlen würde, war dann ende Gelände. Bei PB 4.00 gibt es die Library nicht, bei PB 3.92 schon. Aber in 3.92 programmier ich erst, wenn nichts mehr anderes möglich ist, da das spackt so ein bisschen mit DDs Lib.
Scintilla Dokumentation:
Dokumentation? Also aus dem Thread hier aus dem Forum, wo ich es runtergeladen habe, gab es keine Dokumentation mitgeliefert.
API:
Muss ich noch ausprobieren, kann man denn auch erreichen, Wörter kursiv oder fettgedruckt zu machen?
Ich will ja einen simplen HTML Editor machen (Also einfach nur Notepad mit Highlightning, weil mir das hantieren mit Notepad bei großen Quelltexten zu unübersichtlich wird). Und dann in ein HTML Dokument noch mal sone tags usw. reinschreiben? Das funktioniert nicht, denn dann sieht man die Tags ja auch, wenn man die Seite in einem Browser betrachtet.
Zum Thema Userlib von DarkDragon:
Ja, hab ich gemacht. Aber als der Compiler dann meinte, dass die Library "GadgetExtension" fehlen würde, war dann ende Gelände. Bei PB 4.00 gibt es die Library nicht, bei PB 3.92 schon. Aber in 3.92 programmier ich erst, wenn nichts mehr anderes möglich ist, da das spackt so ein bisschen mit DDs Lib.

Scintilla Dokumentation:
Dokumentation? Also aus dem Thread hier aus dem Forum, wo ich es runtergeladen habe, gab es keine Dokumentation mitgeliefert.
API:
Muss ich noch ausprobieren, kann man denn auch erreichen, Wörter kursiv oder fettgedruckt zu machen?
Schau mal was ts-soft gerade gepostet hat, denke das duerfte nicht
allzuschwer sein. Die DLL ist zwar eigentlich fuer PB aber nen kleinen
Parser schreiben sollte nicht das grosse Problem sein.
Die Lib von DD mag ja ganz doll sein, aber wegen einer extrem
langsamen Routine extra auf 3.92 umzusteigen, halte ich doch
fuer etwas uebertrieben.
allzuschwer sein. Die DLL ist zwar eigentlich fuer PB aber nen kleinen
Parser schreiben sollte nicht das grosse Problem sein.
Die Lib von DD mag ja ganz doll sein, aber wegen einer extrem
langsamen Routine extra auf 3.92 umzusteigen, halte ich doch
fuer etwas uebertrieben.
- Thorsten1867
- Beiträge: 1360
- Registriert: 04.02.2005 15:40
- Computerausstattung: [Windows 10 x64] [PB V5.7x]
- Wohnort: Kaufbeuren
- Kontaktdaten:
Ich benutze diese mit PB 4.00. Nach dem Konvertieren mit 'PBSourceConverter' funktioniert es einwandfrei.edel hat geschrieben:Schau mal was ts-soft gerade gepostet hat, denke das duerfte nicht
allzuschwer sein. Die DLL ist zwar eigentlich fuer PB aber nen kleinen
Parser schreiben sollte nicht das grosse Problem sein.
Die Lib von DD mag ja ganz doll sein, aber wegen einer extrem
langsamen Routine extra auf 3.92 umzusteigen, halte ich doch
fuer etwas uebertrieben.