blob: ae92e9b13ad1d38066388d9d648009924d766789 (
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
31
32
33
34
35
36
37
38
39
40
|
declare-user-mode notes
map global user n ': enter-user-mode notes<ret>' -docstring 'Notes'
map global notes n ': new-memo<ret>' -docstring 'New note'
define-command create-log -params 1.. %{
connect run env "EDITOR=kcr edit" "%val{config}/scripts/logger.sh" %arg{@}
}
declare-option str memos_last_saved_id
define-command new-memo %{
set global memos_last_saved_id %{}
edit -scratch '*memos-note*'
# TODO: templates
}
hook global BufCreate '[*]memos-note[*]' %{
set-option buffer filetype markdown
map buffer user s ': save-memo-buffer<ret>'
# TODO: use write somehow?
}
define-command save-memo-buffer %{
evaluate-commands %sh{
name=$(cat /tmp/.kak-memo-response | jq '.name')
if [ -z "$name" ]; then
echo "execute-keys -draft ',%<a-|>~/scripts/memos.sh create > /tmp/.kak-memo-response<ret>'"
else
echo "execute-keys -draft ',%<a-|>~/scripts/memos.sh update $name > /tmp/.kak-memo-response<ret>'"
fi
}
evaluate-commands %sh{
name=$(cat /tmp/.kak-memo-response | jq '.name')
echo "set global memos_last_saved_id %{$name}"
rm -f /tmp/.kak-memo-response 2>/dev/null || true
}
info 'Saved'
}
|