slate: A note taking CLI tool.

[ library, mit, program, unclassified ] [ Propose Tags ]

Please see the README on Github at https://github.com/evuez/slate#readme


[Skip to Readme]

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

  • No Candidates
Versions [RSS] 0.2.0.0, 0.3.0.0, 0.4.0.0, 0.5.0.0, 0.6.0.0, 0.7.0.0, 0.8.0.0, 0.8.1.0, 0.9.0.0, 0.10.0.0, 0.11.0.0, 0.12.0.0, 0.13.0.0, 0.13.1.0
Change log ChangeLog.md
Dependencies base (>=4.7 && <5), directory (>=1.3), filepath (>=1.4), htoml (>=1.0), optparse-applicative (>=0.14), process (>=1.6), slate, string-conversions (>=0.2), unordered-containers (>=0.2) [details]
License MIT
Copyright Copyright (c) 2017, evuez
Author evuez
Maintainer helloevuez@gmail.com
Home page https://github.com/evuez/slate#readme
Bug tracker https://github.com/evuez/slate/issues
Source repo head: git clone https://github.com/evuez/slate
Uploaded by evuez at 2018-02-25T15:01:59Z
Distributions
Executables slate
Downloads 6554 total (35 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Last success reported on 2018-02-25 [all 1 reports]

Readme for slate-0.8.0.0

[back to package description]

slate - a note taking tool.

A simple tool to take notes from your terminal (and sync them between your devices).

Generates markdown task lists.

Lists are stored in ~/.config/slate/ and their default name is the name of your current directory. You can use any other name you want using the --name option.

Install

$ stack install slate

Basic usage

$ slate --help

slate - a note taking tool.

Usage: slate COMMAND
  Slate

Available options:
  -h,--help                Show this help text

Available commands:
  add                      Add a note.
  done                     Mark a note as done when given a note ID, display
                           done notes otherwise.
  todo                     Mark a note as todo when given a note ID, display
                           todo notes otherwise.
  remove                   Remove a note.
  display                  Display a slate.
  rename                   Rename a slate.
  wipe                     Wipe a slate.
  status                   Display the status of a slate.
  sync                     Sync every slate.

$ slate add "My *first* note."
$ slate add "New note!"
$ slate display
00 - My first note.
01 - New note!

$ slate done 0
$ slate display
00 - My first note.
01 - New note!

$ slate display --only=todo # or just slate todo
01 - New note!

$ slate status
1 done, 1 todo (2 total).

$ slate add "Fake note"
$ slate display
00 - My first note.
01 - New note!
02 - Fake note

$ slate remove 2
$ slate display
00 - My first note.
01 - New note!

$ slate wipe --only=todo
$ slate display
00 - My first note.

$ slate todo 0
$ slate display
00 - My first note.

Configuration

The following configuration options can be set in ~/.config/slate/config.toml (you'll have to create this file).

sync

You can use slate sync to synchronize your slates. There's no default configuration for this command, so for it to work you'll have to add your own sync command, for example:

sync = "git add . && git commit -m 'Update slates'; git pull --rebase origin master && git push origin master"

This would stage & commit every updates in ~/.config/slate/, update your local copy and push your updates to the origin remote.

status

By default, slate status only displays the number of notes by status. You can add a command in the status key that'll be used to check if the slate is synchronized or not, for example:

status = "git diff --exit-code $SLATE"

Where $SLATE will be set to ~/.config/slate/<slate name>.md. The command must return a non-zero exit code if the slate is out of sync and zero if it's synced.