Skip to content

Commit 87037e1

Browse files
committed
Merge remote-tracking branch 'upstream/master'
2 parents 0bd5e95 + 4120893 commit 87037e1

File tree

8 files changed

+957
-138
lines changed

8 files changed

+957
-138
lines changed

README.md

Lines changed: 74 additions & 77 deletions
Original file line numberDiff line numberDiff line change
@@ -46,12 +46,12 @@ git clone https://github.com/nvim-lua/kickstart.nvim.git "${XDG_CONFIG_HOME:-$HO
4646

4747
- on Windows (cmd)
4848
```
49-
git clone https://github.com/nvim-lua/kickstart.nvim.git %userprofile%\AppData\Local\nvim\
49+
git clone https://github.com/nvim-lua/kickstart.nvim.git "%localappdata%\nvim"
5050
```
5151

5252
- on Windows (powershell)
5353
```
54-
git clone https://github.com/nvim-lua/kickstart.nvim.git $env:USERPROFILE\AppData\Local\nvim\
54+
git clone https://github.com/nvim-lua/kickstart.nvim.git "${env:LOCALAPPDATA}\nvim"
5555
```
5656

5757

@@ -65,87 +65,16 @@ nvim
6565

6666
The `Lazy` plugin manager will start automatically on the first run and install the configured plugins - as can be seen in the introduction video. After the installation is complete you can press `q` to close the `Lazy` UI and **you are ready to go**! Next time you run nvim `Lazy` will no longer show up.
6767

68-
If you would prefer to hide this step and run the plugin sync from the command line, you can use:
68+
Read through the `init.lua` file in your configuration folder for more
69+
information about extending and exploring Neovim. That also includes
70+
examples of adding popularly requested plugins.
6971

7072
```sh
7173
nvim --headless "+Lazy! sync" +qa
7274
```
7375

7476
### Getting Started
7577

76-
See [Effective Neovim: Instant IDE](https://youtu.be/stqUbv-5u2s), covering the previous version. Note: The install via init.lua is outdated, please follow the install instructions in this file instead. An updated video is coming soon.
77-
78-
### Recommended Steps
79-
80-
[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.
81-
82-
> **NOTE**
83-
> Your fork's url will be something like this: `https://github.com/<your_github_username>/kickstart.nvim.git`
84-
85-
### Configuration And Extension
86-
87-
* Inside of your copy, feel free to modify any file you like! It's your copy!
88-
* Feel free to change any of the default options in `init.lua` to better suit your needs.
89-
* For adding plugins, there are 3 primary options:
90-
* 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)
91-
* Modify `init.lua` with additional plugins.
92-
* Include the `lua/kickstart/plugins/*` files in your configuration.
93-
94-
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.
95-
96-
#### Example: Adding an autopairs plugin
97-
98-
In the file: `lua/custom/plugins/autopairs.lua`, add:
99-
100-
```lua
101-
-- File: lua/custom/plugins/autopairs.lua
102-
103-
return {
104-
"windwp/nvim-autopairs",
105-
-- Optional dependency
106-
dependencies = { 'hrsh7th/nvim-cmp' },
107-
config = function()
108-
require("nvim-autopairs").setup {}
109-
-- If you want to automatically add `(` after selecting a function or method
110-
local cmp_autopairs = require('nvim-autopairs.completion.cmp')
111-
local cmp = require('cmp')
112-
cmp.event:on(
113-
'confirm_done',
114-
cmp_autopairs.on_confirm_done()
115-
)
116-
end,
117-
}
118-
```
119-
120-
121-
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).
122-
123-
#### Example: Adding a file tree plugin
124-
125-
In the file: `lua/custom/plugins/filetree.lua`, add:
126-
127-
```lua
128-
-- Unless you are still migrating, remove the deprecated commands from v1.x
129-
vim.cmd([[ let g:neo_tree_remove_legacy_commands = 1 ]])
130-
131-
return {
132-
"nvim-neo-tree/neo-tree.nvim",
133-
version = "*",
134-
dependencies = {
135-
"nvim-lua/plenary.nvim",
136-
"nvim-tree/nvim-web-devicons", -- not strictly required, but recommended
137-
"MunifTanjim/nui.nvim",
138-
},
139-
config = function ()
140-
require('neo-tree').setup {}
141-
end,
142-
}
143-
```
144-
145-
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.
146-
147-
### Contribution
148-
14978
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:
15079

15180
* Custom language server configuration (null-ls templates)
@@ -166,7 +95,7 @@ Each PR, especially those which increase the line count, should have a descripti
16695
```
16796
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.
16897
* What if I want to "uninstall" this configuration:
169-
* See [lazy.nvim uninstall](https://github.com/folke/lazy.nvim#-uninstalling) information
98+
* See [lazy.nvim uninstall](https://lazy.folke.io/usage#-uninstalling) information
17099
* Why is the kickstart `init.lua` a single file? Wouldn't it make sense to split it into multiple files?
171100
* The main purpose of kickstart is to serve as a teaching tool and a reference
172101
configuration that someone can easily `git clone` as a basis for their own.
@@ -191,4 +120,72 @@ This requires:
191120
```lua
192121
{'nvim-telescope/telescope-fzf-native.nvim', build = 'cmake -S. -Bbuild -DCMAKE_BUILD_TYPE=Release && cmake --build build --config Release && cmake --install build --prefix build' }
193122
```
123+
</details>
124+
<details><summary>Windows with gcc/make using chocolatey</summary>
125+
Alternatively, one can install gcc and make which don't require changing the config,
126+
the easiest way is to use choco:
127+
128+
1. install [chocolatey](https://chocolatey.org/install)
129+
either follow the instructions on the page or use winget,
130+
run in cmd as **admin**:
131+
```
132+
winget install --accept-source-agreements chocolatey.chocolatey
133+
```
134+
135+
2. install all requirements using choco, exit previous cmd and
136+
open a new one so that choco path is set, and run in cmd as **admin**:
137+
```
138+
choco install -y neovim git ripgrep wget fd unzip gzip mingw make
139+
```
140+
</details>
141+
<details><summary>WSL (Windows Subsystem for Linux)</summary>
142+
143+
```
144+
wsl --install
145+
wsl
146+
sudo add-apt-repository ppa:neovim-ppa/unstable -y
147+
sudo apt update
148+
sudo apt install make gcc ripgrep unzip git xclip neovim
149+
```
150+
</details>
151+
152+
#### Linux Install
153+
<details><summary>Ubuntu Install Steps</summary>
154+
155+
```
156+
sudo add-apt-repository ppa:neovim-ppa/unstable -y
157+
sudo apt update
158+
sudo apt install make gcc ripgrep unzip git xclip neovim
159+
```
160+
</details>
161+
<details><summary>Debian Install Steps</summary>
162+
163+
```
164+
sudo apt update
165+
sudo apt install make gcc ripgrep unzip git xclip curl
166+
167+
# Now we install nvim
168+
curl -LO https://github.com/neovim/neovim/releases/latest/download/nvim-linux64.tar.gz
169+
sudo rm -rf /opt/nvim-linux64
170+
sudo mkdir -p /opt/nvim-linux64
171+
sudo chmod a+rX /opt/nvim-linux64
172+
sudo tar -C /opt -xzf nvim-linux64.tar.gz
173+
174+
# make it available in /usr/local/bin, distro installs to /usr/bin
175+
sudo ln -sf /opt/nvim-linux64/bin/nvim /usr/local/bin/
176+
```
177+
</details>
178+
<details><summary>Fedora Install Steps</summary>
179+
180+
```
181+
sudo dnf install -y gcc make git ripgrep fd-find unzip neovim
182+
```
183+
</details>
184+
185+
<details><summary>Arch Install Steps</summary>
186+
187+
```
188+
sudo pacman -S --noconfirm --needed gcc make git ripgrep fd unzip neovim
189+
```
190+
</details>
194191

0 commit comments

Comments
 (0)