Cell brings the power of spreadsheets to the terminal with a user-friendly interface and familiar Vim keybindings. Designed for efficiency, this tool allows users to manage data effortlessly through pre-built commands or a headless mode, making it perfect for both casual users and automation tasks.
cell: A Terminal Spreadsheet Editor with Vim Keybindings
cell is a terminal-based spreadsheet editor designed for efficiency and ease of use for those familiar with Vim keybindings, built using Rust. This tool enables users to perform spreadsheet functionalities directly from the terminal, maintaining a modern and memory-safe architecture.
Launch cell with a blank spreadsheet or open a file using various formats:
cell # An empty spreadsheet
cell data.csv # Open a CSV file
cell data.tsv # Open a TSV file
cell sheet.cell # Open the native format
To explore a demo sheet that includes formulas and logic, use:
cell examples/demo.cell
cell supports a variety of Excel-compatible formulas:
=A1+B1
=SUM(A1:A10)
=AVERAGE(B1:B5)
=IF(A1>100, "high", "low")
Currently, it has built-in functions such as SUM, AVERAGE, COUNT, MIN, MAX, and IF, with a commitment to further expand functionality.
cell offers a unique modal interface, similar to Vim, with the following modes:
cell can handle multiple file formats:
For users deciding between cell and other tools like sc-im, a comparison clearly indicates its unique offerings:
| Feature | cell | sc-im |
|---|---|---|
| Language / TUI | Rust + ratatui | C + ncurses |
| Editing Model | True Vim modal editing | Vim-inspired navigation |
| Supported File Formats | CSV, TSV, .cell | CSV, TSV, XLSX/XLS/ODS |
| Formula Syntax | Excel-style | @-prefix style |
Contribution is encouraged, and a comprehensive guide is available in CONTRIBUTING.md, covering development setup and project conventions.
cell strives to provide a robust solution for terminal-based spreadsheet editing, combining familiarity from Vim with powerful functionality appropriate for modern development environments.
No comments yet.
Sign in to be the first to comment.