rodo/README.md

151 lines
3.8 KiB
Markdown
Raw Normal View History

2018-03-12 14:00:41 +00:00
# rodo
A simple todo list tool for people who live on the command-line
2018-05-20 02:03:00 +00:00
By Jesse Laprade
## Todo
2019-02-06 13:32:57 +00:00
- [ ] Don't allow users to remove negative numbers
- [ ] Change nested maps into a `compose`
2018-11-12 02:56:10 +00:00
- [ ] Only allow quoted items to be added
- [ ] Add color option to config file
- [ ] Encrypt todo list file
2018-11-12 02:56:10 +00:00
# Screenshot
2018-09-08 04:32:10 +00:00
2018-09-13 05:17:30 +00:00
![](screenshot.png)
2018-09-08 01:23:57 +00:00
# Table of Contents
* [Platforms](https://github.com/m455/rodo#platforms)
2019-01-31 14:46:14 +00:00
* [Requirements](https://github.com/m455/rodo#requirements)
2018-10-10 13:19:11 +00:00
* [Downloading](https://github.com/m455/rodo#downloading)
2018-09-08 04:07:43 +00:00
* [Setup](https://github.com/m455/rodo#setup)
* [GNU/Linux](https://github.com/m455/rodo#gnulinux)
2019-01-31 14:46:14 +00:00
* [Windows Subsystem for Linux](https://github.com/m455/rodo#windows-subsystem-for-linux)
2018-09-08 01:23:57 +00:00
* [Usage](https://github.com/m455/rodo#usage)
* [Usage examples](https://github.com/m455/rodo#usage-examples)
2018-09-08 01:23:57 +00:00
* [Configuration](https://github.com/m455/rodo#configuring-rodo)
# Platforms
2018-05-20 02:03:00 +00:00
* GNU/Linux
* Windows Subsystem for Linux
2018-09-08 01:01:00 +00:00
2019-01-31 14:46:14 +00:00
# Requirements
2018-09-08 01:01:00 +00:00
2018-09-08 01:30:36 +00:00
* [Racket 6.x](https://racket-lang.org/)
* [Git](https://git-scm.com/) (Optional method for downloading)
2018-09-08 01:01:00 +00:00
# Downloading
2019-01-24 14:15:37 +00:00
* Via GitHub on a web browser
1. Click the *Clone or download* button at the top of
this page
2. Click *Download ZIP* from the drop-down list
2019-01-24 14:15:37 +00:00
2018-10-10 13:19:11 +00:00
* Via Git
* Run `git clone https://github.com/m455/rodo` on the command line
2018-09-08 01:31:43 +00:00
# Setup
2018-09-08 01:01:00 +00:00
Follow the steps below to set up rodo on the available
platform(s)
2018-10-20 01:36:52 +00:00
## GNU/Linux
Follow the steps below to set up rodo on GNU/Linux
### Set up a $PATH
1. Create a directory for your `$PATH` by running `mkdir ~/bin/`
2. Add your newly-created `~/bin/` to your `$PATH` by running `echo "export PATH=~/bin:\$PATH" >> .bashrc`
### Adding rodo to your $PATH
1. Create a file in your `~/bin/` directory with the following contents in it:
```
#!/usr/bin/env bash
racket ~/path/to/rodo.rkt "$@"
```
For example, if you downloaded the project to your
2019-01-24 14:15:37 +00:00
`~/downloads/` folder you would change the line `racket
~/path/to/rodo.rkt "$@"` to `racket
~/downloads/rodo/rodo.rkt "$@"`.
2019-01-31 14:46:14 +00:00
If you prefer to use an executable, rather than a wrapper,
you can create an executable binary file with `raco exe
file-name-here.rkt`.
2. Save the file
3. Make the file executable by running `chmod u+x ~/bin/name-of-your-file`
## Windows Subsystem for Linux
Follow the steps below to set up rodo on GNU/Linux
### Set up a $PATH
1. Create a directory for your `$PATH` by running `mkdir ~/bin/`
2. Add your newly-created `~/bin/` to your `$PATH` by running `echo "export PATH=~/bin:\$PATH" >> .bashrc`
### Adding rodo to your $PATH
1. Create a file in your `~/bin/` directory with the following contents in it:
```
#!/usr/bin/env bash
racket ~/path/to/rodo.rkt "$@"
```
For example, if you downloaded the project to your
`~/downloads/` folder you would change the line `racket
~/path/to/rodo.rkt "$@"` to `racket
~/downloads/rodo/rodo.rkt "$@"`.
2018-09-08 01:01:00 +00:00
If you prefer to use an executable, rather than a wrapper,
you can create an executable binary file with `raco exe
file-name-here.rkt`.
2018-10-10 13:19:11 +00:00
2. Save the file
2018-10-10 13:19:11 +00:00
3. Make the file executable by running `chmod u+x ~/bin/name-of-your-file`
2018-11-12 02:56:10 +00:00
# Usage
2018-05-20 02:03:00 +00:00
Type `rodo` plus one of the options below with a space
between `rodo` and the option.
2018-05-20 02:03:00 +00:00
2019-01-24 14:15:37 +00:00
`init` - Initializes a file in `~/.rodo/todo-list` by default
2018-09-08 04:07:43 +00:00
`ls` - Lists items from the list
`add` - Adds an entry to the list
2018-04-10 00:27:01 +00:00
`rm` - Removes an item from the list
2018-04-13 06:14:51 +00:00
2018-09-15 05:06:48 +00:00
**Note:** You may have to run `rodo ls` to see which number corresponds to which item when removing items.
2018-09-08 01:01:00 +00:00
## Usage examples
2018-04-10 00:27:01 +00:00
The examples below assume that you have rodo [set up](https://github.com/m455/rodo#set-up-a-path) in your `$PATH`
`rodo init`
2018-04-13 06:14:51 +00:00
`rodo ls`
2018-09-08 04:30:28 +00:00
`rodo add bread` (Single-word entry)
2018-09-08 04:30:28 +00:00
`rodo add "go to the bank"` (Multi-word entry)
2018-09-08 04:30:28 +00:00
`rodo rm 1`
# Configuring rodo
Right now, the configurations can be found in the `config.rkt file`. Settings, such as program name, path, and directory can be changed.
2018-10-10 19:05:54 +00:00