惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Y
Y Combinator Blog
GbyAI
GbyAI
U
Unit 42
WordPress大学
WordPress大学
Last Week in AI
Last Week in AI
P
Proofpoint News Feed
D
DataBreaches.Net
N
Netflix TechBlog - Medium
H
Hackread – Cybersecurity News, Data Breaches, AI and More
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
C
Check Point Blog
Martin Fowler
Martin Fowler
月光博客
月光博客
MongoDB | Blog
MongoDB | Blog
MyScale Blog
MyScale Blog
The Cloudflare Blog
Apple Machine Learning Research
Apple Machine Learning Research
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
M
MIT News - Artificial intelligence
云风的 BLOG
云风的 BLOG
罗磊的独立博客
B
Blog RSS Feed
J
Java Code Geeks
The GitHub Blog
The GitHub Blog

Hacker News: Front Page

SPICE simulation → oscilloscope → verification with Claude Code — Lucas Gerads Introducing Claude Opus 4.7 Qwen Studio The Future of Everything is Lies, I Guess: Where Do We Go From Here? GitHub - SeanFDZ/macmind: Single-layer transformer in HyperTalk for the classic Macintosh Show HN: Agent-cache – Multi-tier LLM/tool/session caching for Valkey and Redis Ancient DNA reveals pervasive directional selection across West Eurasia [pdf] AI cybersecurity is not proof of work Moving a large-scale metrics pipeline from StatsD to OpenTelemetry / Prometheus GitHub - Nightmare-Eclipse/RedSun: The Red Sun vulnerability repository GitHub - SethPyle376/hiraeth: Local AWS emulator focused on fast integration testing, with SQS support, SQLite-backed state, and a debug-friendly web UI. A Better Ludum Dare; Or, How to Ruin a Legacy GitHub - macOS26/Agent: Any AI, replaces Claude Code, Cursor, OpenClaw. Over 18 LLM providers (Claude, OpenAI, Gemini, Ollama, Zai, HF, Qwen) wired into a native Mac app that writes code, builds Xcode projects, bumps versions, manages git, automates Safari, use AppleScript, JS or Accessibility, extend Agent! w/ MCP Servers, run tasks from your iPhone via Messages. YouTube now lets you turn off Shorts I Made a Terminal Pager Burgers | マクドナルド公式 Commands — HackerNews CLI documentation ChatGPT for Excel PiCore - Raspberry Pi Port of Tiny Core Linux Live Nation illegally monopolized ticketing market, jury finds Google Broke Its Promise to Me. Now ICE Has My Data. Founding Engineer at Adaptional | Y Combinator CRISPR takes important step toward silencing Down syndrome’s extra chromosome GitHub - saffron-health/libretto: The AI toolkit for building reliable browser automations US v. Heppner (S.D.N.Y. 2026) no attorney-client privilege for AI chats [pdf] Unexpected €54k billing spike in 13 hours: Firebase browser key without API restrictions used for Gemini requests Fragments: April 14 Cal.com Goes Closed Source: Why AI Security Is Forcing Our Decision | Cal.com - Scheduling Software for Online Bookings Laravel raised money and now injects ads directly into your agent Codex Hacked a Samsung TV
GitHub - garritfra/cell: A terminal spreadsheet editor wi...
garritfra · 2026-04-27 · via Hacker News: Front Page

A terminal spreadsheet editor with Vim keybindings, written in Rust.

cell screenshot

Install

From crates.io:

cargo install cell-sheet-tui

Pre-built binaries for Linux, macOS, and Windows are available on the GitHub Releases page.

Build from source

git clone https://github.com/garritfra/cell.git
cd cell
cargo build --release
# Binary at target/release/cell

Usage

cell                    # empty sheet
cell data.csv           # open CSV
cell data.tsv           # open TSV
cell sheet.cell         # open native format

To explore an example sheet with formulas, ranges, and IF logic:

cell examples/demo.cell

Keybindings

If you know Vim, you know cell.

Normal Mode

Key Action
h j k l Move cursor
gg First row
G Last row
0 First column
$ Last column
Ctrl-D / Ctrl-U Half-page down/up
Ctrl-F / Ctrl-B Full page down/up
w / b Next/previous non-empty cell
i / a / Enter Edit cell (Insert mode)
x Clear cell
dd Delete row
yy Yank row
p / P Paste below/above
u Undo
Ctrl-R Redo
v Visual selection
Ctrl-V Visual block selection
/ Search
n / N Next/previous match
: Command mode

Insert Mode

Type to edit the cell. ESC or Enter confirms.

Visual Mode

Select with hjkl, then y to yank, d to delete.

Commands

Command Action
:w Save
:w file.csv Save as CSV
:w file.cell Save as native format
:w! Force save (flatten formulas)
:q Quit
:q! Quit without saving
:wq Save and quit
:e file Open file
:sort A asc Sort by column A ascending
:sort B desc Sort by column B descending

Formulas

Formulas start with = and support Excel-compatible syntax:

=A1+B1
=SUM(A1:A10)
=AVERAGE(B1:B5)
=IF(A1>100, "high", "low")

Supported Functions (v1)

SUM, AVERAGE, COUNT, MIN, MAX, IF

Formula compliance with the ODF (OpenDocument Formula) spec is tracked and will expand over time.

File Formats

  • CSV/TSV -- Opens and saves standard comma/tab-separated files. Formulas are flattened to their computed values on CSV export.
  • **.cell** -- Native format that preserves formulas. Plain text, human-readable, inspired by sc-im.

When saving a CSV that contains formulas, cell warns you and suggests saving as .cell instead. Use :w! to force a CSV save.

Architecture

cell/
  crates/
    cell-sheet-core/    # Data model, formula engine, file I/O (no TUI dependency)
    cell-sheet-tui/     # Ratatui rendering, Vim modes, event loop

The core library is independent of the terminal UI and can be tested without a terminal.

Releasing

  1. Update the version in [Cargo.toml](Cargo.toml) (workspace version)
  2. Update [CHANGELOG.md](CHANGELOG.md) with the new version's changes
  3. Commit: git commit -am "release: bump to vX.Y.Z"
  4. Tag and push:
 git tag vX.Y.Z
 git push origin main --tags

Pushing a v* tag triggers the release workflow, which:

  • Builds binaries for Linux (x86_64, aarch64), macOS (x86_64, aarch64), and Windows (x86_64)
  • Creates a GitHub Release with the binaries attached
  • Publishes cell-sheet-core and cell-sheet-tui to crates.io via trusted publishing

License

MIT