4D supporta ora il Language Server Protocol per consentire agli editor di codice sorgente esterni di gestire il codice 4D e fornire loro funzionalità standard come l’evidenziazione della sintassi, l’aiuto alla sintassi, il passaggio alla definizione o la digitazione in avanti. Vediamo come sfruttarlo in Visual Studio Code.
Importante
Sappiamo che la comunità di 4D è molto legata all’editor di codice incluso nell’IDE 4D. Permette di sviluppare rapidamente, con tutto il necessario a portata di mano per costruire un’applicazione aziendale, senza lasciare 4D: progettare una struttura di dati, disegnare schermate, codificare, testare e ricominciare.
Con il rilascio di Projects in 4D, abbiamo aperto la porta al controllo dei sorgenti e alla modifica dei sorgenti 4D al di fuori dell’IDE 4D.
Sul forum e nelle discussioni vediamo che le opinioni sono diverse. Alcuni di voi non penserebbero mai di utilizzare qualcosa di diverso dall’IDE 4D, che continuiamo a migliorare release dopo release. Tuttavia, un numero crescente di sviluppatori 4D utilizza già altri editor, come Visual Studio Code, perché vi trova molti vantaggi: la possibilità di aprire un progetto 4D per lavorare sul sorgente 4D ma anche su altri sorgenti (HTML o javascript, per esempio), uno strumento diffuso nella comunità degli sviluppatori in generale, l’integrazione con Git, ecc.
Ecco perché vogliamo approfittare del rilascio di 4D v19 R6 per proporvi un’estensione di VS Code “4D Analyzer” e raccogliere il vostro feedback in merito. Questa estensione supporta solo l’evidenziazione della sintassi in questa fase, ma abbiamo in programma di fornirne di più nelle settimane/mesi successivi: tipo avanti e tutti i vantaggi che 4D potrebbe ottenere dal supporto LSP.
Naturalmente, questa iniziativa non ha alcun impatto sull’editor di codice di 4D! È un supporto di riflessione, per scambiare con voi tutte le possibilità e per condividere le idee.
Speriamo che vi piaccia usarlo!
Rendering in Visual Studio Code
Ecco il rendering di un file 4DM aperto in VS Code quando la nuova estensione è installata, con l’evidenziazione della sintassi predefinita:
Se volete rendere il vostro codice ancora più leggibile in VS Code, non dimenticate che potete configurare 4D per scrivere i file 4DM senza token.
Come funziona?
Era già disponibile un’estensione di VS Code per l’evidenziazione della sintassi del codice 4D, ma era basata su regex ed era limitata all’evidenziazione della sintassi.
A partire dalla versione 19 R6, 4D supporta il Language Server Protocol (LSP), un’interfaccia standard tra editor di codice e linguaggi.
LSP fornisce diverse funzionalità comunemente utilizzate negli editor di codice, come l’evidenziazione della sintassi, l’aiuto alla sintassi, il passaggio alla definizione o l’avanzamento della digitazione. Il team di 4D sta integrando questo protocollo standard e ha creato una nuova estensione di Visual Studio Code per sfruttarlo.
Tecnicamente, quando si apre un file 4DM con VS code, l’estensione lancia un’istanza 4D in modalità headless per comunicare con il server LSP. Questa istanza 4D carica il file 4DM e il contesto per fornire le funzionalità LSP all’editor di VS Code attraverso l’estensione.
Installazione dell’estensione di Visual Studio Code
L’installazione dell’estensione è molto semplice. È sufficiente aprire VS Code, la scheda Estensioni e cercare l’estensione “4D-Analyzer” nel marketplace.
Una volta trovata, selezionarla e fare clic sul pulsante “installa”.
Un altro modo è scaricare l’estensione 4D-Analyzer direttamente dal Marketplace di Visual Studio Code!
Una volta terminata l’installazione, aprire le impostazioni dell’estensione (il pulsante con l’icona dell’ingranaggio). Nell’impostazione Percorso server, inserire il percorso dell’applicazione 4D (4D o 4D Server) che verrà utilizzata dall’estensione.
Se sviluppate su macOS, c’è una limitazione del sistema operativo di cui dovete essere consapevoli: il sistema non vi permetterà di aprire un’istanza di 4D (standalone o Server) se è già in esecuzione con VS Code. La soluzione consiste nell’impostare un eseguibile distinto nell’estensione o nell’aprire 4D prima di VSCode.
Aprire un file 4DM
Una volta installata e configurata l’estensione, è possibile vedere il risultato!
A seconda dell’utilizzo di VS Code, è possibile aprire singoli file 4DM utilizzando il menu “Apri file” o un intero progetto utilizzando il menu “Apri cartella” e selezionando la cartella del progetto. Nell’ultimo caso, è sufficiente fare clic su un file 4DM nell’explorer di VS Code per aprirlo nell’editor.
Quando si apre un file 4DM nell’editor di VS Code, l’estensione lancerà un’istanza eseguibile 4D in modalità headless che gestirà il file 4DM. Pertanto, l’istanza dell’eseguibile 4D gestirà l’intero progetto del file 4DM per caricare tutto il contesto del codice del progetto. Quando la finestra di VS Code viene chiusa, viene chiusa anche l’istanza di 4D dedicata a questa finestra.
Si può notare che tutto viene gestito automaticamente per voi!
Un primo passo
Dopo aver installato e configurato l’estensione VS Code, potrete beneficiare automaticamente di altre capacità LSP offerte dalle successive versioni di 4D. In questo momento, il passo successivo consiste nell’impostare i colori per adattarli al vostro schema di colori, come spiegato in questo post del blog.
Siamo molto entusiasti di questa nuova estensione. Sentitevi liberi di darci il vostro feedback sul forum di 4D!