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
|
# sketchbook.nvim - simple notetaking
Motivation behind this thing, that I tried lots of notetaking tools but nothing really clicked.
I didn't want to leave nvim and it's not really convenient to manage ~/notes directory.
## Demo
https://github.com/user-attachments/assets/ddd785f1-aea4-40b3-8422-d75efd82bfc1
## Warn
This was quick and dirty implementation, so not everything will perfectly because currently its in "works on my machine" state.
## Features
- **Quick Note Creation**: Quickly create and manage notes.
- **Template Selection**: Choose from predefined templates for your notes.
- **Note Searching**: Search through your notes easily.
- **Git Integration**: Commit and push your notes to a Git repository.
- **Floating Windows**: Use floating windows for quick notes.
## Installation
You can install Sketchbook using [lazy.nvim](https://github.com/folke/lazy.nvim).
### Using [lazy.nvim](https://github.com/folke/lazy.nvim)
Add the following to your `lazy.nvim` configuration:
```lua
require('lazy').setup({
{
'makefunstuff/sketchbook.nvim',
lazy = false,
config = function()
require('sketchbook').setup({
notes_directory = "~/my_notes/",
templates_directory = "~/my_notes/templates/",
keymaps = {
create_note = "<leader>nc",
update_index = "<leader>ni",
search_notes = "<leader>ns",
select_template = "<leader>nt",
create_quick_note = "<leader>nq",
toggle_quick_note = "<leader>qc", -- Keymap for toggling quick note window
open_entire_quick_note = "<leader>nqe",
commit_notes = "<leader>ngc", -- Keymap for committing notes
push_notes = "<leader>ngp", -- Keymap for pushing notes
}
})
end
}
})
```
## TODO:
- [ ] improve git Integration
- [ ] fix telescope issues with indexing
- [ ] add auto indexing
|