You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Major changes:
- Fix dd/insert-row/delete-col corrupting rows below due to unsorted
HashMap iteration during cell shifting (sort ascending for shift-up,
descending for shift-down)
- Yank/delete now carries cell styles alongside values; paste restores them
- Formula-aware paste: relative refs (A1) adjust by paste offset, absolute
refs ($A$1) stay fixed, mixed refs ($A1/A$1) lock one axis
- Parser and Expr AST now preserve abs_col/abs_row from $ notation
- New adjust_formula_refs() function in asat-formula for paste offset
- Register stores source_row/source_col for delta computation
- Delete operations (x, dd, visual d) yank to register+clipboard first
- Formula bar shows visible edit cursor with inverted colors
- :home command returns to welcome screen
- Visual selection stays visible when entering command mode
- Undo/redo repositions cursor to affected cell
- Edit mode shows formula text instead of computed result
- Version bump to 0.1.22, website and README updated
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Copy file name to clipboardExpand all lines: README.md
+16-13Lines changed: 16 additions & 13 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -17,8 +17,9 @@
17
17
-**Named ranges** — `:name SALES A1:C10` defines a named range usable in formulas as `=SUM(SALES)`
18
18
-**Multi-sheet workbooks** — tab bar, `:tabnew`, `:tabclose`, `gt` / `gT` to switch sheets
19
19
-**File format support** — read and write CSV, TSV, XLSX, and ODS (OpenDocument Spreadsheet); native `.asat` format with bincode + zstd compression; ODS formula round-trip with cached computed values
20
-
-**System clipboard** — yank (`yy`, `yc`, visual `y`) copies as TSV; `Ctrl+V` in Insert mode pastes from system clipboard
-**System clipboard** — yank (`yy`, `yc`, visual `y`) copies values and styles as TSV; `Ctrl+V` in Insert mode pastes from system clipboard; delete (`dd`, `x`, visual `d`) also yanks to register + clipboard before clearing
21
+
-**Formula-aware paste** — pasting a formula adjusts relative cell references (`A1` becomes `B2` when pasted one row down and one column right); absolute references (`$A$1`) stay fixed; mixed references (`$A1`, `A$1`) lock only the `$`-prefixed axis
22
+
-**Full undo stack** — 1000-deep undo/redo covering cell edits, row/column operations, pastes, and style changes; undo/redo repositions the cursor to the affected cell
22
23
-**Sort & find/replace** — `:sort [COL] [!]` sorts rows by any column (e.g. `:sort B!` = column B descending); `:s/pat/repl/g` does regex find & replace across cells; both undoable
-**Freeze panes** — frozen rows and columns render as sticky headers with a visual separator; set via `:freeze rows N` / `:freeze cols N`
@@ -54,16 +55,16 @@
54
55
55
56
### Pre-built binaries (GitHub Releases)
56
57
57
-
Download a binary for your platform from the [v0.1.21 release](https://github.com/okt4v/ASAT/releases/tag/v0.1.21):
58
+
Download a binary for your platform from the [v0.1.22 release](https://github.com/okt4v/ASAT/releases/tag/v0.1.22):
58
59
59
60
| Platform | Link |
60
61
|----------|------|
61
-
| Linux x86_64 (glibc) |[asat-x86_64-unknown-linux-gnu.tar.gz](https://github.com/okt4v/ASAT/releases/download/v0.1.21/asat-x86_64-unknown-linux-gnu.tar.gz)|
62
-
| Linux x86_64 (musl) |[asat-x86_64-unknown-linux-musl.tar.gz](https://github.com/okt4v/ASAT/releases/download/v0.1.21/asat-x86_64-unknown-linux-musl.tar.gz)|
63
-
| Linux aarch64 |[asat-aarch64-unknown-linux-gnu.tar.gz](https://github.com/okt4v/ASAT/releases/download/v0.1.21/asat-aarch64-unknown-linux-gnu.tar.gz)|
| Windows x86_64 |[asat-x86_64-pc-windows-msvc.zip](https://github.com/okt4v/ASAT/releases/download/v0.1.21/asat-x86_64-pc-windows-msvc.zip)|
62
+
| Linux x86_64 (glibc) |[asat-x86_64-unknown-linux-gnu.tar.gz](https://github.com/okt4v/ASAT/releases/download/v0.1.22/asat-x86_64-unknown-linux-gnu.tar.gz)|
63
+
| Linux x86_64 (musl) |[asat-x86_64-unknown-linux-musl.tar.gz](https://github.com/okt4v/ASAT/releases/download/v0.1.22/asat-x86_64-unknown-linux-musl.tar.gz)|
64
+
| Linux aarch64 |[asat-aarch64-unknown-linux-gnu.tar.gz](https://github.com/okt4v/ASAT/releases/download/v0.1.22/asat-aarch64-unknown-linux-gnu.tar.gz)|
**Interactive reference picking:** While editing a formula, press `Ctrl+R` to enter F-REF mode. Navigate with `hjkl`/arrows. Press `v` (or `:`) to anchor a range start, then move to the end cell and press `Enter` to insert the range reference (e.g. `A1:C5`). Press `Enter` without anchoring to insert a single cell reference. Press `Esc` to cancel. The formula bar continues to show your in-progress formula throughout.
0 commit comments