Skip to content

Latest commit

 

History

15 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Blue Panels (bp)

A cross-platform Norton Commander clone built in Rust with Ratatui. Two-panel file manager with classic NC key bindings, built-in viewer and editor, command line, and configurable themes.

Rust

Features

  • Two-panel file manager with 50/50 split, directory-first sorting, file size display
  • Classic NC key bindings — F1-F10, Tab, Insert, Ctrl+O
  • File operations — Copy (F5), Move (F6), Mkdir (F7), Delete (F8) with confirmation dialogs
  • Built-in viewer (F3) — plain text with scroll, binary file detection
  • Built-in editor (F4) — minimal text editor with save/quit menu
  • Command line — type commands directly, output displayed in scrollable view
  • Shell mode (Ctrl+O) — toggle panels to reveal the terminal
  • Menu bar (F9) — sort order, view modes, swap panels, command history, config editor
  • Configurable themes — NC blue default, customizable via TOML config
  • Cross-platform — macOS, Linux, Windows

Install

cargo install --path .

Or build from source:

cargo build --release
./target/release/bp

Key Bindings

Navigation

Key Action
Tab Switch active panel
Up/Down Move cursor
Home/End Jump to first/last file
PgUp/PgDn Page scroll
Enter Open directory / execute file
Left Parent directory

File Operations

Key Action
F1 Help
F3 View file
F4 Edit file
F5 Copy to other panel
F6 Move/rename to other panel
F7 Create directory
F8 Delete
F9 Menu bar
F10 Quit

Other

Key Action
Ctrl+O Toggle shell mode
Ctrl+R Refresh both panels
Insert Toggle file selection
* Invert selection

Configuration

Config file location:

  • macOS/Linux: ~/.config/bp/config.toml
  • Windows: %APPDATA%\bp\config.toml

Default theme (NC blue):

[theme]
panel_bg = "blue"
panel_fg = "white"
active_border = "cyan"
inactive_border = "dark_gray"
cursor_bg = "cyan"
cursor_fg = "black"
selected_fg = "yellow"
menu_bg = "cyan"
menu_fg = "black"
fkey_bar_bg = "cyan"
fkey_bar_fg = "black"
dialog_bg = "white"
dialog_fg = "black"

Colors use the 16 standard terminal color names for maximum compatibility.

Dependencies

Crate Purpose
ratatui TUI framework
crossterm Terminal backend and input
dirs Platform config paths
toml Config file parsing
serde Deserialization

License

MIT

About

A cross-platform Norton Commander clone built in Rust with Ratatui. Two-panel file manager with classic NC key bindings, built-in viewer and editor, command line, and configurable themes.

Resources

Stars

1 star

Watchers

0 watching

Forks

Contributors

Languages