Skip to content

mahyarmirrashed/jdd.nvim

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

26 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

jdd.nvim

A Neovim plugin that integrates with Johnny Decimal Daemon (jdd), allowing you to automatically organize files in a directory according to the Johnny Decimal system—directly from your editor.

Features

  • Seamlessly runs the JDD process in the foreground from Neovim
  • Fully configurable: all jdd CLI options are available via Lua
  • Supports exclusion patterns, dry-run mode, and custom config files
  • Automatically stops the JDD process when Neovim exits

Requirements

Installation

Install using your preferred Neovim package manager.

use {
  "mahyarmirrashed/jdd.nvim",
  requires = { "nvim-lua/plenary.nvim" },
  config = function()
    require("jdd").setup()
  end,
}

Using vim-plug

Plug 'nvim-lua/plenary.nvim'
Plug 'mahyarmirrashed/jdd.nvim'

Using lazy.nvim

{
  "mahyarmirrashed/jdd.nvim",
  dependencies = { "nvim-lua/plenary.nvim" },
  config = function()
    require("jdd").setup()
  end,
}

Usage

Configure and start JDD with the setup() function. All options map directly to the corresponding CLI flags.

Example

require("jdd").setup({
  -- root = "~/Documents",
  -- log_level = "info",
  dry_run = false,
  -- exclude = { ".git/**", "tmp/**" },
  -- config = "/path/to/.jd.yaml", -- optional
  -- notify = false,
  autostart = true,
})

To manually control the process:

require("jdd").setup({ autostart = false })
require("jdd").start() -- Start JDD
require("jdd").stop()  -- Stop JDD

How It Works

  • JDD runs as a foreground process managed by Neovim.
  • All logs and errors are shown as Neovim notifications.
  • The process is automatically stopped when Neovim exits.

License

MIT License

About

Run Johnny Decimal Daemon automatically in Neovim.

Topics

Resources

License

Stars

Watchers

Forks

Languages