Skip to content

Commit 7e65b6a

Browse files
committed
Provide help in README and simplify module
1 parent d395cbc commit 7e65b6a

File tree

2 files changed

+34
-2
lines changed

2 files changed

+34
-2
lines changed

README.md

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,11 +12,43 @@ Kickstart targets *only* the latest stable neovim release (0.7) and the nightly.
1212
This repo is meant to be used as a starting point for a user's own configuration; remove the things you don't use and add what you miss. This configuration serves as the reference configuration for the [lspconfig wiki](https://github.com/neovim/nvim-lspconfig/wiki).
1313

1414
### Installation
15+
1516
* Backup your previous configuration
1617
* Copy and paste the kickstart.nvim `init.lua` into `$HOME/.config/nvim/init.lua`
1718
* start neovim (`nvim`) and run `:PackerInstall`, ignore any error message about missing plugins, `:PackerInstall` will fix that shortly.
1819
* restart neovim
1920

21+
### Configuration
22+
23+
You could directly modify the `init.lua` file with your personal customizations. This option is the most straightforward, but if you update your config from this repo, you may need to reapply your changes.
24+
25+
An alternative approach is to create a separate `custom.plugins` module to register your own plugins. In addition, you can handle further customizations in a `after/plugin/defaults.lua` file. See the following examples for more information. Leveraging these files should make upgrading to a newer version of this repo easier.
26+
27+
#### Example `plugins.lua`
28+
29+
The following is an example of a `plugins.lua` file (located at `$HOME/.config/nvim/lua/custom/plugins.lua`) where you can register you own plugins.
30+
31+
```lua
32+
return function(use)
33+
use({
34+
"folke/which-key.nvim",
35+
config = function()
36+
require("which-key").setup({})
37+
end
38+
})
39+
end
40+
```
41+
42+
#### Example `defaults.lua`
43+
44+
The following is an example `defaults.lua` file (localed at `$HOME/.config/nvim/after/plugin/defaults.lua`) where you can define your own options, keymaps, autogroups, and more.
45+
46+
```lua
47+
vim.opt.relativenumber = true
48+
49+
vim.keymap.set('n', '<leader>sr', require('telescope.builtin').resume, { desc = '[S]earch [R]esume' })
50+
```
51+
2052
### Contribution
2153

2254
Pull-requests are welcome. The goal of this repo is not to create a neovim configuration framework, but to offer a starting template that shows, by example, available features in neovim. Some things that will not be included:

init.lua

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,9 +32,9 @@ require('packer').startup(function(use)
3232
-- Fuzzy Finder Algorithm which requires local dependencies to be built. Only load if `make` is available
3333
use { 'nvim-telescope/telescope-fzf-native.nvim', run = 'make', cond = vim.fn.executable "make" == 1 }
3434

35-
-- Add custom plugins to packer from a /nvim/lua/custom/plugins.lua module
35+
-- Add custom plugins to packer from /nvim/lua/custom/plugins.lua
3636
local has_plugins, plugins = pcall(require, "custom.plugins")
37-
if has_plugins then plugins.setup(use) end
37+
if has_plugins then plugins(use) end
3838

3939
if is_bootstrap then
4040
require('packer').sync()

0 commit comments

Comments
 (0)