Skip to content

Commit 8f8d1c1

Browse files
Merge pull request #1 from papabryce/init-setup
Init setup
2 parents 76c5b1e + ad3732d commit 8f8d1c1

File tree

9 files changed

+346
-225
lines changed

9 files changed

+346
-225
lines changed

README.md

Lines changed: 5 additions & 130 deletions
Original file line numberDiff line numberDiff line change
@@ -1,30 +1,12 @@
11
# kickstart.nvim
22

3-
https://github.com/kdheepak/kickstart.nvim/assets/1813121/f3ff9a2b-c31f-44df-a4fa-8a0d7b17cf7b
4-
5-
### Introduction
6-
7-
A starting point for Neovim that is:
8-
9-
* Small
10-
* Single-file (with examples of moving to multi-file)
11-
* Documented
12-
* Modular
13-
14-
This repo is meant to be used by **YOU** to begin your Neovim journey; remove the things you don't use and add what you miss.
15-
16-
Kickstart.nvim targets *only* the latest ['stable'](https://github.com/neovim/neovim/releases/tag/stable) and latest ['nightly'](https://github.com/neovim/neovim/releases/tag/nightly) of Neovim. If you are experiencing issues, please make sure you have the latest versions.
17-
18-
Distribution Alternatives:
19-
- [LazyVim](https://www.lazyvim.org/): A delightful distribution maintained by @folke (the author of lazy.nvim, the package manager used here)
20-
21-
### Installation
3+
## Installation
224

235
> **NOTE**
246
> [Backup](#FAQ) your previous configuration (if any exists)
257
268
Requirements:
27-
* Make sure to review the readmes of the plugins if you are experiencing errors. In particular:
9+
* Make sure to review the README of the plugins if you are experiencing errors. In particular:
2810
* [ripgrep](https://github.com/BurntSushi/ripgrep#installation) is required for multiple [telescope](https://github.com/nvim-telescope/telescope.nvim#suggested-dependencies) pickers.
2911
* See [Windows Installation](#Windows-Installation) if you have trouble with `telescope-fzf-native`
3012

@@ -41,17 +23,17 @@ Clone kickstart.nvim:
4123

4224
- on Linux and Mac
4325
```sh
44-
git clone https://github.com/nvim-lua/kickstart.nvim.git "${XDG_CONFIG_HOME:-$HOME/.config}"/nvim
26+
git clone git@github.com:papabryce/nvim-config.git "${XDG_CONFIG_HOME:-$HOME/.config}"/nvim
4527
```
4628

4729
- on Windows (cmd)
4830
```
49-
git clone https://github.com/nvim-lua/kickstart.nvim.git %userprofile%\AppData\Local\nvim\
31+
git clone git@github.com:papabryce/nvim-config.git %userprofile%\AppData\Local\nvim\
5032
```
5133

5234
- on Windows (powershell)
5335
```
54-
git clone https://github.com/nvim-lua/kickstart.nvim.git $env:USERPROFILE\AppData\Local\nvim\
36+
git clone git@github.com:papabryce/nvim-config.git $env:USERPROFILE\AppData\Local\nvim\
5537
```
5638

5739

@@ -70,113 +52,6 @@ If you would prefer to hide this step and run the plugin sync from the command l
7052
```sh
7153
nvim --headless "+Lazy! sync" +qa
7254
```
73-
74-
### Recommended Steps
75-
76-
[Fork](https://docs.github.com/en/get-started/quickstart/fork-a-repo) this repo (so that you have your own copy that you can modify) and then installing you can install to your machine using the methods above.
77-
78-
> **NOTE**
79-
> Your fork's url will be something like this: `https://github.com/<your_github_username>/kickstart.nvim.git`
80-
81-
### Configuration And Extension
82-
83-
* Inside of your copy, feel free to modify any file you like! It's your copy!
84-
* Feel free to change any of the default options in `init.lua` to better suit your needs.
85-
* For adding plugins, there are 3 primary options:
86-
* Add new configuration in `lua/custom/plugins/*` files, which will be auto sourced using `lazy.nvim` (uncomment the line importing the `custom/plugins` directory in the `init.lua` file to enable this)
87-
* Modify `init.lua` with additional plugins.
88-
* Include the `lua/kickstart/plugins/*` files in your configuration.
89-
90-
You can also merge updates/changes from the repo back into your fork, to keep up-to-date with any changes for the default configuration.
91-
92-
#### Example: Adding an autopairs plugin
93-
94-
In the file: `lua/custom/plugins/autopairs.lua`, add:
95-
96-
```lua
97-
-- File: lua/custom/plugins/autopairs.lua
98-
99-
return {
100-
"windwp/nvim-autopairs",
101-
-- Optional dependency
102-
dependencies = { 'hrsh7th/nvim-cmp' },
103-
config = function()
104-
require("nvim-autopairs").setup {}
105-
-- If you want to automatically add `(` after selecting a function or method
106-
local cmp_autopairs = require('nvim-autopairs.completion.cmp')
107-
local cmp = require('cmp')
108-
cmp.event:on(
109-
'confirm_done',
110-
cmp_autopairs.on_confirm_done()
111-
)
112-
end,
113-
}
114-
```
115-
116-
117-
This will automatically install [windwp/nvim-autopairs](https://github.com/windwp/nvim-autopairs) and enable it on startup. For more information, see documentation for [lazy.nvim](https://github.com/folke/lazy.nvim).
118-
119-
#### Example: Adding a file tree plugin
120-
121-
In the file: `lua/custom/plugins/filetree.lua`, add:
122-
123-
```lua
124-
-- Unless you are still migrating, remove the deprecated commands from v1.x
125-
vim.cmd([[ let g:neo_tree_remove_legacy_commands = 1 ]])
126-
127-
return {
128-
"nvim-neo-tree/neo-tree.nvim",
129-
version = "*",
130-
dependencies = {
131-
"nvim-lua/plenary.nvim",
132-
"nvim-tree/nvim-web-devicons", -- not strictly required, but recommended
133-
"MunifTanjim/nui.nvim",
134-
},
135-
config = function ()
136-
require('neo-tree').setup {}
137-
end,
138-
}
139-
```
140-
141-
This will install the tree plugin and add the command `:Neotree` for you. You can explore the documentation at [neo-tree.nvim](https://github.com/nvim-neo-tree/neo-tree.nvim) for more information.
142-
143-
### Contribution
144-
145-
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:
146-
147-
* Custom language server configuration (null-ls templates)
148-
* Theming beyond a default colorscheme necessary for LSP highlight groups
149-
150-
Each PR, especially those which increase the line count, should have a description as to why the PR is necessary.
151-
152-
### FAQ
153-
154-
* What should I do if I already have a pre-existing neovim configuration?
155-
* You should back it up, then delete all files associated with it.
156-
* This includes your existing init.lua and the neovim files in `~/.local` which can be deleted with `rm -rf ~/.local/share/nvim/`
157-
* You may also want to look at the [migration guide for lazy.nvim](https://github.com/folke/lazy.nvim#-migration-guide)
158-
* Can I keep my existing configuration in parallel to kickstart?
159-
* Yes! You can use [NVIM_APPNAME](https://neovim.io/doc/user/starting.html#%24NVIM_APPNAME)`=nvim-NAME` to maintain multiple configurations. For example you can install the kickstart configuration in `~/.config/nvim-kickstart` and create an alias:
160-
```
161-
alias nvim-kickstart='NVIM_APPNAME="nvim-kickstart" nvim'
162-
```
163-
When you run Neovim using `nvim-kickstart` alias it will use the alternative config directory and the matching local directory `~/.local/share/nvim-kickstart`. You can apply this approach to any Neovim distribution that you would like to try out.
164-
* What if I want to "uninstall" this configuration:
165-
* See [lazy.nvim uninstall](https://github.com/folke/lazy.nvim#-uninstalling) information
166-
* Are there any cool videos about this plugin?
167-
* Current iteration of kickstart (coming soon)
168-
* Here is one about the previous iteration of kickstart: [video introduction to Kickstart.nvim](https://youtu.be/stqUbv-5u2s). Note the install via init.lua no longer works as specified. Please follow the install instructions in this file instead as they're up to date.
169-
* Why is the kickstart `init.lua` a single file? Wouldn't it make sense to split it into multiple files?
170-
* The main purpose of kickstart is to serve as a teaching tool and a reference
171-
configuration that someone can easily `git clone` as a basis for their own.
172-
As you progress in learning Neovim and Lua, you might consider splitting `init.lua`
173-
into smaller parts. A fork of kickstart that does this while maintaining the exact
174-
same functionality is available here:
175-
* [kickstart-modular.nvim](https://github.com/dam9000/kickstart-modular.nvim)
176-
* Discussions on this topic can be found here:
177-
* [Restructure the configuration](https://github.com/nvim-lua/kickstart.nvim/issues/218)
178-
* [Reorganize init.lua into a multi-file setup](https://github.com/nvim-lua/kickstart.nvim/pull/473)
179-
18055
### Windows Installation
18156

18257
Installation may require installing build tools, and updating the run command for `telescope-fzf-native`

0 commit comments

Comments
 (0)