TSynEdit>TSynSQLSyn > Keyword hinzufügen? [ISSUE angelegt]

Rund um die LCL und andere Komponenten
Antworten
MmVisual
Beiträge: 1582
Registriert: Fr 10. Okt 2008, 23:54
OS, Lazarus, FPC: Winuxarm (L 4 FPC 3.2.2)
CPU-Target: 32/64Bit

TSynEdit>TSynSQLSyn > Keyword hinzufügen? [ISSUE angelegt]

Beitrag von MmVisual »

Hallo,

Der Hilighter in TSynEdit funktioniert soweit ganz gut.
Nur leider sind in Lazarus nicht alle Keywords bekannt, vor allem die neuere nicht, wie z.B. "JSON_EXTRACT" oder "IIF" und andere.

Wie kann ich solche Befehle dem TSynSQLSyn hinzufügen?
Also die bestehende sind ja OK und decken 99% ab, nur wollte ich noch die neuen ebenfalls mit aufnehmen.

Konkret vermisste ich bei SQLite:
JSON_EXTRACT, IIF

Im Prinzip alle JSON Befehle aus dieser Doku: https://www.sqlite.org/json1.html
Hier die Liste der Funktionen, wobei ein Großteil bereits vorhanden ist: https://www.sqlite.org/lang_corefunc.html

Bei MySQL:
CAST, JSON_EXTRACT, JSON_UNQUOTE, VIEW

Vielen Dank. VG Markus
Zuletzt geändert von MmVisual am Mi 10. Apr 2024, 08:40, insgesamt 2-mal geändert.
EleLa - Elektronik Lagerverwaltung - www.elela.de

MmVisual
Beiträge: 1582
Registriert: Fr 10. Okt 2008, 23:54
OS, Lazarus, FPC: Winuxarm (L 4 FPC 3.2.2)
CPU-Target: 32/64Bit

Re: TSynEdit>TSynSQLSyn > Keyword hinzufügen?

Beitrag von MmVisual »

Code: Alles auswählen

  Case iSQLTyp Of // Spezielle SQL Befehle hinzufügen
  0: EnumerateKeywords(Ord(tkKey), 'JSON_EXTRACT,IIF', SynSQL.IdentChars, @SynSQL.DoAddKeyword);
  1: EnumerateKeywords(Ord(tkKey), 'CAST, JSON_EXTRACT,JSON_UNQUOTE,VIEW', SynSQL.IdentChars, @SynSQL.DoAddKeyword);
  End;
Das klappt leider nicht, da DoAddKeyword private ist.
EleLa - Elektronik Lagerverwaltung - www.elela.de

Benutzeravatar
theo
Beiträge: 10947
Registriert: Mo 11. Sep 2006, 19:01

Re: TSynEdit>TSynSQLSyn > Keyword hinzufügen?

Beitrag von theo »

Warum schreibst du die Erweiterungen nicht in unit SynHighlighterSQL rein?

MmVisual
Beiträge: 1582
Registriert: Fr 10. Okt 2008, 23:54
OS, Lazarus, FPC: Winuxarm (L 4 FPC 3.2.2)
CPU-Target: 32/64Bit

Re: TSynEdit>TSynSQLSyn > Keyword hinzufügen?

Beitrag von MmVisual »

Das ist dann mit der nächsten Lazarus installation dann wieder weg.

Alternative währe eher ein Bugticket.
EleLa - Elektronik Lagerverwaltung - www.elela.de

Benutzeravatar
theo
Beiträge: 10947
Registriert: Mo 11. Sep 2006, 19:01

Re: TSynEdit>TSynSQLSyn > Keyword hinzufügen?

Beitrag von theo »

MmVisual hat geschrieben: Di 9. Apr 2024, 11:32 Das ist dann mit der nächsten Lazarus installation dann wieder weg.

Alternative währe eher ein Bugticket.
Ja, mach die Änderung und reiche einen Patch ein im Bugtracker.
https://wiki.freepascal.org/Creating_A_ ... ittels_Git

So machen wir das! :lol:

MmVisual
Beiträge: 1582
Registriert: Fr 10. Okt 2008, 23:54
OS, Lazarus, FPC: Winuxarm (L 4 FPC 3.2.2)
CPU-Target: 32/64Bit

Re: TSynEdit>TSynSQLSyn > Keyword hinzufügen?

Beitrag von MmVisual »

EleLa - Elektronik Lagerverwaltung - www.elela.de

Benutzeravatar
theo
Beiträge: 10947
Registriert: Mo 11. Sep 2006, 19:01

Re: TSynEdit>TSynSQLSyn > Keyword hinzufügen?

Beitrag von theo »

MmVisual hat geschrieben: Mi 10. Apr 2024, 08:39 Erledigt.
https://gitlab.com/freepascal.org/lazar ... sues/40887
Genau so geht das.
Beim nächsten Mal kriegst du das mit dem Patch auch noch selber hin... :wink:

MmVisual
Beiträge: 1582
Registriert: Fr 10. Okt 2008, 23:54
OS, Lazarus, FPC: Winuxarm (L 4 FPC 3.2.2)
CPU-Target: 32/64Bit

Re: TSynEdit>TSynSQLSyn > Keyword hinzufügen? [ISSUE angelegt]

Beitrag von MmVisual »

Wenn man mit dem Standard Setup das Lazarus installiert und nicht mit FpcUupdeluxe ist das Patch etwas schwerer.
So viel ich weiß habe ich die ganzen Tools auch nicht installiert.
EleLa - Elektronik Lagerverwaltung - www.elela.de

Benutzeravatar
theo
Beiträge: 10947
Registriert: Mo 11. Sep 2006, 19:01

Re: TSynEdit>TSynSQLSyn > Keyword hinzufügen? [ISSUE angelegt]

Beitrag von theo »

MmVisual hat geschrieben: Mi 10. Apr 2024, 09:34 Wenn man mit dem Standard Setup das Lazarus installiert und nicht mit FpcUupdeluxe ist das Patch etwas schwerer.
Das stimmt, aber du bist ja jetzt "Entwickler" und da lohnt sich FpcUupdeluxe sowieso! :wink:
MmVisual hat geschrieben: Mi 10. Apr 2024, 09:34 So viel ich weiß habe ich die ganzen Tools auch nicht installiert.
GIT brauchst du ohnehin für die Installation mit FpcUupdeluxe und mehr braucht es nicht.

Stevie
Beiträge: 175
Registriert: Di 27. Feb 2024, 22:40

Re: TSynEdit>TSynSQLSyn > Keyword hinzufügen? [ISSUE angelegt]

Beitrag von Stevie »

... sofern Du Deine IDE per fpcupdeluxe aufsetzt, gibt es noch einen kurzfristigen Zwischenschritt: einen Patch erstellen und in die Konfiguration von fpcupdeluxe eintragen. Dann wird jede Neuinstallation automatisch nach Deinen Wünschen angepasst. Wobei der Weg über den Bugtracker natürlich zu bevorzugen ist, weil er allen zugute kommt. :)

MmVisual
Beiträge: 1582
Registriert: Fr 10. Okt 2008, 23:54
OS, Lazarus, FPC: Winuxarm (L 4 FPC 3.2.2)
CPU-Target: 32/64Bit

Re: TSynEdit>TSynSQLSyn > Keyword hinzufügen? [ISSUE angelegt]

Beitrag von MmVisual »

Ich brauche eine reproduzierbare IDE da ich auf mehreren Rechnern arbeite und zum Teil mit Kollegen das teile, daher ist mir ein Setup lieber.

Unter Linux nehme FpcUpDeluxe, da es mit den .deb Paketen nicht so richtig so geht wie ich es brauche. Das liegt jedoch an den Beschränktheiten von Linux selbst.
EleLa - Elektronik Lagerverwaltung - www.elela.de

Benutzeravatar
theo
Beiträge: 10947
Registriert: Mo 11. Sep 2006, 19:01

Re: TSynEdit>TSynSQLSyn > Keyword hinzufügen? [ISSUE angelegt]

Beitrag von theo »

MmVisual hat geschrieben: Mi 10. Apr 2024, 11:54 Ich brauche eine reproduzierbare IDE da ich auf mehreren Rechnern arbeite und zum Teil mit Kollegen das teile, daher ist mir ein Setup lieber.

Unter Linux nehme FpcUpDeluxe, da es mit den .deb Paketen nicht so richtig so geht wie ich es brauche. Das liegt jedoch an den Beschränktheiten von Linux selbst.
Um einen Patch einzureichen, reicht ja eine aktuelle Installation.
Ich habe auch schon mal nur für diesen Zweck die letzte Entwicklungsversion installiert.
Man muss ja nicht den ganzen "Haushalt" umstellen deswegen. :D

Benutzeravatar
af0815
Lazarusforum e. V.
Beiträge: 6872
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: TSynEdit>TSynSQLSyn > Keyword hinzufügen? [ISSUE angelegt]

Beitrag von af0815 »

MmVisual hat geschrieben: Mi 10. Apr 2024, 11:54 Ich brauche eine reproduzierbare IDE da ich auf mehreren Rechnern arbeite und zum Teil mit Kollegen das teile, daher ist mir ein Setup lieber.
Genau deswegen verwende ich fpcupdeluxe. Damit kann man die Version vom fpc und Lazarus ganz genau pinnen und damit hat ein jeder dieselbe IDE, Egal ob Windows oder Linux. Geht über die funktionen im Setup+. Zusätzlich kann man die Patches bei jeden hineinkopieren und die werden von fpcupdeluxe gleich mit ausgeliefert. Besonders beim fpc mit seinem langen Zyklen kann das schon interessant sein. Zusätlzich zu fpcupdeluxe dann OPM nehmen und die gleichen Pakete installieren. Dann ist es super. Wenn man perversgenug ist, so kann man sich auch sein eigens OPM Repository anlegen und alles installieren nur die Software von dort. Alles möglich.

Aber jeder kann es machen wie er will.
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

Antworten