Skip to content

Commit c041ad0

Browse files
authored
Merge branch 'master' into master
2 parents 2d62fef + 0619d89 commit c041ad0

14 files changed

Lines changed: 619 additions & 537 deletions

File tree

.github/ISSUE_TEMPLATE/bug_report.md

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,13 @@ assignees: ''
99

1010
<!-- Any bug report not following this template will be immediately closed. Thanks -->
1111

12+
## Before Reporting an Issue
13+
- I have read the kickstart.nvim README.md.
14+
- I have read the appropriate plugin's documentation.
15+
- I have searched that this issue has not been reported before.
16+
17+
- [ ] **By checking this, I confirm that the above steps are completed. I understand leaving this unchecked will result in this report being closed immediately.**
18+
1219
## Describe the bug
1320
<!-- A clear and concise description of what the bug is. -->
1421

@@ -18,8 +25,8 @@ assignees: ''
1825

1926
## Desktop
2027
<!-- please complete the following information. -->
21-
- OS:
22-
- Terminal:
28+
- OS:
29+
- Terminal:
2330

2431
## Neovim Version
2532
<!-- Output of running `:version` from inside of neovim. -->

.github/workflows/stylua.yml

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,13 +9,12 @@ jobs:
99
runs-on: ubuntu-latest
1010
steps:
1111
- name: Checkout Code
12-
uses: actions/checkout@v2
12+
uses: actions/checkout@v6
1313
with:
1414
ref: ${{ github.event.pull_request.head.sha }}
1515
- name: Stylua Check
16-
uses: JohnnyMorganz/stylua-action@v3
16+
uses: JohnnyMorganz/stylua-action@v4
1717
with:
1818
token: ${{ secrets.GITHUB_TOKEN }}
1919
version: latest
2020
args: --check .
21-

.gitignore

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,5 +4,12 @@ test.sh
44
nvim
55

66
spell/
7+
8+
# In your personal fork, you likely want to comment this, since it's recommended to track
9+
# lazy-lock.json in version control - see https://lazy.folke.io/usage/lockfile
10+
# For the official `nvim-lua/kickstart.nvim` git repository, we leave it ignored to avoid unneeded
11+
# merge conflicts.
712
lazy-lock.json
813
.undo
14+
15+
.DS_Store

.stylua.toml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,3 +4,4 @@ indent_type = "Spaces"
44
indent_width = 2
55
quote_style = "AutoPreferSingle"
66
call_parentheses = "None"
7+
collapse_simple_statement = "Always"

README.md

Lines changed: 117 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -17,28 +17,38 @@ A starting point for Neovim that is:
1717
Kickstart.nvim targets *only* the latest
1818
['stable'](https://github.com/neovim/neovim/releases/tag/stable) and latest
1919
['nightly'](https://github.com/neovim/neovim/releases/tag/nightly) of Neovim.
20-
If you are experiencing issues, please make sure you have the latest versions.
20+
If you are experiencing issues, please make sure you have at least the latest
21+
stable version. Most likely, you want to install neovim via a [package
22+
manager](https://github.com/neovim/neovim/blob/master/INSTALL.md#install-from-package).
23+
To check your neovim version, run `nvim --version` and make sure it is not
24+
below the latest
25+
['stable'](https://github.com/neovim/neovim/releases/tag/stable) version. If
26+
your chosen install method only gives you an outdated version of neovim, find
27+
alternative [installation methods below](#alternative-neovim-installation-methods).
2128

2229
### Install External Dependencies
2330

2431
External Requirements:
2532
- Basic utils: `git`, `make`, `unzip`, C Compiler (`gcc`)
26-
- [ripgrep](https://github.com/BurntSushi/ripgrep#installation)
27-
- Clipboard tool (xclip/xsel/win32yank or other depending on platform)
33+
- [ripgrep](https://github.com/BurntSushi/ripgrep#installation),
34+
[fd-find](https://github.com/sharkdp/fd#installation)
35+
- [tree-sitter CLI](https://github.com/tree-sitter/tree-sitter/blob/master/crates/cli/README.md#installation)
36+
- Clipboard tool (xclip/xsel/win32yank or other depending on the platform)
2837
- A [Nerd Font](https://www.nerdfonts.com/): optional, provides various icons
2938
- if you have it set `vim.g.have_nerd_font` in `init.lua` to true
39+
- Emoji fonts (Ubuntu only, and only if you want emoji!) `sudo apt install fonts-noto-color-emoji`
3040
- Language Setup:
3141
- If you want to write Typescript, you need `npm`
3242
- If you want to write Golang, you will need `go`
3343
- etc.
3444

35-
> **NOTE**
45+
> [!NOTE]
3646
> See [Install Recipes](#Install-Recipes) for additional Windows and Linux specific notes
3747
> and quick install snippets
3848
3949
### Install Kickstart
4050

41-
> **NOTE**
51+
> [!NOTE]
4252
> [Backup](#FAQ) your previous configuration (if any exists)
4353
4454
Neovim's configurations are located under the following paths, depending on your OS:
@@ -55,16 +65,17 @@ Neovim's configurations are located under the following paths, depending on your
5565
so that you have your own copy that you can modify, then install by cloning the
5666
fork to your machine using one of the commands below, depending on your OS.
5767

58-
> **NOTE**
59-
> Your fork's url will be something like this:
68+
> [!NOTE]
69+
> Your fork's URL will be something like this:
6070
> `https://github.com/<your_github_username>/kickstart.nvim.git`
6171
6272
You likely want to remove `lazy-lock.json` from your fork's `.gitignore` file
6373
too - it's ignored in the kickstart repo to make maintenance easier, but it's
64-
[recommmended to track it in version control](https://lazy.folke.io/usage/lockfile).
74+
[recommended to track it in version control](https://lazy.folke.io/usage/lockfile).
6575

6676
#### Clone kickstart.nvim
67-
> **NOTE**
77+
78+
> [!NOTE]
6879
> If following the recommended step above (i.e., forking the repo), replace
6980
> `nvim-lua` with `<your_github_username>` in the commands below
7081
@@ -101,22 +112,27 @@ nvim
101112
```
102113

103114
That's it! Lazy will install all the plugins you have. Use `:Lazy` to view
104-
current plugin status. Hit `q` to close the window.
115+
the current plugin status. Hit `q` to close the window.
116+
117+
#### Read The Friendly Documentation
105118

106119
Read through the `init.lua` file in your configuration folder for more
107120
information about extending and exploring Neovim. That also includes
108121
examples of adding popularly requested plugins.
109122

123+
> [!NOTE]
124+
> For more information about a particular plugin check its repository's documentation.
125+
110126

111127
### Getting Started
112128

113129
[The Only Video You Need to Get Started with Neovim](https://youtu.be/m8C0Cq9Uv9o)
114130

115131
### FAQ
116132

117-
* What should I do if I already have a pre-existing neovim configuration?
133+
* What should I do if I already have a pre-existing Neovim configuration?
118134
* You should back it up and then delete all associated files.
119-
* This includes your existing init.lua and the neovim files in `~/.local`
135+
* This includes your existing init.lua and the Neovim files in `~/.local`
120136
which can be deleted with `rm -rf ~/.local/share/nvim/`
121137
* Can I keep my existing configuration in parallel to kickstart?
122138
* Yes! You can use [NVIM_APPNAME](https://neovim.io/doc/user/starting.html#%24NVIM_APPNAME)`=nvim-NAME`
@@ -135,7 +151,7 @@ examples of adding popularly requested plugins.
135151
* The main purpose of kickstart is to serve as a teaching tool and a reference
136152
configuration that someone can easily use to `git clone` as a basis for their own.
137153
As you progress in learning Neovim and Lua, you might consider splitting `init.lua`
138-
into smaller parts. A fork of kickstart that does this while maintaining the
154+
into smaller parts. A fork of kickstart that does this while maintaining the
139155
same functionality is available here:
140156
* [kickstart-modular.nvim](https://github.com/dam9000/kickstart-modular.nvim)
141157
* Discussions on this topic can be found here:
@@ -146,7 +162,7 @@ examples of adding popularly requested plugins.
146162
147163
Below you can find OS specific install instructions for Neovim and dependencies.
148164
149-
After installing all the dependencies continue with the [Install Kickstart](#Install-Kickstart) step.
165+
After installing all the dependencies continue with the [Install Kickstart](#install-kickstart) step.
150166
151167
#### Windows Installation
152168
@@ -174,10 +190,10 @@ run in cmd as **admin**:
174190
winget install --accept-source-agreements chocolatey.chocolatey
175191
```
176192

177-
2. install all requirements using choco, exit previous cmd and
193+
2. install all requirements using choco, exit the previous cmd and
178194
open a new one so that choco path is set, and run in cmd as **admin**:
179195
```
180-
choco install -y neovim git ripgrep wget fd unzip gzip mingw make
196+
choco install -y neovim git ripgrep wget fd unzip gzip mingw make tree-sitter
181197
```
182198
</details>
183199
<details><summary>WSL (Windows Subsystem for Linux)</summary>
@@ -187,7 +203,7 @@ wsl --install
187203
wsl
188204
sudo add-apt-repository ppa:neovim-ppa/unstable -y
189205
sudo apt update
190-
sudo apt install make gcc ripgrep unzip git xclip neovim
206+
sudo apt install make gcc ripgrep fd-find tree-sitter-cli unzip git xclip neovim
191207
```
192208
</details>
193209

@@ -197,37 +213,111 @@ sudo apt install make gcc ripgrep unzip git xclip neovim
197213
```
198214
sudo add-apt-repository ppa:neovim-ppa/unstable -y
199215
sudo apt update
200-
sudo apt install make gcc ripgrep unzip git xclip neovim
216+
sudo apt install make gcc ripgrep fd-find tree-sitter-cli unzip git xclip neovim
201217
```
202218
</details>
203219
<details><summary>Debian Install Steps</summary>
204220

205221
```
206222
sudo apt update
207-
sudo apt install make gcc ripgrep unzip git xclip curl
223+
sudo apt install make gcc ripgrep fd-find tree-sitter-cli unzip git xclip curl
208224
209225
# Now we install nvim
210-
curl -LO https://github.com/neovim/neovim/releases/latest/download/nvim-linux64.tar.gz
211-
sudo rm -rf /opt/nvim-linux64
212-
sudo mkdir -p /opt/nvim-linux64
213-
sudo chmod a+rX /opt/nvim-linux64
214-
sudo tar -C /opt -xzf nvim-linux64.tar.gz
226+
curl -LO https://github.com/neovim/neovim/releases/latest/download/nvim-linux-x86_64.tar.gz
227+
sudo rm -rf /opt/nvim-linux-x86_64
228+
sudo mkdir -p /opt/nvim-linux-x86_64
229+
sudo chmod a+rX /opt/nvim-linux-x86_64
230+
sudo tar -C /opt -xzf nvim-linux-x86_64.tar.gz
215231
216232
# make it available in /usr/local/bin, distro installs to /usr/bin
217-
sudo ln -sf /opt/nvim-linux64/bin/nvim /usr/local/bin/
233+
sudo ln -sf /opt/nvim-linux-x86_64/bin/nvim /usr/local/bin/
218234
```
219235
</details>
220236
<details><summary>Fedora Install Steps</summary>
221237

222238
```
223-
sudo dnf install -y gcc make git ripgrep fd-find unzip neovim
239+
sudo dnf install -y gcc make git ripgrep fd-find tree-sitter-cli unzip neovim
224240
```
225241
</details>
226242

227243
<details><summary>Arch Install Steps</summary>
228244

229245
```
230-
sudo pacman -S --noconfirm --needed gcc make git ripgrep fd unzip neovim
246+
sudo pacman -S --noconfirm --needed gcc make git ripgrep fd tree-sitter-cli unzip neovim
247+
```
248+
</details>
249+
250+
### Alternative neovim installation methods
251+
252+
For some systems it is not unexpected that the [package manager installation
253+
method](https://github.com/neovim/neovim/blob/master/INSTALL.md#install-from-package)
254+
recommended by neovim is significantly behind. If that is the case for you,
255+
pick one of the following methods that are known to deliver fresh neovim versions very quickly.
256+
They have been picked for their popularity and because they make installing and updating
257+
neovim to the latest versions easy. You can also find more detail about the
258+
available methods being discussed
259+
[here](https://github.com/nvim-lua/kickstart.nvim/issues/1583).
260+
261+
262+
<details><summary>Bob</summary>
263+
264+
[Bob](https://github.com/MordechaiHadad/bob) is a Neovim version manager for
265+
all platforms. Simply install
266+
[rustup](https://rust-lang.github.io/rustup/installation/other.html),
267+
and run the following commands:
268+
269+
```bash
270+
rustup default stable
271+
rustup update stable
272+
cargo install bob-nvim
273+
bob use stable
231274
```
275+
232276
</details>
233277

278+
<details><summary>Homebrew</summary>
279+
280+
[Homebrew](https://brew.sh) is a package manager popular on Mac and Linux.
281+
Simply install using [`brew install`](https://formulae.brew.sh/formula/neovim).
282+
283+
</details>
284+
285+
<details><summary>Flatpak</summary>
286+
287+
Flatpak is a package manager for applications that allows developers to package their applications
288+
just once to make it available on all Linux systems. Simply [install flatpak](https://flatpak.org/setup/)
289+
and setup [flathub](https://flathub.org/setup) to [install neovim](https://flathub.org/apps/io.neovim.nvim).
290+
291+
</details>
292+
293+
<details><summary>asdf and mise-en-place</summary>
294+
295+
[asdf](https://asdf-vm.com/) and [mise](https://mise.jdx.dev/) are tool version managers,
296+
mostly aimed towards project-specific tool versioning. However both support managing tools
297+
globally in the user-space as well:
298+
299+
<details><summary>mise</summary>
300+
301+
[Install mise](https://mise.jdx.dev/getting-started.html), then run:
302+
303+
```bash
304+
mise plugins install neovim
305+
mise use neovim@stable
306+
```
307+
308+
</details>
309+
310+
<details><summary>asdf</summary>
311+
312+
[Install asdf](https://asdf-vm.com/guide/getting-started.html), then run:
313+
314+
```bash
315+
asdf plugin add neovim
316+
asdf install neovim stable
317+
asdf set neovim stable --home
318+
asdf reshim neovim
319+
```
320+
321+
</details>
322+
323+
</details>

0 commit comments

Comments
 (0)