https://github.com/cvigilv/denote.nvim
Simple notes for Emacs with an efficient file-naming scheme (but for Neovim)
Science Score: 26.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (10.5%) to scientific vocabulary
Keywords
Repository
Simple notes for Emacs with an efficient file-naming scheme (but for Neovim)
Basic Info
Statistics
- Stars: 3
- Watchers: 2
- Forks: 0
- Open Issues: 0
- Releases: 1
Topics
Metadata Files
README.md
denote.nvim
This Neovim plugin provides a command :Denote that contains subcommands to create and rename
text files in a flat notes directory using the Emacs Denote package's file-naming
scheme.
The file-naming scheme is as follows:
DATE==SIGNATURE--TITLE__KEYWORDS.EXTENSION
For example:
20240601T174946--how-to-tie-a-tie__lifeskills_clothes.md
20240601T180054--title-only.org
20240601T193022__only_keywords.norg
20240601T200121.txt
20240601T213392==1a1--i-have-a-signature__denote.csv
Features
- Single access point for all functionality via the
:Denotecommand - Create new notes interactively
- Extensions for integrating with other plugins (e.g. telescope.nvim)
Installation / Config
Example config via lazy.nvim
```lua ---@class Denote.Integrations.Telescope.Configuration ---@field enabled boolean ---@field opts table?
---@class Denote.Integrations.Configuration
---@field oil boolean Activate stevearc/oil.nvim extension
---@field telescope boolean|Denote.Integrations.Telescope.Configuration
---@class Denote.Configuration ---@field filetype string? Default note file type ---@field directory string? Denote files directory ---@field prompts string[]? File creation/renaming prompt order ---@field integrations Denote.Integrations.Configuration? Extensions configuration
--@type Denote.Configuration { filetype = "md", directory = "~/notes/", prompts = { "title", "keywords" }, integrations = { oil = false, telescope = false, }, } ```
On setup, the plugin will create a global variable denote that contains the configuration
table, which can be employed for extensions or other custom functionality:
lua
_G.denote.config
:Denote Command
Currently, the :Denote command supports the following subcommands:
:Denote, create a new note interactively:Denote rename-file, renames the current note interactively:Denote rename-file-title, change the title of the current note:Denote rename-file-keywords, change the keyworks of the current note:Denote rename-file-signature, change the signature of the current note
Extensions
stevearc/oil.nvim
If you use stevearc/oil.nvim to manage your files, you
can enable the oil extension in the configuration. This will add custom highlighting to files
that follow the Denote file-naming scheme.
Note: the highighting is only applied when the
oilextension is enabled in the config, but it will highlight any file that follows the scheme, regardless of the directory.
nvim-telescope/telescope.nvim
If you use nvim-telescope/telescope.nvim,
you can enable the telescope extension in the configuration. This will add the :Denote
search, :Denote insert-link, and :Denote link commands, which will open a picker to search
and insert links to existing buffer.
nvim-orgmode/orgmode
if you use nvim-orgmode/orgmode, you can enale the
[[denote:...]] link format. This is done by adding the following to your orgmode
configuration:
lua
require("orgmode").setup({
-- your config...
hyperlinks = {
sources = {
require("denote.extensions.orgmode"):new({
files = _G.denote.config.directory,
}),
},
},
})
Road map
- [ ] Documentation
- [ ] Rewrite
:h denote - [ ] Add API usage examples
- [ ] Rewrite
- [ ] House-keeping
- [x] Refactor and clean-up code
- [x] Complete modular rewrite
- [x] Change
setuplogic - [ ] Add types
- [ ] Add docstrings
- [ ] Add logging
- [ ] Add tests
- [x] Points of entry
- [x] Implement The
denote-promptsoption
- [x] Implement The
- [ ] Front mattter
- [ ] Front matter generator for
org,markdownandtext - [ ] Front matter format (
denote-{org,text,toml,yaml}-front-matter) - [ ] Regenerate front matter (
denote-add-front-matter)
- [ ] Front matter generator for
- [x] Extensions
- [x] Custom highlighting in oil.nvim (Fontification in Dired)
- [x] Search capabilities with telescope.nvim
Credits
- historia/simple-denote.nivm - This is a fork from this project, which includes integration to other common plugins I use to manage my PKM (oil.nvim, telescope.nvim, nvim-orgmode, etc.)
- HumanEntity/denote.nvim
- denote.el - The original Emacs package
License
MIT
Owner
- Name: Carlos Vigil-Vásquez
- Login: cvigilv
- Kind: user
- Location: Santiago, Chile
- Twitter: BioWASD
- Repositories: 5
- Profile: https://github.com/cvigilv
Chilean biochemist, Neovim plugin developer, and JuliaLanguage enthusiast. Photographer from time to time.
GitHub Events
Total
- Watch event: 2
- Issue comment event: 1
- Push event: 25
- Pull request review event: 2
- Pull request event: 2
- Create event: 4
Last Year
- Watch event: 2
- Issue comment event: 1
- Push event: 25
- Pull request review event: 2
- Pull request event: 2
- Create event: 4
Issues and Pull Requests
Last synced: 10 months ago
All Time
- Total issues: 0
- Total pull requests: 1
- Average time to close issues: N/A
- Average time to close pull requests: 7 minutes
- Total issue authors: 0
- Total pull request authors: 1
- Average comments per issue: 0
- Average comments per pull request: 1.0
- Merged pull requests: 1
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 0
- Pull requests: 1
- Average time to close issues: N/A
- Average time to close pull requests: 7 minutes
- Issue authors: 0
- Pull request authors: 1
- Average comments per issue: 0
- Average comments per pull request: 1.0
- Merged pull requests: 1
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
Pull Request Authors
- SjB (1)