blob: e3fe5fc78172bc9b59f3239f59337675d3416611 (
plain) (
blame)
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
|
notevi — read code and take notes; every call is logged in a private jj sidecar.
read a file (line-numbered, relative to a jj revision):
notevi read FILE whole file
notevi read FILE:120-180 line range (or FILE:120 for one line)
notevi read -r REV FILE the file as it is in another jj change
search (regex):
notevi grep PATTERN [PATH] search the working copy
notevi grep -r REV PATTERN PATH search another change (scope with PATH)
take a note while reading (ids count up from 1 per session):
notevi note -f FILE:10-42 TEXT... about a line range
notevi note -t struct -f FILE:10-42 TEXT... about a struct/enum/const/fn/...
notevi note -r REV -f FILE TEXT... about code in another change
notevi note -reply 12 TEXT... reply to log-wide note #12
notevi query -op note shows both the session-local id and the log-wide id used
by -reply and by the /note/N permalinks in `notevi web`.
REV is any jj revset; default @ (the working copy).
The repo-local revset alias notevi_log names the log change. notevi creates it
lazily as an anonymous child of root(); it never appears in the project working
copy. Every new entry records the full target change id and exact target commit
id. A sidecar left by the older vr tool is renamed in place the first time
notevi writes to it, and an existing repo-root vr-log.jsonl is read and imported
on the first append; notevi leaves that legacy working-tree file for you to
remove after migration.
The sidecar has no bookmark and is deliberately local-only: a fresh clone will
not contain it, so include the jj repository in backups when notes matter.
|