Beta 0.5.4 — progetto sperimentale in sviluppo. La versione disponibile è un prototipo di editor sintattico: non è ancora un ambiente di sviluppo né un'implementazione completa del linguaggio DDF.
DDFLanguageEditor conserva ed espone il primo esperimento WinForms dedicato al linguaggio sperimentale DDF. Offre un'area di scrittura scura con numeri di riga, evidenziazione delle regole note e indentazione assistita.
- lexer DDF formale ed evidenziazione alimentata dai token;
- parser con AST tipizzato, precedenze e recupero dagli errori;
- catalogo centralizzato ed estensibile di parole chiave e operatori;
- indice gerarchico e outline navigabile di strutture, funzioni e variabili;
- evidenziazione dei delimitatori corrispondenti e compressione colorata simultanea di più blocchi;
- completamento contestuale di catalogo e simboli locali, automatico o con
Ctrl+Spazio; - formattazione automatica idempotente con
Ctrl+Shift+Fe singolo Undo; - diagnostica lessicale e sintattica con pannello navigabile;
- numerazione delle righe visibili in un gutter non selezionabile;
- Outline e Diagnostica pinnabili oppure richiudibili automaticamente;
- conversione di Tab in quattro spazi;
- indentazione multilinea, de-indentazione e rientro automatico dopo
{e(; - creazione, apertura e salvataggio di sorgenti
.ddfin UTF-8; - protezione delle modifiche non salvate e file recenti;
- trova, sostituisci, scorciatoie standard e barra di stato;
- editor locale senza rete, account o telemetria;
- bozza storica della sintassi in
DDF - Program Language Spec.txt.
- nessun validatore semantico o risolutore di simboli;
- nessun interprete, compilatore, debugger o runtime DDF;
- nessuna rinomina, risoluzione semantica o gestione progetto;
- la ri-lessicalizzazione riutilizza il prefisso invariato ma analizza ancora dalla zona modificata fino alla fine del documento;
- la grammatica 0.4 copre un sottoinsieme sperimentale e può ancora cambiare;
- la vista compressa mostra più blocchi contemporaneamente in sola lettura, mantenendo i
colori dei token visibili e i numeri di riga originali;
⋯indica le righe nascoste. Il sorgente originale resta nell'editor e viene ripristinato prima di modificarlo.
Il contenuto di un documento nuovo rimane in memoria finché non viene salvato. Prima di chiudere, aprire un altro file o creare un nuovo documento, l'editor richiede se salvare le modifiche non persistite.
- Windows 10 o 11;
- .NET Framework 4.8;
- Visual Studio 2022 con workload desktop .NET, oppure MSBuild compatibile.
msbuild "DDF - Program Language Editor.sln" /t:Rebuild /p:Configuration=ReleaseL'eseguibile DDFLanguageEditor.exe e la libreria applicativa
DDFLanguageEditor.Core.dll vengono generati in bin\Release e devono essere
distribuiti insieme. La release pubblica è unsigned: Windows può mostrare un
avviso di reputazione.
Per eseguire build Debug, test del core e smoke dinamico WinForms con un unico comando:
.\tests\run-dynamic-smoke.ps1Lo smoke apre il form fuori schermo, usa il vero controllo editor e verifica
che le selezioni mouse non vengano riscritte dal matching, oltre a taglio di
direttive libreria, Undo, diagnostiche transitorie e modifiche rapide. Esercita
inoltre tutti i 19 comandi presenti nei menu File, Modifica, Visualizza e Help; la
copertura è descritta in MENU_TEST_MATRIX.md. Per osservarlo mentre viene
eseguito:
.\tests\run-dynamic-smoke.ps1 -VisiblePer eseguire soltanto i test del core dopo una build Debug:
.\tests\DDFLanguageEditor.Tests\bin\Debug\DDFLanguageEditor.Tests.exeMain.cs,Main.Editor.cs,Main.Completion.cs,Main.Formatting.cseMain.Designer.cs: finestra e flussi utente;FindReplaceForm.cs: ricerca e sostituzione modeless;AboutForm.cs: informazioni su autore, sito, licenza e versione beta;DDFLanguageEditor.Core/: documenti, ricerca, lexer, parser, AST e trasformazioni testabili;tests/DDFLanguageEditor.Tests/: suite di regressione eseguibile senza dipendenze;tests/DDFLanguageEditor.EditorSmokeTests/: smoke dinamico sul form WinForms reale;tests/run-dynamic-smoke.ps1: build e gate di test ripetibile;samples/editor-smoke-test.ddf: controllo visivo manuale dell'editor;samples/formatter-smoke-test.ddf: controllo manuale di formattazione, idempotenza e Undo;samples/lexer/: corpus lessicale valido e non valido;samples/parser/: corpus sintattico valido e non valido;LANGUAGE_REFERENCE.md: sottoinsieme sintattico riconosciuto dall'editor;DDF_GRAMMAR.md: grammatica e precedenze implementate dal parser;DDF_LANGUAGE_CATALOG.md: inventario del vocabolario e procedura di estensione;MENU_TEST_MATRIX.md: copertura dinamica dei comandi e delle scorciatoie dei menu;ROADMAP.md: piano di sviluppo e registro delle decisioni;DDF - Program Language Spec.txt: specifica storica in bozza;Properties/: metadati e risorse del progetto .NET Framework.
Codice e documentazione originali sono distribuiti con licenza MIT, Copyright © 2026 Fabio De Deo.
Non sono presenti pacchetti NuGet o librerie incorporate. Windows Forms e .NET Framework appartengono a Microsoft e sono richiesti come componenti di sistema; vedere THIRD_PARTY_NOTICES.md.
Beta 0.5.4 — experimental work in progress. DDFLanguageEditor is a small
Windows Forms source editor with UTF-8 .ddf document workflows, recent files,
find/replace, a formal lexer, a typed AST parser, source diagnostics, line
numbers and assisted indentation. It includes no semantic analyzer, compiler,
interpreter, debugger or DDF runtime. A live document outline indexes structures,
functions, parameters and variables. Matching delimiters and a source-preserving
read-only fold projection are included. Contextual completion suggests catalog
terms and locally visible document symbols, automatically or with Ctrl+Space.
The idempotent document formatter normalizes indentation and token spacing with
Ctrl+Shift+F while preserving protected token contents and Undo.
The historical language specification is an unstable design draft.
Source and documentation are available under the MIT License.