Commit 8b9b1e1
Modularize prose_code.c into 12 modules + shared header
Split the monolithic 6,327-line prose_code.c into logically organized
modules following MODULARIZATION.md:
- prose_code.h: shared header with all types, macros, externs, prototypes
- buffer.c: arena allocator, gap buffer, line cache, wrap cache, undo stack
- theme.c: dark/light themes and DPI scaling
- spell.c: Windows ISpellChecker COM integration with static GUIDs
- syntax.c: C and Markdown tokenizers, keyword hash table
- document.c: document lifecycle, line/column math, gutter width
- editor.c: text editing ops, clipboard, undo/redo, cursor movement
- search.c: find/replace with match highlighting
- menu.c: menu definitions and action dispatch
- file_io.c: file I/O, atomic saves, autosave/crash recovery, tab management
- render.c: all GDI rendering (titlebar, tabs, editor, minimap, stats)
- wndproc.c: window procedure, input handling, bracket matching
- main.c: entry point, app icon, EditorState global
Also adds Makefile and GitHub Actions CI workflow for cross-compilation.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>1 parent 745e09f commit 8b9b1e1
15 files changed
Lines changed: 6056 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
0 commit comments