Skip to content

wojtczyk/trust

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

TRUST

TRUST is a retro TUI IDE for Rust projects inspired by classic blue-screen DOS development environments.

Status: experimental nostalgia project. It edits files, browses Rust projects, and runs Cargo commands.

New IDE Features

  • Optional rust-analyzer powered autocomplete for Rust files, with a built-in fallback completion list until the language server is explicitly enabled.
  • In-editor find with live match highlighting and next/previous navigation.
  • Clickable top-bar Run, Debug, and BP controls.
  • Source-level breakpoints in the editor gutter and a basic LLDB-backed debug loop with continue and stepping commands.

Screenshots

Building and running "Hello World" in TRUST.

Starting a project Running a console program
Hello project in TRUST Hello project editor view

TRUST can build TRUST.

TRUST Editor Running Tests
TRUST project in TRUST TRUST menus and panes

FAQ

Why?
Because Rust deserves a blue-screen IDE from the olden days and someone had to do this.

Does it save my files?
Yes. Use F2 or Ctrl+S. TRUST marks dirty buffers with * in the editor title. Still, this is more of a fun project so use at your own risk.

Is this affiliated with any classic DOS IDE vendor?
No. TRUST is an independent nostalgia project inspired by classic DOS development environments.

Can opening a project run code?

Opening a project is passive. Project > Enable rust-analyzer starts the language server with build scripts and proc macros disabled. Cargo run, build, test, and debug commands still execute project code and should only be used with projects you trust.

Run

cargo run -- /path/to/rust/project

If no path is supplied, TRUST opens the current directory.

Keys

  • F1: help
  • F2 / Ctrl+S: save
  • F3 / Ctrl+O: open selected file
  • Backspace: go to the parent directory in the project pane
  • F4: cycle focus
  • F5 / Ctrl+R: cargo run
  • F6: toggle breakpoint on the current line
  • F7: cargo check
  • F8 / Ctrl+T: cargo test
  • F9 / Ctrl+B: cargo build
  • F10: open the menu bar
  • Ctrl+Z: undo
  • Ctrl+Y / Ctrl+Shift+Z: redo
  • F11: debugger step into
  • F12: debugger step over
  • Shift+F11: debugger step out
  • Shift+F5: stop the active debug session
  • Ctrl+C: copy selected text
  • Ctrl+D: start or continue the debugger
  • Ctrl+F: find in the current editor file
  • Ctrl+G: find next
  • Ctrl+Shift+G / Shift+F3: find previous
  • Ctrl+Space: request autocomplete suggestions
  • Ctrl+V: paste clipboard text
  • Ctrl+X: cut selected text
  • Esc / Ctrl+Q: quit
  • Alt+X: delete line
  • Alt+U: duplicate line
  • Tab: indent
  • Shift+Tab: unindent
  • Shift+Navigation: select text
  • In the editor, Enter inserts an auto-indented new line.

Menus

  • F10 opens the menu bar.
  • Left/right arrows switch menus.
  • Up/down arrows move through a dropdown.
  • Enter activates the highlighted menu item.
  • Esc closes the menu.
  • Mouse clicks on the menu bar and dropdown items work too.
  • Edit contains undo/redo, clipboard, find, and line editing commands.
  • Debug contains start/continue, breakpoint, step, and stop commands.
  • File > New asks for a filename and creates it in the current project pane directory.
  • Project > New project opens the Cargo project dialog with parent directory, project name, and bin / lib selector.
  • Project > Enable rust-analyzer starts language-server completions with build scripts, proc macros, check-on-save, and cache priming disabled.
  • Window switches between panes and contains the former focus option.

Mouse

  • Click inside the editor to move the cursor.
  • Click inside the left editor gutter, or use F6, to toggle a breakpoint.
  • Drag inside the editor to select text.
  • Click the top bar Run, Debug, or BP buttons to trigger those actions.
  • Click inside the project pane to open editable files or navigate directories.
  • Click inside any pane to focus it.
  • Drag the vertical divider between project and editor panes to resize them.
  • Drag the top border of the compiler/message pane to resize it.
  • Scroll inside the project, editor, or message pane to move through content.

The project pane lists directories plus editable Rust and Cargo-related files such as .rs, .toml, and .lock, while skipping .git, target, and common editor/build directories. Compiler output is captured in the bottom pane.

About

TRUST – Coding Rust like it's 1989

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages