Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/2kabhishek/tdo.nvim
Fast & Simple Notes in Neovim 📃🚀
https://github.com/2kabhishek/tdo.nvim
editor journal neovim neovim-plugin note-taking notes pkm second-brain todos tools
Last synced: 4 days ago
JSON representation
Fast & Simple Notes in Neovim 📃🚀
- Host: GitHub
- URL: https://github.com/2kabhishek/tdo.nvim
- Owner: 2KAbhishek
- License: gpl-3.0
- Created: 2024-02-03T19:40:18.000Z (10 months ago)
- Default Branch: main
- Last Pushed: 2024-07-22T05:04:21.000Z (4 months ago)
- Last Synced: 2024-11-02T11:34:57.677Z (14 days ago)
- Topics: editor, journal, neovim, neovim-plugin, note-taking, notes, pkm, second-brain, todos, tools
- Language: Lua
- Homepage:
- Size: 428 KB
- Stars: 53
- Watchers: 5
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
tdo.nvim integrates [tdo](https://github.com/2kabhishek/tdo) into your neovim workflow to make managing notes and todos super simple and fast. [Demo video](https://youtu.be/N4IRT7M-RLg)
## ✨ Features
- All features provided by [tdo](https://github.com/2kabhishek/tdo?tab=readme-ov-file#-features)
- Various commands to make working with tdo seamless
- Todo navigation and toggle helpers
- Integration with telescope for easy notes searching## ⚡ Setup
### ⚙️ Requirements
- neovim
- [tdo](https://github.com/2kabhishek/tdo)
- telescope.nvim### 💻 Installation
Add the following to your lazy/packer config
```lua
-- Lazy
{
'2kabhishek/tdo.nvim',
dependencies = 'nvim-telescope/telescope.nvim',
cmd = { 'Tdo', 'TdoEntry', 'TdoNote', 'TdoTodos', 'TdoToggle', 'TdoFind', 'TdoFiles' },
keys = { '[t', ']t' },
},-- Packer
use '2kabhishek/tdo.nvim'
```## 🚀 Usage
### 📡 Commands
`tdo.nvim` adds the following commands:
- `Tdo `: open today's todo when no `args`, accepts `args` same as [tdo](https://github.com/2kabhishek/tdo?tab=readme-ov-file#-usage)
- `TdoEntry `: open today's journal entry, accepts `offset`
- `TdoNote`: create new note with title, if left empty creates a draft with current timestamp
- `TdoTodos`: show all your incomplete todos
- `TdoToggle`: toggle todo state
- `TdoFind `: interactively search for `text` in all your notes
- `TdoFiles`: review all your notes### ⌨️ Mappings
`tdo.nvim` adds the following mappings:
- [t / ]t — Go to previous/next todo `[ ]`
#### Recommended which-key Mappings
Other than the standard commands, you can use which-key to create your own commands.
I have defined commands for yesterday/tomorrow's todos, commit note and timestamp insertion.
```lua
n = {
name = 'Notes',
d = { 'Tdo', "Today's Todo" },
e = { 'TdoEntry', "Today's Entry" },
f = { 'TdoFiles', 'All Notes' },
g = { 'TdoFind', 'Find Notes' },
h = { 'Tdo -1', "Yesterday's Todo" },
j = { "put =strftime('%a %d %b %r')", 'Insert Human Date' },
J = { "put =strftime('%F')", 'Insert Date' },
k = { "put =strftime('%r')", 'Insert Human Time' },
K = { "put =strftime('%F-%H-%M')", 'Insert Time' },
l = { 'Tdo 1', "Tomorrow's Todo" },
n = { 'TdoNote', 'New Note' },
s = { 'lua require("tdo").run_with("commit " .. vim.fn.expand("%:p")) vim.notify("Commited!")', 'Commit Note', },
t = { 'TdoTodos', 'Incomplete Todos' },
x = { 'TdoToggle', 'Toggle Todo' },
},
```## 🏗️ What's Next
You tell me!
## 🧑💻 Behind The Code
### 🌈 Inspiration
Most note-taking systems offer a lot more than I needed, so I wrote [tdo](https://github.com/2kabhishek/tdo) and then tdo.nvim for better integration.
### 💡 Challenges/Learnings
- Dove deeper into nvim APIs
- Learned about not interactive shell scripting.### 🧰 Tooling
- [dots2k](https://github.com/2kabhishek/dots2k) — Dev Environment
- [nvim2k](https://github.com/2kabhishek/nvim2k) — Personalized Editor
- [sway2k](https://github.com/2kabhishek/sway2k) — Desktop Environment
- [qute2k](https://github.com/2kabhishek/qute2k) — Personalized Browser### 🔍 More Info
- [co-author.nvim](https://github.com/2kabhishek/co-author.nvim) — Easily add git co authors
- [nerdy.nvim](https://github.com/2kabhishek/nerdy.nvim) — Easily add nerd glyphs
⭐ hit the star button if you found this useful ⭐
Source
| Blog
| More Links
| Other Projects