Kale Editor
Flagship GPU-Accelerated Code Editor & IDE
Built from scratch to deliver uncompromising productivity and responsiveness. Designed around a pure Kale Piece Table text buffer, GPU-batched font rendering with dynamic stb_truetype atlasing, multi-cursor editing, lexical syntax highlighting, and an integrated status bar.


Sub-Millisecond Multi-Cursor Editing
Unlike line-array or gap-buffer architectures, the Kale Piece Table holds an immutable original file buffer coupled with an append-only edit buffer. Loading a 100MB file takes under 1ms because no memory copying occurs.
import "libs/framework/app.kl" as app;
import "libs/render/font.kl" as font;
import "packages/std/text/piece_table.kl" as pt;
struct EditorState {
buffer: pt.PieceTable,
cursor_line: int32,
cursor_col: int32,
font_atlas: font.FontAtlas,
}
fn on_frame(state: *EditorState) -> void {
// Render gutter and line numbers
render_gutter(state);
// Draw syntax highlighted viewport
render_text_viewport(state);
// Draw status bar
render_status_bar(state);
}Deterministic command-line invocations to build, link native dynamic dependencies, and run automated regression tests:
kale build editor/main.kl -o bin/kale_edit.exe -lglfw3 -lopengl32./bin/kale_edit.exe src/kale/cli.pyGPG Key 1B917D4779A6102E • Continuous integration with automated symbol verification.
Immutable original file buffer coupled with append-only edit log for instant O(1) multi-megabyte file loading and undo/redo.
Renders crisp typography at all DPI scaling levels using batched textured quads in a single draw call per frame.
Instant syntax tokenization for keywords, identifiers, string literals, numbers, and comments without external dependencies.