9.4 KiB
IDE-Referenz Terminal Basic
Rekonstruierte UX-Spezifikation der IDE des Vorbilds (VBDOS 1.0, 1992) —
Grundlage für tb-ide (Phase 5). Quellen: Original-Hilfedatei (dekodiert),
README des Originalpakets, Screenshots (Pixelanalyse), Sekundärliteratur.
Konfidenz je Abschnitt vermerkt; TODO = offen.
Die IDE besteht im Vorbild aus zwei Programmen: der Programmierumgebung und dem separaten Form Designer (eigene Menüleiste, Wechsel über „Event Procedures"/F12 bzw. View→Form). Terminal Basic bildet beides in einem Prozess ab, behält aber die zwei Modi mit identischer Bedienung.
1. Menüstruktur (Konfidenz: sicher)
Menüleiste der Umgebung: File Edit View Search Run Debug Options Window,
Help rechtsbündig. Form-Designer-Modus: File Edit View Tools Options
Window Help. ─── = Separator, • = Toggle-Markierung.
- File (Alt+F): New Project / Open Project… / Save Project ─── New Form / New Module… / Add File… / Remove File… / Save File / Save File As… ─── Load Text… / Save Text… ─── Print… / Shell ─── Exit Alt+F4
- Edit (Alt+E): Undo Ctrl+Z ─── Cut Ctrl+X / Copy Ctrl+C / Paste Ctrl+V / Clear Del ─── New Sub… / New Function… / Event Procedures… F12
- View (Alt+V): Code… F2 / Form… Shift+F12 ─── Next Statement / Output Screen F4 ─── Included File / •Included Lines (Designer-Modus: … ─ Menu Bar F10 / Grid Lines)
- Search (Alt+S): Find… / Selected Text Ctrl+\ / Repeat Last Find F3 / Change…
- Run (Alt+R): Start Shift+F5 / Restart / Continue F5 / Pause (Ctrl+Break) / Modify COMMAND$… ─── Make EXE File… / Make Library… ─── Set Start-up File…
- Debug (Alt+D): Add Watch… / Instant Watch… Shift+F9 / Watchpoint… / Delete Watch… / Delete All Watch ─── •Trace On / •History On ─── Toggle Breakpoint F9 / Clear All Breakpoints / •Break on Errors / Set Next Statement
- Options (Alt+O): Display… / Set Paths… / Right Mouse… / Save… / •Syntax Checking (Einstellungen persistent)
- Window (Alt+W): New Window / Arrange All ─── Calls / Debug / Help / Immediate / Output / Project ─── Liste offener Code-Fenster (• = aktiv) (Designer-Modus: Color Palette / Menu Design Window / Toolbox / Help / •Form: … )
- Help (Alt+H): Index / Contents ─── Keyboard ─── Topic: F1 / Using Help Shift+F1 / Tutorial ─── About…
Bedienung: Alt (oder F11) aktiviert die Menüleiste, hervorgehobene Buchstaben wählen, Esc bricht ab, „…" kündigt Dialog an.
2. Fensterverwaltung (Konfidenz: sicher)
- MDI-artig: alle Fenster/Dialoge sind Kinder der IDE-Fläche. Titelleiste mit Control-Menü-Box links, Minimieren/Maximieren rechts, Rahmen, Scrollbalken; Code-Fenster nummeriert („[1] Untitled").
- Tasten: F6/Ctrl+F6 nächstes, Shift+F6 vorheriges Fenster, Ctrl+F4 schließen, Ctrl+F7 verschieben, Ctrl+F8 Größe, Ctrl+F9 minimieren, Ctrl+F10 maximieren, Ctrl+F5 wiederherstellen, Alt+Minus Control-Menü; „Arrange All" kachelt.
- Project Window (Start: rechts angedockt): Buttons „Form"/„Code" (Enter öffnet, „Form" wechselt in den Designer) + Modulliste (.FRM/.BAS).
- Immediate Window über Alt+W,I — nicht permanent sichtbar (anders als QB).
- Debug Window (read-only: Watches/Watchpoints), Output Window (Ausgabebildschirm als Fenster; F4 = echter Vollbild-Output), Calls- und Help-Fenster.
3. Form Designer (Konfidenz: sicher)
- Toolbox links; Einträge: Check Box, Combo Box, Command Button, Dir List, Drive List, File List, Frame, HScrollBar, Label, List Box, Option Button, Picture Box, Text Box, Timer, VScrollBar (identisch als Tools-Menü).
- Platzieren: Doppelklick auf Toolbox-Eintrag oder Tool wählen + auf der Form aufziehen; Sizing Handles (■ an den Ecken); Verschieben per Drag. Tastatur: Pfeile = 1 Zelle verschieben, Ctrl+Pfeile = 5 Zellen, Shift+Pfeile = Größe, Tab/Shift+Tab = Control-Wechsel; Mehrfachauswahl mit Strg+Klick (nur Maus). Raster: View→Grid Lines.
- Properties Bar oben statt Eigenschaftsfenster:
Property: [Caption]↓ Value: […]↓ │ Spalte,Zeile │ BxH. F2 springt in die Value-Box; F10 toggelt Menüleiste ↔ Properties Bar (nur eine sichtbar). Keine Statuszeile im Designer. - Menu Design Window (Alt+W,M): Caption (
&= Access-Key,-= Separator), CtlName, Tag, Index; Checked/Enabled/Visible/Separator; Shortcut-Dropdown; Outlining-Buttons (Ebene/Reihenfolge, Einfügen, Löschen, Done). - Color Palette (Alt+W,C): ForeColor/BackColor wählen, Farbe per Drag auf die Form ziehen.
4. Farbschema (Konfidenz: sicher für belegte Elemente)
| Element | Farben (DOS-Palette) |
|---|---|
| Menüleiste | Schwarz (0) auf Hellgrau (7) |
| Desktop | Füllzeichen ▒, Hellgrau (7) auf Schwarz (0); Füllzeichen einstellbar |
| Code-Fenster | Hellgrau/Weiß auf Blau (1) |
| Titelleiste aktiv | Weiß (15) auf Magenta (5) — VBDOS-Spezifikum |
| Rahmen/Scrollbalken | Schwarz auf Hellgrau (7) |
| Project Window/Dialoge | Schwarz auf Hellgrau (7); Fokus-Button mit weißem Doppelrahmen; Deaktiviertes Dunkelgrau (8); Listenauswahl Weiß auf Schwarz |
| Statuszeile | Schwarz auf Cyan (3) |
Alles über Options→Display je „User-Interface Element" umkonfigurierbar (Fore-/Background aus 16 Farben, Desktop-Füllzeichen, Tabweite). Laufzeit-Defaults kompilierter Programme weichen ab (Titel Weiß auf Schwarz).
5. Editor-Verhalten (Konfidenz: sicher; Keyword-Großschreibung: wahrscheinlich)
- Syntax Checking (Toggle, Standard an): beim Verlassen der Zeile wird geprüft (Fehlerdialog), formatiert (Leerzeichen, Keywords groß) und die Zeile sofort in ausführbare Form übersetzt. Für Terminal Basic heißt das: zeilenweise Inkrementalübersetzung ist Teil des Editors (passt zur Instant-Compile-Anforderung).
- DECLARE-Prototypen werden beim Speichern automatisch erzeugt; DEFtype-Zeilen werden automatisch in neue Prozeduren übernommen.
- Tastatur: CUA (Ctrl+X/C/V/Z, Einfg, Pos1/Ende) plus WordStar-Chords (Ctrl+Q…, Ctrl+Y Zeile löschen, Bookmarks Ctrl+K,0–3 / Ctrl+Q,0–3). Prozedurnavigation Shift+F2/Ctrl+F2.
6. Run/Debug-Tasten (Konfidenz: sicher)
Shift+F5 Start · F5 Continue · F4 Output-Screen-Toggle ·
F7 bis Cursor · F8 Single Step · F10 Procedure Step ·
F9 Breakpoint · Shift+F9 Instant Watch · Shift+F8/Shift+F10
History rückwärts/vorwärts (bei History On) · F12 Event Procedures.
Break-Modus: Immediate Window akzeptiert PRINT, Zuweisungen,
Prozeduraufrufe, ERROR n; „Set Next Statement" verlegt die Ausführung.
„Break on Errors" stoppt im Fehlerhandler.
7. Hilfe (Konfidenz: sicher)
F1 kontextsensitiv (auch rechte Maustaste, konfigurierbar),
Shift+F1 Using Help. Hyperlinks als ◄Thema►, Tab/Shift+Tab springt,
Enter folgt, Alt+F1 zurück (20 Ebenen), Ctrl+F1 nächstes Topic,
Esc schließt. Hilfe im eigenen Fenster; Index, Contents, Keyboard-Guide,
Tutorial. → Terminal Basic: Hilfeinhalt sind die Markdown-Dokumente aus
docs/ (Sprach- und Bibliotheksreferenz, Ist-Stand der Implementierung),
gerendert im Help-Fenster mit dynamischem Umbruch nach Fenstergröße;
Navigation wie im Vorbild (F1 kontextsensitiv, Tab/Enter, Alt+F1 zurück).
8. Statuszeile (Konfidenz: sicher; Caps/Num: unklar)
Unterste Zeile, Schwarz auf Cyan. Links kontextabhängige Shortcuts in
spitzen Klammern (<Shift+F1=Help> <F6=Window> <F2=Code> <F5=Run> <F8=Step>), per Mausklick auslösbar. Rechts Zeile:Spalte
(00001:001). TODO: Caps/Num-Anzeige.
9. Start (Konfidenz: wahrscheinlich)
„Log-On Screen" (Begrüßung, Version, Copyright), danach leeres Projekt: Code-Fenster „[1] Untitled", Project Window „Untitled". Kein Survival-Guide-Dialog, kein Easy/Full-Menüs-Konzept. TODO: Splash vs. Dialog.
10. Interpreter vs. Compiler (Konfidenz: sicher)
Die Umgebung führt P-Code-übersetzte Zeilen sofort aus; der separate
Compiler erzeugt native EXEs (wahlweise standalone oder mit Runtime-Modul).
Nur die Umgebung hat: Immediate Window, Watches/Watchpoints, Breakpoints,
Stepping, History-Trace, Set Next Statement, automatische Bereichs-/
Überlaufprüfungen. → Terminal Basic: tb (IDE) und tbc
(Standalone-Compiler) teilen sich dieselbe TBVM, damit es — anders als im
Vorbild — keine Verhaltensunterschiede zwischen IDE-Lauf und
kompiliertem Programm gibt (dokumentierte Abweichung, gewollt).
Übernahme-Entscheidungen für Terminal Basic
- Menüstruktur, Tastenbelegung, Fensterverwaltung und Farbschema werden originalgetreu übernommen (inkl. Magenta-Titelleiste, Options→Display).
- Umgebung und Form Designer werden ein Prozess mit zwei Modi; der F12/Shift+F12-Wechsel bleibt erhalten.
- Zeilenweises Syntax-Checking mit Formatierung/Normalisierung ist Editor-Standard (abschaltbar wie im Vorbild).
- IDE-Lauf und
tbc-Kompilat verhalten sich identisch (gleiche TBVM). - MS-DOS-spezifische Toolbox-Controls (Dir/Drive/File List) werden als plattformneutrale Datei-Browser-Controls nachgebildet.
- Dynamische Terminalgröße (2026-09-02): die IDE nutzt das gesamte Terminal — Desktop, Fensterverwaltung und Formulare passen sich an; Mindestgröße 80×25, darunter nur ein Hinweis (btop-artig).