Installation¶
This guide covers complete installation for users with kickstart.nvim. Since you already have Telescope and fzf installed, setup is straightforward.
Quick Installation¶
1. Run the Setup Script¶
This creates ~/notes/ with the folder structure and templates.
2. Add Shell Functions¶
# For Bash use '~/.bash_profile' instead of '~/.zprofile'
cat notes-functions.sh >> ~/.zprofile
# Alternatively add a line to source notes-functions.sh
# Then source it
source ~/.zprofile
3. Add to Your Kickstart Config¶
Then edit your ~/.config/nvim/init.lua and add this line after your plugins are loaded (typically near the end of the file, after the Telescope configuration):
4. Restart Neovim¶
What You Get with Kickstart Integration¶
Since you already have Telescope, fzf, and ripgrep, the notes system will use them automatically for:
- Today:
<leader>ntopens today's note,<leader>nyopens yesterday's - Fuzzy finding notes:
<leader>nfopens Telescope to find any note - Live grep:
<leader>ngsearches through all your notes in real-time - Task overview:
<leader>nashows all incomplete tasks across all notes - Inserting links:
<leader>nlto pick a note and insert a link
Keybindings¶
| Key | Action | Description |
|---|---|---|
<leader>nt |
Open today | Open today's daily log |
<leader>ny |
Open yesterday | Open yesterday's (most recent) daily log |
<leader>nf |
Find notes | Telescope fuzzy finder for notes |
<leader>ng |
Grep notes | Live search through all notes |
<leader>nl |
Insert link | Pick a note and insert [[link]] |
<leader>nb |
Backlinks | Show what links to current note |
<leader>nn |
New note | Create a new wiki note |
<leader>nx |
Toggle checkbox | Toggle task [ ] ↔ [x] |
<leader>ns |
Show tasks | Tasks in current note (quickfix) |
<leader>na |
All tasks | All incomplete tasks (Telescope) |
In markdown files only:
| Key | Action |
|---|---|
<M-CR> |
Follow [[link]] under cursor (uses correct template) |
<Ctrl>] |
Also follows [[link]] (vim-style) |
Shell Commands¶
Essential commands to get started:
today # Open today's note
context # Show what you're working on
notes-help # Show all available commands (alias: nh)
For the complete list of all commands, see: - Daily Notes Commands - Creating Notes - Search and Navigation - Task Management - Review Commands
Customization¶
Adjust Keybindings¶
If you want different keybindings, edit ~/.config/nvim/lua/notes.lua in the setup_keymaps function. For example, to use <leader>f instead of <leader>nf:
vim.keymap.set('n', '<leader>fn', M.find_notes, vim.tbl_extend('force', opts, { desc = '[F]ind [N]otes' }))
Change Notes Directory¶
In ~/.config/nvim/lua/notes.lua:
M.config = {
notes_dir = vim.fn.expand("~/my-notes"), -- Change this
wiki_dir = vim.fn.expand("~/my-notes/wiki"),
daily_dir = vim.fn.expand("~/my-notes/daily"),
}
And in ~/.zprofile:
Spell Check Language¶
The notes system sets spell check to British English (en_gb). To change:
In ~/.config/nvim/lua/notes.lua, find:
Change to:
- "en_us" for US English
- "en_gb,en_us" for both
Telescope Tips for Notes¶
Preview Notes in Telescope¶
Kickstart's Telescope is already configured to preview files. When you use <leader>nf or <Space>ng, you'll see previews automatically!
Smart Daily Log Handling¶
The yesterday command finds your most recent daily log, making it perfect for handling holidays, weekends, and gaps:
After a long weekend:
After vacation:
The system intelligently handles gaps:
- yesterday always finds the most recent daily log (excluding today)
- No more "No note found for yesterday" errors after time off
- Works perfectly with irregular schedules
Testing the Installation¶
# Create your first note
today
# In Neovim, try these:
# Type: [[areas/test-project]]
# Press M-Enter on it (creates area with correct template)
# Press Ctrl+O to go back
# Try: <leader>nt (opens today's note)
# Try: <leader>ny (opens yesterday's note)
# Try: <leader>nf (shows Telescope file finder)
# Try: <leader>ng (shows Telescope grep)
Troubleshooting¶
Notes keybindings don't work¶
# In Neovim
:messages
# Look for errors
# Check if notes loaded
:lua print(vim.inspect(require('notes').config))
Yesterday doesn't work on Monday¶
# Check if the improved function is loaded
type yesterday
# Should show the function with weekend logic
# If not, make sure you sourced ~/.zprofile
source ~/.zprofile
Telescope not previewing markdown¶
Kickstart should handle this, but if not:
-- In your kickstart config, ensure:
require('telescope').setup {
defaults = {
file_previewer = require('telescope.previewers').vim_buffer_cat.new,
}
}
Next Steps¶
- Start with
todayand get comfortable with daily notes - Use
contextfrequently (make it muscle memory) - After a week, add wiki pages with
wiki <topic> - Explore Telescope search with
<leader>ng - Read the User Guide for philosophy and Daily Workflows for practical patterns
Your kickstart.nvim setup already has all the powerful search capabilities - the notes system just integrates with them seamlessly!