Skip to content

✎ A basic writing tool powered by LLM

License

Notifications You must be signed in to change notification settings

S1M0N38/dante.nvim

Repository files navigation

✎  dante.nvim  

Tests workflow LuaRocks release GitHub release Reddit post


Write, generate improved text, navigate through differences and accept/reject them individually.

dante nvim-screencast

⚡️ Requirements

📦 Installation

You can install dante.nvim using your preferred plugin manager. Here's an example configuration for lazy.nvim:

-- Using lazy.nvim
{
  "S1M0N38/dante.nvim",
  lazy = true,
  cmd = "Dante",
  version = "*",
  opts = {
    presets = {
      ["default"] = {
        client = {
          base_url = "https://api.openai.com/v1", -- Provider base URL
          api_key = "YOUR_API_KEY", -- Provider API key
        },
      },
    },
  },
  dependencies = {
    { "S1M0N38/ai.nvim", version = ">=1.3.0" },
  }
}

For a more complex configuration with the same keymaps shown in the screencast, check my own config.

🚀 Usage

To get started with dante.nvim, read the documentation with :help dante. This will provide you with a comprehensive overview of the plugin's features and usage.

Note

Learning Vim/Neovim Documentation: Vim/Neovim plugins are usually shipped with :help documentation. Learning how to navigate it is a valuable skill. If you are not familiar with it, start with :help and read the first 20 lines.

Tip

Customizing Configuration: This plugin ships with a bare minimum configuration. The idea is that the user can define their own presets to interact with different LLM providers and customize the requests down to the last LLM parameter. The downside is that the opts table could become quite large and verbose, but in Neovim, configuration == code, so you can simplify it with utility functions.

🙏 Acknowledgments

This plugin was inspired by the following projects: