Skip to content

Latest commit

History

28 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

changesets.nvim

Fork of bennypowers/changesets.nvim

Easily create changesets using your favourite editor.

changesets.nvim.webm

Screencast showing how to use changesets.nvim to:

  1. pick package(s) from your project repo
  2. pick a release type (patch, minor, or major)
  3. pick a file name (trivial)
  4. write your changeset
  5. Add any other packages to the changeset

🛌 Installation (Lazy)

return { 'sudo-tee/changesets.nvim',
dependencies= { 'nvim-telescope/telescope.nvim', 'folke/snacks.nvim', 'echasnovski/mini.pick', 'ibhagwan/fzf-lua' }, -- choose only one for multi-select---@module'changesets'---@typechangesets.Optsopts= {
changeset_dir='.changesets',
},
keys= {
{ '<leader>cxx',
function() require'changesets'.create() end,
mode='n',
desc='Create a changeset',
},
{ '<leader>cxa',
function() require'changesets'.add_package() end,
mode='n',
desc='Add a package to the changeset in the current buffer',
},
},
}

⚙️ Configuration

The following options can be set when calling setup or in your opts table:

require('changesets').setup({
-- Root directory of your project (default: current working directory)cwd=vim.fn.getcwd(),
-- Directory where changesets are stored (default: '.changesets')changeset_dir='.changesets',
-- Marker shown next to changed packages (default: '~')changed_packages_marker='~',
-- Highlight group for changed packages (default: 'Added')changed_packages_highlight='Added',
-- Function that returns default text for new changesets (default: returns empty string)get_default_text=function()
return''end,
-- List of known monorepo files (default: {'pnpm-workspace.yaml', 'lerna.json', 'turbo.json', 'nx.json', 'rush.json'})monorepo_files= { 'pnpm-workspace.yaml', 'lerna.json', 'turbo.json', 'nx.json', 'rush.json' },
-- Function to modify or filter the list of found packages (default: nil)filter_packages=nil, -- function(packages: Package[]): Package[]|nil-- set your preferred picker for selecting packagespreferred_picker='telescope', 'telescope'|'fzf'|'mini.pick'|'snacks'|nil
})

About

Easily create changesets using your favourite editor

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages