abacus/README.md

46 lines
1.6 KiB
Markdown
Raw Permalink Normal View History

2024-08-19 20:06:34 -04:00
# abacus
Copyright (C) Jonathan Lamothe <jonathan@jlamothe.net>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License as
published by the Free Software Foundation, either version 3 of the
License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Affero General Public License for more details.
You should have received a copy of the GNU Affero General Public
License along with this program. If not, see
<https://www.gnu.org/licenses/>.
2024-08-22 19:32:04 -04:00
## Executive Summary
2024-08-22 19:32:04 -04:00
This is a TUI abacus simulator. It is a completely pointless program. I
made it solely for the sake of the absurdity.
## Installation
This program is written in [Haskell](https://haskell.org) using the
Stack package manager. The easiest way to install it is by first
installing [GHCup](https://www.haskell.org/ghcup/), and then from
within the project directory, run the command: `stack install`
You should then be able to run it by simply typing `abacus` on the
command line. There are currently no command-line options.
## Keys
- C-c/q: Quit the program
- up/k: move the rung selector up
- down/j: move the rung selector down
- PgUp/K/S-up: select the top rung
- PgDn/J/S-down: select the bottom rung
- left/h: slide a bead to the left
- right/l: slide a bead to the right
- Home/H/S-left: move the entire rung to the left
- End/L/S-right: move the entire rung to the right
- r: reset the abacus