darius / vicissicalc

A spreadsheet program for my own amusement.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Vicissicalc
Copyright (c) 2008,2020 by Darius Bacon <darius@wry.me>
Distributed under GNU General Public Licence v3
http://www.gnu.org/licenses/gpl.html

A little spreadsheet -- I've never written one before, or even really used one.


To build it:
   $ ./build

To run it:
   $ ./vicissicalc
or:
   $ ./vicissicalc checkbook
or other filename; 'checkbook' is the supplied sample spreadsheet.


Requirements:

- A C compiler.
- It uses ANSI terminal escape codes; pretty much every terminal knows them.
  It's meant to work on any operating system having an `stty` program, using C
  code like `system("stty raw");`.


Brief user manual:

- "q" quits the session. You won't get asked if you want to save your
  work.
- "w" saves the spreadsheet file (w for write). It first prompts you to
  set or change the filename. You can abort this by hitting ctrl-G.
- Use the arrow keys to move between cells.
- Use the space key to enter a value into a cell. Again there's ctrl-G
  if you change your mind.
- Numeric values must start with =, just like formulas.
- Refer to other cells with the @ sign.  2@3 means row 2, column 3.  r
  and c are pseudovariables for the current row and column.  =(r-1)@c
  is a formula for the value in the cell above.
- Copy formulas to neighboring cells using the ctrl-arrow key-chords.
  For example, ctrl-uparrow copies the current cell's formula to the
  cell just above it.
- The "f" key toggles whether you see cell formulas or cell values.

About

A spreadsheet program for my own amusement.


Languages

Language:C 99.2%Language:Shell 0.8%