/astrocommunity

A community repository of common plugin specifications

Primary LanguageLuaGNU General Public License v3.0GPL-3.0

AstroNvim Community Repository

This repository contains plugin configuration specifications, a collection of community-contributed plugins for AstroNvim, a neovim configuration by AstroNvim. The configuration specs are used to manage the various plugins that are used in AstroNvim.

📦 Setup

Add the following to your plugins configuration, either in your user/init.lua file or in a file in user/plugins/ folder such as user/plugins/community.lua If you're not sure what folders we are talking about it is recommended to read AstroNvim Readme.

user/init.lua example

Put the following in your user/init.lua file:

return {
  plugins = {
    "AstroNvim/astrocommunity",
    { import = "astrocommunity.colorscheme.catppuccin" }
    -- ... import any community contributed plugins here
  }
}

user/plugins/community.lua example

If you prefer to organize your plugins in the user/plugins folder, you can create a file named community.lua (any Lua file in this folder will be loaded). Here’s an full example of what the file could look like:

return {
  "AstroNvim/astrocommunity",
  { import = "astrocommunity.pack.rust" },
  { import = "astrocommunity.colorscheme.nightfox-nvim", enabled = false },
  { import = "astrocommunity.colorscheme.kanagawa-nvim", enabled = true },
  { import = "astrocommunity.colorscheme.rose-pine" },
  { import = "astrocommunity.colorscheme.catppuccin" },
  { -- further customize the options set by the community
    "catppuccin",
    opts = {
      integrations = {
        sandwich = false,
        noice = true,
        mini = true,
        leap = true,
        markdown = true,
        neotest = true,
        cmp = true,
        overseer = true,
        lsp_trouble = true,
        ts_rainbow2 = true,
      },
    },
  },
  { import = "astrocommunity.completion.copilot-lua" },
  { -- further customize the options set by the community
    "copilot.lua",
    opts = {
      suggestion = {
        keymap = {
          accept = "<C-l>",
          accept_word = false,
          accept_line = false,
          next = "<C-.>",
          prev = "<C-,>",
          dismiss = "<C/>",
        },
      },
    },
  },
  { import = "astrocommunity.bars-and-lines.smartcolumn-nvim" },
  {
    "m4xshen/smartcolumn.nvim",
    opts = {
      colorcolumn = 120,
      disabled_filetypes = { "help" },
    },
  },
}

Note that you can disable imports by setting the enabled option to false. Also, you have two options to modify an existing plugin: you can use the full repository name, like "m4xshen/smartcolumn.nvim", or the module name, like "catppuccin". Keep in mind that the module name may differ from the folder name.

Contributing

If you have a plugin configuration that you would like to add to the AstroCommunity repository, read through our Contribution Guidelines and make a pull request to the repository. Be sure to test your changes thoroughly before submitting the pull request as this is not an officially supported or maintained repository and will be up to the community to be stable. We are looking forward to see where this builds to!