Skip to content

Add Linux95 terminal editor v1 - #7

Merged
Black7i77 merged 15 commits into
v1.0-devfrom
terminal-editor
Sep 27, 2026
Merged

Black7i77 merged 15 commits into
v1.0-devfrom
terminal-editor

Conversation

@Black7i77

Copy link
Copy Markdown
Owner

Summary

Adds the Linux95 Terminal Editor v1 as a full-screen editor mode inside the existing graphical Terminal application.

Highlights

  • Structured PS/2 keyboard events with Shift/Ctrl state and E0 arrow decoding
  • Shell-compatible edit <path> handoff
  • Fixed 65,536-byte ASCII/LF editor model
  • Arrow-key navigation with vertical and horizontal scrolling
  • Existing-file loading
  • Missing files are not created until first successful save
  • Ctrl+S saving through the writable filesystem API
  • Two-stage Ctrl+Q protection for unsaved changes
  • Editor rendering inside the existing Terminal window
  • Hardened FAT32 8.3 validation
  • Keyboard queue concurrency fixes

Filesystem safety

  • Opening an existing file does not modify it
  • Missing files are not created on open
  • Unsupported text bytes are rejected rather than normalized
  • Writes remain restricted to the Test/slave FAT32 disk
  • Boot/master disk remains protected

Verification

  • make clean ✅
  • make all ✅
  • make test ✅
  • make test-qemu ✅
  • FAT32 write QEMU test ✅
  • Process self-test ✅
  • Process fault test ✅
  • Without-user-programs test ✅
  • Terminal editor QEMU persistence test ✅
  • Keyboard queue ThreadSanitizer test ✅
  • No unresolved kernel symbols ✅
  • git diff --check ✅

The editor QEMU smoke exercised the real shell/editor path, saved data to the disposable Test FAT32 image, verified persistence on the same image, confirmed an unsaved new file remained absent after clean quit, and confirmed the Boot image was unchanged.

Deferred minor follow-ups

  • Very wide Terminal windows currently leave some horizontal space unused
  • Some Makefile header dependency edges may require a clean rebuild after certain header-only changes

@Black7i77
Black7i77 merged commit 9d843e9 into v1.0-dev Sep 27, 2026
1 check passed
@Black7i77

Copy link
Copy Markdown
Owner Author

Linux95 Terminal Editor v1 is now merged into v1.0-dev.

This milestone adds structured keyboard input, Nano-style editing, FAT32-backed file loading/saving, Ctrl+S/Ctrl+Q handling, scrolling, and real QEMU persistence verification.

Thanks to the full review and test pass, the editor is now part of the main Linux95 development branch. Next milestones can build on this foundation with features like wider viewport support, search, selection, and more advanced editing.

@Black7i77 Black7i77 self-assigned this Sep 30, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants