aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--README.md45
1 files changed, 41 insertions, 4 deletions
diff --git a/README.md b/README.md
index 3df9e33..c3adeaf 100644
--- a/README.md
+++ b/README.md
@@ -1,10 +1,47 @@
-# About
-This is a c++ Linux CLI implementation of John Conway's game of life.
+## About
+
+A c++ Linux CLI implementation of John Conway's game of life.
+
+## Features
+
+- Vim-like key bindings
+- Open [RLE](https://conwaylife.com/wiki/Run_Length_Encoded) files
+- Change generation speed
+- Generation stepping
+- Pause & unpause
+
+## Usage
+
+#### Key bindings (normal mode)
+
+`h`, `j`, `k` & `l` to move left, down, up & right, respectively.
+
+`q` to quit.
+
+`i` to insert a cell.
+
+`x` to delete a cell.
+
+`p` to pause and unpause.
+
+`s` to step a generation.
+
+`+` & `-` to to increment & decrement the generation speed, respectively.
+
+`:` to enter command mode.
+
+#### Commands
+
+Commands that can be run in command mode.
+
+`open (PATH)` to open a [RLE](https://conwaylife.com/wiki/Run_Length_Encoded) file.
+
+## Todo
-# Todo
- Dynamic terminal window size. Redraw everything when the window size changes
-# Good to have links
+## Good to have links
+
[Original Scientific American article](https://web.stanford.edu/class/sts145/Library/life.pdf)
[John Conway's Game of Life](https://playgameoflife.com)