blob: 7af77688d5fe2262b62365a34e14307463b7e789 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
|
Stitch - Note Composer
Stitch is a minimal grep-based CLI tool for composing notes.
It is built around the idea of writing notes separately and then
using tags to compose these notes together.
Stitch does not have any opinion about which file
format you use for file capturing, use org, markdown, whatever you
want. You can customize the grep command.
Stitch limits itself only to note composing. For capturing notes, you
will have to set up your own system.
AIMS
- Single binary
- Minimal
- Work with any file format
CREDIT
Stitch is based and largely a stripped down copy of the note composing
system of Howm for Emacs.
INSTALLATION
Chmod +x the binary and put in PATH.
Set the environment variables:
STICH_DIRECTORY
STICH_GREP_CMD (default "grep")
STITCH_HEADLINE_PATTERN (default "^\* ")
STITCH_TAG_PATTERN (default ":[a-z]:")
SPEED UP
Stitch uses grep by default. As your notes grow, this will
become rather slow. To speed it up, you can replace it grep with ugrep.
DEVELOPMENT
To set up the project, easiest way is to just install Nix, direnv and
enable nix flakes. Then to compile:
dune build
And to run:
dune exec -- stitch
RECIPES
Building a journaling system
---
You can build a basic capture command using $EDITOR and date command:
alias capture="JRNL=\"$STITCH_DIRECTORY/$(date +'%Y-%m-%d %H:%M').org\" echo '* :journal:' > $JRNL_FILE && $EDITOR $JRNL_FILE
and then you can find your journal entries, automatically sorted by creation date with
stitch and the journal tag:
alias jrnl="stitch -t journal"
LICENSE
License is BSD-3-Clause
KNOWN ISSUES
- Resizing the screen when editor is open causes panic
|