Skip to content

Commit 0358712

Browse files
Initial commit
0 parents  commit 0358712

23 files changed

+644
-0
lines changed

.editorconfig

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
root = true
2+
3+
[*]
4+
indent_style = space
5+
indent_size = 2
6+
end_of_line = lf
7+
charset = utf-8
8+
trim_trailing_whitespace = true
9+
insert_final_newline = true
10+
max_line_length = 120
11+
12+
[*.md]
13+
trim_trailing_whitespace = false
14+
15+
[Makefile]
16+
indent_style = tab
17+
indent_size = 4
18+
19+
[*.{yaml,yml,json,jsonc}]
20+
indent_size = 2

.gitattributes

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
* text=auto eol=lf

.github/FUNDING.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
# These are supported funding model platforms
2+
3+
github: AlejandroSuero
Lines changed: 131 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,131 @@
1+
name: Bug Report
2+
description: Report a problem with your_plugin.nvim
3+
title: "[Bug]: "
4+
labels:
5+
- bug
6+
7+
body:
8+
- type: markdown
9+
attributes:
10+
value: |
11+
# Before reporting
12+
13+
- Confirm that the problem is reproducible.
14+
- Try using the [minimal reproduction template](https://github.com/your_github_user/your_plugin.nvim/blob/main/contrib/minimal.lua).
15+
16+
- type: checkboxes
17+
id: pre-requisites
18+
attributes:
19+
label: Pre-requisites
20+
description: |
21+
Make sure to check to see if you are following this requisites.
22+
options:
23+
- label: The issue is reproducible
24+
required: true
25+
- label: The aren't other issues similar to this problem.
26+
required: true
27+
- label: The aren't PRs tackling this problem.
28+
required: true
29+
30+
- type: markdown
31+
attributes:
32+
value: |
33+
## Issue report
34+
35+
- type: textarea
36+
id: nvim-version
37+
attributes:
38+
label: NeoVim version
39+
description: Paste here your NeoVim version, `nvim --version`.
40+
placeholder: |
41+
NVIM v0.10.0
42+
Build type: RelWithDebInfo
43+
LuaJIT 2.1.1713484068
44+
validations:
45+
required: true
46+
47+
- type: dropdown
48+
id: operative-system
49+
attributes:
50+
label: Operative system
51+
description: OS in which the issue occurs
52+
multiple: true
53+
options:
54+
- Windows
55+
- MacOS
56+
- Linux
57+
- Android
58+
- All systems
59+
validations:
60+
required: true
61+
62+
- type: textarea
63+
id: os-version
64+
attributes:
65+
label: OS version
66+
description: OS version in which the issue occurs
67+
placeholder: |
68+
MacOS 14.4.1
69+
Windows 11
70+
Ubuntu 22.04
71+
...
72+
validations:
73+
required: true
74+
75+
- type: textarea
76+
id: issue-behaviour
77+
attributes:
78+
label: Behaviour
79+
description: |
80+
Describe the current behaviour. May include logs, images, videos ...
81+
validations:
82+
required: true
83+
84+
- type: textarea
85+
id: repro-steps
86+
attributes:
87+
label: Steps to reproduce
88+
description: List the steps to reproduce the behaviour mentioned above.
89+
placeholder: |
90+
1. `nvim --clean -u minimal.lua`
91+
2. Go to ...
92+
3. Use ...
93+
...
94+
validations:
95+
required: true
96+
97+
- type: textarea
98+
id: minimal-config
99+
attributes:
100+
label: Minimal config
101+
description: Minimal configuration to reproduce this behaviour.
102+
render: lua
103+
value: |
104+
vim.cmd([[set runtimepath=$VIMRUNTIME]])
105+
vim.cmd([[set packpath=/tmp/nvim/]])
106+
107+
local lazypath = "/tmp/nvim/lazy/lazy.nvim"
108+
if not vim.loop.fs_stat(lazypath) then
109+
vim.fn.system({
110+
"git",
111+
"clone",
112+
"--filter=blob:none",
113+
"https://github.com/folke/lazy.nvim.git",
114+
"--branch=stable", -- latest stable release
115+
lazypath,
116+
})
117+
end
118+
vim.opt.rtp:prepend(lazypath)
119+
120+
require("lazy").setup({
121+
{
122+
"your_github_user/your_plugin.nvim",
123+
config = function()
124+
require("your_plugin").setup()
125+
end,
126+
lazy = false,
127+
enabled = true,
128+
},
129+
})
130+
validations:
131+
required: true
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
---
2+
name: Feature request
3+
about: Suggest an idea for this project
4+
title: "[Feat]: "
5+
labels: enhancement
6+
assignees: ""
7+
---
8+
9+
## Is your feature request related to a problem? Please describe
10+
11+
A clear and concise description of what the problem is. Ex. I'm always frustrated
12+
when [...]
13+
14+
## Describe the solution you'd like
15+
16+
A clear and concise description of what you want to happen.
17+
18+
## Describe alternatives you've considered
19+
20+
A clear and concise description of any alternative solutions or features you've considered.
21+
22+
## Additional context
23+
24+
Add any other context or screenshots about the feature request here.

.github/PULL_REQUEST_TEMPLATE.md

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
# Description
2+
3+
Please include a summary of the change and which issue is fixed. Please also
4+
include relevant motivation and context
5+
6+
Fixes # (issue)
7+
8+
## Type of change
9+
10+
Please delete options that are not relevant.
11+
12+
- Bug fix (non-breaking change which fixes an issue)
13+
- New feature (non-breaking change which adds functionality)
14+
- Breaking change (fix or feature that would cause existing functionality to not
15+
work as expected)
16+
- This change requires a documentation update
17+
18+
## How Has This Been Tested?
19+
20+
Please describe the tests that you ran to verify your changes. Provide
21+
instructions so we can reproduce. Please also list relevant details about your configuration
22+
23+
- [ ] Test A
24+
- [ ] Test B
25+
26+
**Configuration**:
27+
28+
- Neovim version (`nvim --version`):
29+
- Operating system and version:
30+
31+
## Checklist
32+
33+
- [ ] My code follows the style guidelines of this project (stylua, selene, codespell).
34+
- [ ] I have performed a self-review of my own code.
35+
- [ ] I have commented my code, particularly in hard-to-understand areas.
36+
- [ ] I have made corresponding changes to the documentation if necessary.

.github/workflows/codespell.yml

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
name: codespell
2+
3+
on: [pull_request]
4+
5+
jobs:
6+
codespell:
7+
runs-on: ubuntu-latest
8+
steps:
9+
- uses: actions/checkout@v4
10+
- name: Install codespell
11+
run: pip install codespell
12+
- name: Use codespell
13+
run: make spell

.github/workflows/lint.yml

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
name: lint
2+
3+
on:
4+
pull_request:
5+
branches:
6+
- main
7+
paths:
8+
- "lua/**"
9+
- "tests/**"
10+
11+
jobs:
12+
lint:
13+
runs-on: ubuntu-latest
14+
steps:
15+
- name: Checkout sources
16+
uses: actions/checkout@v4
17+
18+
- name: Run selene
19+
uses: AlejandroSuero/[email protected]
20+
with:
21+
token: ${{ secrets.GITHUB_TOKEN }}
22+
args: --display-style quiet lua/**/*.lua
23+
24+
style-lint:
25+
runs-on: ubuntu-latest
26+
steps:
27+
- name: Checkout sources
28+
uses: actions/checkout@v4
29+
30+
- name: Lint with stylua
31+
uses: JohnnyMorganz/stylua-action@v4
32+
with:
33+
token: ${{ secrets.GITHUB_TOKEN }}
34+
version: latest
35+
args: --check .
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
name: Tag PRs with merge conflicts
2+
3+
on:
4+
# So that PRs touching the same files as the push are updated
5+
push:
6+
# So that the `dirtyLabel` is removed if conflicts are resolve
7+
# We recommend `pull_request_target` so that github secrets are available.
8+
# In `pull_request` we wouldn't be able to change labels of fork PRs
9+
pull_request_target:
10+
types: [synchronize]
11+
12+
jobs:
13+
main:
14+
runs-on: ubuntu-latest
15+
steps:
16+
- name: check if prs are dirty
17+
uses: eps1lon/actions-label-merge-conflict@releases/2.x
18+
with:
19+
dirtyLabel: conflicts
20+
removeOnDirtyLabel: conflicts
21+
repoToken: "${{ secrets.GITHUB_TOKEN }}"
22+
commentOnDirty: "⚠️ This PR has conflicts. Please, solve them."
23+
commentOnClean: "✅ The conflict have been solved! Ready to review."

.github/workflows/test.yml

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
name: test
2+
3+
on:
4+
pull_request:
5+
branches:
6+
- main
7+
paths:
8+
- "lua/**"
9+
- "tests/**"
10+
11+
jobs:
12+
run_tests:
13+
name: unit tests
14+
runs-on: ubuntu-latest
15+
strategy:
16+
fail-fast: false
17+
matrix:
18+
rev: [nightly, v0.9.0, stable]
19+
20+
steps:
21+
- uses: actions/checkout@v4
22+
- uses: rhysd/action-setup-vim@v1
23+
name: Set up Neovim
24+
with:
25+
neovim: true
26+
version: ${{ matrix.rev }}
27+
28+
- name: Run tests with Neovim
29+
shell: bash
30+
run: |
31+
export PATH="${PWD}/_neovim/bin:${PATH}"
32+
export VIM="${PWD}/_neovim/share/nvim/runtime"
33+
nvim --version
34+
make test

0 commit comments

Comments
 (0)