Compare commits
515 Commits
Author | SHA1 | Date | |
---|---|---|---|
0daa957b3c | |||
b8bdebe5be | |||
4ac249beaa | |||
d2483f19ce | |||
87ef93e8a0 | |||
b5290fd929 | |||
d6561fd27c | |||
b1a47405b9 | |||
c1b76ee235 | |||
d263cf5dd1 | |||
fd2db9e5ee | |||
8d9f2ad97e | |||
66bba787b8 | |||
865bf15f1c | |||
bab54406dc | |||
60b10deeb0 | |||
150523b77b | |||
1ceac32652 | |||
5339acacec | |||
a1335e59e1 | |||
ab0135093b | |||
dc8a3a139e | |||
9eefc6a3aa | |||
78cf0320bf | |||
706ec4b6b6 | |||
6911327a5e | |||
0f2d01dd01 | |||
448e15862a | |||
8506cb5a98 | |||
e80ed322a7 | |||
29e285d882 | |||
b20be638b3 | |||
d39cdb0596 | |||
45af7e1fed | |||
9bce054faf | |||
b3e746b637 | |||
337e9ddc00 | |||
065d72320d | |||
d01a58ef90 | |||
75ff1496bd | |||
431ceaf329 | |||
1f8469a53c | |||
b4b0234008 | |||
28a7f8126c | |||
406aa9d8b4 | |||
ca37162cb7 | |||
9391ff9fa3 | |||
702471e454 | |||
4a6c0c2850 | |||
db234ef9cb | |||
0e2eaa3fba | |||
8bfd9a50a7 | |||
11268d8ff1 | |||
927031a2de | |||
d6bda24697 | |||
b481b644dd | |||
8a34051177 | |||
67650528e4 | |||
bf9887adac | |||
28805d1a4c | |||
8b2eacb6ac | |||
f3c93701e7 | |||
aa418a2147 | |||
09831414cf | |||
33e1da585d | |||
6202dd1644 | |||
304729b23a | |||
d108169e95 | |||
4035768195 | |||
21470b49d9 | |||
5e1216867b | |||
427b641eb8 | |||
d8958d78b5 | |||
e9857446ce | |||
ab2ff2e436 | |||
3d410407be | |||
5f952bb9d6 | |||
330d2e470b | |||
a915a5d7e1 | |||
bb4d4cbd5c | |||
0471ca14ca | |||
4b0f720457 | |||
502dac1d9a | |||
4192d9578d | |||
d715456401 | |||
6eb8cacd0f | |||
f64bbd29fb | |||
76b41cdec4 | |||
51e99dfba1 | |||
fb59a9feb0 | |||
8f74db318c | |||
d35a3914bf | |||
9c7d3dc75e | |||
045faec035 | |||
1bf8050bc4 | |||
c848cfddef | |||
9acadc7ec2 | |||
d5f3d395f4 | |||
8ddc6f9e16 | |||
455557c1f6 | |||
b9a8a4ad7f | |||
fe3d0da508 | |||
1f603f9074 | |||
cb9cbd3a37 | |||
2114a6610f | |||
78cf6ee024 | |||
d23731c50d | |||
00f53315b5 | |||
2bfcd05c62 | |||
8a6875ab3b | |||
06d2749308 | |||
19a8e5089c | |||
47c0e3bb9b | |||
9a69f27484 | |||
85405d6534 | |||
131187c092 | |||
ee44b21898 | |||
8c900f92e7 | |||
72547b809f | |||
73e72ee21d | |||
b43ace1ecf | |||
501ff40768 | |||
0fede4040b | |||
566753b888 | |||
b292a721bf | |||
f47d105b80 | |||
d6429a5c8a | |||
88f25410e0 | |||
3764735fb2 | |||
683bf52c02 | |||
349508cdf4 | |||
9dd2e0d39a | |||
2865253e6e | |||
35f89fb3a1 | |||
87fe403df6 | |||
44ed11c4f8 | |||
ff1b44e676 | |||
329f9dda80 | |||
e5e8d7a805 | |||
5b44e1040e | |||
e864713163 | |||
5e1c474192 | |||
46e5bdd6f1 | |||
135ce0d7ed | |||
53f4595b4e | |||
c6b29713a0 | |||
c13215814c | |||
938a6718c6 | |||
a33eabddd9 | |||
d87c7702bf | |||
f1c5329dca | |||
fa2fc64031 | |||
faee8ce581 | |||
351336244c | |||
b5945c2fc8 | |||
2a7ba6d09c | |||
8be66bb1a6 | |||
b55c7734df | |||
8ea3f690e6 | |||
abec8fbb03 | |||
002ce62413 | |||
1f423930e0 | |||
52d46166b1 | |||
19e366277b | |||
b45d4ed62c | |||
55464b77c6 | |||
3dfc2c0fd8 | |||
b47c65f408 | |||
b0274a2222 | |||
b22831b7e2 | |||
dde4a9dcdf | |||
7afb7a7220 | |||
d4991d5aac | |||
67eece6d74 | |||
1101c3ed24 | |||
06f13daf72 | |||
07ab681b1d | |||
1a295c5ef8 | |||
8a89c0360e | |||
a621743225 | |||
492fa86faa | |||
bdca1e95ff | |||
d9caee6100 | |||
1f034e1600 | |||
a69e626d7a | |||
9177c3ad5e | |||
ea3b5cc2ab | |||
0fcadced89 | |||
18c7731281 | |||
05e45e0d35 | |||
57ef349910 | |||
e2972f0cca | |||
0d57115f01 | |||
32b2574c1b | |||
31c2ad7dac | |||
2daca4b510 | |||
71390adcbe | |||
cda30f2740 | |||
f24999fd36 | |||
af5a59be90 | |||
b87d18cc17 | |||
eca8692451 | |||
540261d74d | |||
d6bea06a82 | |||
f22a6022c4 | |||
67616b9520 | |||
0422dd278a | |||
f28937b0c5 | |||
bf809ad2a1 | |||
2b703ac125 | |||
e0e1ab01af | |||
6c5be2ea44 | |||
06f5ef928f | |||
e1f587a43d | |||
2d689763e4 | |||
5070694861 | |||
034f57377b | |||
3dbb4bd5f6 | |||
304e7439aa | |||
c9380a309d | |||
239fb90ce2 | |||
eeccbbc407 | |||
6efbdabd1b | |||
25cccb5db8 | |||
7c7703d792 | |||
c424f5d5d8 | |||
427e57ddf7 | |||
7bebc40333 | |||
74c1766479 | |||
48a70aa8f5 | |||
1d50c75a4b | |||
b9f726404f | |||
e948435f17 | |||
8346fa7ddc | |||
425e6e0ea3 | |||
339979d314 | |||
caf8f114d9 | |||
39a908c9fa | |||
d82c11f889 | |||
4b9e4edbb1 | |||
46eb3242d3 | |||
5c876b7549 | |||
14d1ca93d0 | |||
52b572881b | |||
82f680ee6b | |||
60a1c1979d | |||
ec3dba20af | |||
74cf6e4462 | |||
128c3fcfe6 | |||
16971006c2 | |||
3233385ddb | |||
0ba67c87e9 | |||
1c740ce3fd | |||
9f2a3699a8 | |||
a3547e4b3b | |||
7252474624 | |||
7e0ac6850b | |||
056042b221 | |||
79b7c489fd | |||
c6ddb2328d | |||
19a6e2de15 | |||
26e3e39f2e | |||
d541069fdf | |||
bd29f45153 | |||
c4818616d5 | |||
8bb653876c | |||
d1d24fa077 | |||
ba3aec7b48 | |||
638769d320 | |||
9b8a393edc | |||
14d47f650c | |||
3b447a8037 | |||
335487282a | |||
7d30360df2 | |||
9b5d810c05 | |||
fe667b53c9 | |||
21617a9d60 | |||
f5dc867ac2 | |||
6ab404134d | |||
caaa6c440d | |||
43afed1211 | |||
4b7c389f14 | |||
4b1d397627 | |||
9d78a22252 | |||
65060ece67 | |||
d7c7548e09 | |||
1c46f54432 | |||
7793942eba | |||
2848ee492b | |||
547dc76a12 | |||
0567b37f61 | |||
aa059e0d49 | |||
28426cc31c | |||
02dd65cdea | |||
fbb1276ffd | |||
51854046db | |||
8f7ee56dab | |||
6098a36d92 | |||
d90930b13e | |||
1394070aab | |||
16f3ebb9f1 | |||
a5f8af912d | |||
f202f573b4 | |||
ac9217b199 | |||
af80811be0 | |||
cfa8c9fbd4 | |||
588240ca09 | |||
49805748d4 | |||
945143a34e | |||
214f5fccdf | |||
7d50bf0626 | |||
5a11d740e1 | |||
b714f28662 | |||
c16fb5d49b | |||
789b1b4fd4 | |||
913902ba36 | |||
2ac3f0daa1 | |||
94c338765c | |||
c1cb4467ec | |||
c452fd730c | |||
827aa5380a | |||
119dcb949a | |||
e1c54ac638 | |||
ab41ff551b | |||
f70d350085 | |||
59495c1871 | |||
8ca7245129 | |||
276b8032be | |||
92106484ed | |||
1699091d70 | |||
2a5ab3109a | |||
dbec83d57a | |||
ad092e96f9 | |||
0255b8fdb1 | |||
a9aea4b5a1 | |||
e51199cffa | |||
3654098520 | |||
81370cf714 | |||
1f4c1964fd | |||
e6443ad7dc | |||
86ba1bc62d | |||
ed93ce9c15 | |||
4742390960 | |||
5a19f6b5fe | |||
32ba8ea3fe | |||
1891b02d9d | |||
6fd2c88024 | |||
43e4f635d6 | |||
0a2f40c2fb | |||
fd4c38bc2b | |||
88db9c5192 | |||
100c5793c8 | |||
91a5fc10e6 | |||
4d8d597a3f | |||
2bbc7e179d | |||
2244af1a86 | |||
8010f50aa5 | |||
bac4bba016 | |||
c4ccd7cbce | |||
86811ad7aa | |||
2c2b6f200c | |||
24af74eed6 | |||
4d1629605b | |||
9eae3e015a | |||
4ef42b4578 | |||
502602e4a2 | |||
393aa44e66 | |||
d704ca4c1b | |||
4ab123fb31 | |||
8ceccd71e2 | |||
9a1162314f | |||
cae2c226b5 | |||
a636bf2022 | |||
1bd4d2fc72 | |||
e0a0123b18 | |||
61689ad543 | |||
4cc586a3f1 | |||
1d42e45fd2 | |||
73c767c2f3 | |||
f8268faa7c | |||
368c060b45 | |||
ca0b9ee915 | |||
106130f4cd | |||
373d6b60e1 | |||
1cdb5bdf41 | |||
1806ea710f | |||
de9e337f0d | |||
99c06952a0 | |||
90d8ff27d2 | |||
d6dea2247c | |||
7f65b24113 | |||
ff9ca808e0 | |||
cdadb59ee3 | |||
ea62195fe5 | |||
a2cf7d9a11 | |||
7ed5a6c371 | |||
71165ac52a | |||
39c10b2b81 | |||
cf2870cce0 | |||
b764947061 | |||
75dcce02dc | |||
1faa562964 | |||
c52242b05b | |||
662e2ffe0f | |||
fa706b320b | |||
d64d761539 | |||
e32d1918ae | |||
c1f5fcf9c7 | |||
452b70ad15 | |||
1c583650e6 | |||
90e68edfe7 | |||
8971ea25f9 | |||
987bd2207f | |||
9a635ef8d6 | |||
1677b3b84f | |||
c50018b791 | |||
ae0d94e048 | |||
3df8af369c | |||
0c396e298a | |||
2c6dbd9b89 | |||
39da8514d3 | |||
4d706f1bdc | |||
d6c59d9a41 | |||
1731e455d4 | |||
40df5896d5 | |||
6c3fd9fedf | |||
da7b7738eb | |||
83c0c9405a | |||
028d5bcac5 | |||
bb66618f1f | |||
6da95ee7d3 | |||
b289fea163 | |||
6ba62855e2 | |||
5e76948d58 | |||
596c439db5 | |||
c14d21ce75 | |||
8024201e75 | |||
595069d501 | |||
b2858a297a | |||
45b92aa381 | |||
c69553e194 | |||
c98fbef3b5 | |||
c33d6578a8 | |||
2e9da7f41f | |||
7598a7503d | |||
4e62df4269 | |||
a6df15a63f | |||
276b50e389 | |||
679c76a8f3 | |||
683aaeb75b | |||
9d999fa210 | |||
135150307b | |||
146c87cd78 | |||
e7430b0776 | |||
07ff12f5eb | |||
abc6554e24 | |||
ae381c91a1 | |||
d02b73d72a | |||
6678af37ee | |||
3fadf6af8f | |||
9f2cc30246 | |||
7782affc90 | |||
a474aea1f9 | |||
060f56d6d4 | |||
0a9373733f | |||
298a8f5c5d | |||
95d055dcf7 | |||
ae098d67d6 | |||
c2ef09227e | |||
e7d4b397b2 | |||
cf6775a959 | |||
c4b7505969 | |||
7414e84af9 | |||
b285a46dfc | |||
2e5e46d9ff | |||
a224ef2a73 | |||
2a7d163a8a | |||
80143069ff | |||
3ace8277e5 | |||
a13457eea3 | |||
0975eeb9ad | |||
804756209e | |||
01e6718e03 | |||
38b8736b81 | |||
4dfd5c2596 | |||
f6bcf6f12c | |||
fba06ce9f5 | |||
cf46d265ff | |||
b949dba489 | |||
4bbeb37a18 | |||
54d687383d | |||
0160851a25 | |||
1b86d7b2ad | |||
eb0da3c92f | |||
425dadef72 | |||
91493588a8 | |||
97bdcc1c52 | |||
a6e6d4dabd | |||
cf4374867d | |||
025ba33dc3 | |||
99f0a1cb40 | |||
de57894158 | |||
80c9dcaabe | |||
a3011c91d4 | |||
47a8736278 | |||
e68ff6897e | |||
08481c2c92 | |||
505ce3851c | |||
0a63734b78 | |||
a23e8c15f5 | |||
02b240cea5 | |||
eb1c04bd31 | |||
163f7ea303 | |||
2695fc7dfc | |||
54d7cea305 |
.editorconfig
.github
.release-please-manifest.json
.gitignoreCHANGELOG.mdCONTRIBUTING.mdNEWS.mdREADME-CN.mdREADME-JP.mdREADME-KO.mdREADME-PT.mdREADME.mdISSUE_TEMPLATE
PULL_REQUEST_TEMPLATE.mddependabot.ymllabeler.ymlrelease-please-config.jsonworkflows
doc
lua/lazyvim
config
plugins
coding.luaformatting.luainit.lualinting.lua
types.luacompat
editor.luaextras
coding
dap
editor
aerial.luadial.luafzf.luainc-rename.lualeap.luamini-files.luanavic.luaoutline.luaoverseer.luarefactoring.luatelescope.luatrouble-v3.lua
formatting
lang
angular.luaansible.luaastro.luaclangd.luaclojure.luacmake.luadocker.luaelixir.luaelm.luaerlang.luagit.luagleam.luago.luahaskell.luahelm.luajava.luajson.luakotlin.luamarkdown.luanix.luanushell.luaomnisharp.luaphp.luaprisma.luapython-semshi.luapython.luar.luaruby.luarust.luascala.luasql.luasvelte.luatailwind.luaterraform.luatex.luathrift.luatoml.luatypescript.luavue.luayaml.lua
lsp
test
ui
util
vscode.lualsp
treesitter.luaui.luautil.luaxtras.luautil
scripts
selene.tomltests
vim.toml
7
.editorconfig
Normal file
7
.editorconfig
Normal file
@ -0,0 +1,7 @@
|
||||
root = true
|
||||
|
||||
[*]
|
||||
insert_final_newline = true
|
||||
indent_style = space
|
||||
indent_size = 2
|
||||
charset = utf-8
|
3
.github/.release-please-manifest.json
vendored
Normal file
3
.github/.release-please-manifest.json
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
{
|
||||
".": "12.32.0"
|
||||
}
|
41
.github/ISSUE_TEMPLATE/bug_report.yml
vendored
41
.github/ISSUE_TEMPLATE/bug_report.yml
vendored
@ -6,7 +6,10 @@ body:
|
||||
- type: markdown
|
||||
attributes:
|
||||
value: |
|
||||
**Before** reporting an issue, make sure to read the [documentation](https://github.com/folke/LazyVim) and search [existing issues](https://github.com/folke/LazyVim/issues). Usage questions such as ***"How do I...?"*** belong in [Discussions](https://github.com/folke/LazyVim/discussions) and will be closed.
|
||||
**Before** reporting an issue, make sure to read the [documentation](https://github.com/LazyVim/LazyVim)
|
||||
and search [existing issues](https://github.com/LazyVim/LazyVim/issues).
|
||||
|
||||
Usage questions such as ***"How do I...?"*** belong in [Discussions](https://github.com/LazyVim/LazyVim/discussions) and will be closed.
|
||||
- type: checkboxes
|
||||
attributes:
|
||||
label: Did you check docs and existing issues?
|
||||
@ -14,6 +17,8 @@ body:
|
||||
options:
|
||||
- label: I have read all the LazyVim docs
|
||||
required: true
|
||||
- label: I have updated the plugin to the latest version before submitting this issue
|
||||
required: true
|
||||
- label: I have searched the existing issues of LazyVim
|
||||
required: true
|
||||
- label: I have searched the existing issues of plugins related to this issue
|
||||
@ -57,33 +62,15 @@ body:
|
||||
label: Repro
|
||||
description: Minimal `init.lua` to reproduce this issue. Save as `repro.lua` and run with `nvim -u repro.lua`
|
||||
value: |
|
||||
-- DO NOT change the paths and don't remove the colorscheme
|
||||
local root = vim.fn.fnamemodify("./.repro", ":p")
|
||||
vim.env.LAZY_STDPATH = ".repro"
|
||||
load(vim.fn.system("curl -s https://raw.githubusercontent.com/folke/lazy.nvim/main/bootstrap.lua"))()
|
||||
|
||||
-- set stdpaths to use .repro
|
||||
for _, name in ipairs({ "config", "data", "state", "cache" }) do
|
||||
vim.env[("XDG_%s_HOME"):format(name:upper())] = root .. "/" .. name
|
||||
end
|
||||
|
||||
-- bootstrap lazy
|
||||
local lazypath = root .. "/plugins/lazy.nvim"
|
||||
if not vim.loop.fs_stat(lazypath) then
|
||||
vim.fn.system({ "git", "clone", "--filter=blob:none", "https://github.com/folke/lazy.nvim.git", lazypath, })
|
||||
end
|
||||
vim.opt.runtimepath:prepend(lazypath)
|
||||
|
||||
-- install plugins
|
||||
local plugins = {
|
||||
"folke/tokyonight.nvim",
|
||||
"folke/LazyVim",
|
||||
-- add any other plugins here
|
||||
}
|
||||
require("lazy").setup(plugins, {
|
||||
root = root .. "/plugins",
|
||||
require("lazy.minit").repro({
|
||||
spec = {
|
||||
{ "LazyVim/LazyVim", import = "lazyvim.plugins" },
|
||||
-- add any other plugins here
|
||||
},
|
||||
})
|
||||
|
||||
vim.cmd.colorscheme("tokyonight")
|
||||
-- add anything else here
|
||||
render: Lua
|
||||
render: lua
|
||||
validations:
|
||||
required: false
|
||||
|
4
.github/ISSUE_TEMPLATE/config.yml
vendored
4
.github/ISSUE_TEMPLATE/config.yml
vendored
@ -1 +1,5 @@
|
||||
blank_issues_enabled: false
|
||||
contact_links:
|
||||
- name: Ask a question
|
||||
url: https://github.com/LazyVim/LazyVim/discussions
|
||||
about: Use Github discussions instead
|
||||
|
7
.github/ISSUE_TEMPLATE/feature_request.yml
vendored
7
.github/ISSUE_TEMPLATE/feature_request.yml
vendored
@ -3,6 +3,11 @@ description: Suggest a new feature
|
||||
title: "feature: "
|
||||
labels: [enhancement]
|
||||
body:
|
||||
- type: markdown
|
||||
attributes:
|
||||
value: |
|
||||
**IMPORTANT:** ideas or requests related to extras, should go in the [Extra Requests](https://github.com/LazyVim/LazyVim/discussions/categories/extra-requests)
|
||||
discussion forum.
|
||||
- type: checkboxes
|
||||
attributes:
|
||||
label: Did you check the docs?
|
||||
@ -10,6 +15,8 @@ body:
|
||||
options:
|
||||
- label: I have read all the LazyVim docs
|
||||
required: true
|
||||
- label: This is not a request for a new or existing extra (see above)
|
||||
required: true
|
||||
- type: textarea
|
||||
validations:
|
||||
required: true
|
||||
|
19
.github/PULL_REQUEST_TEMPLATE.md
vendored
Normal file
19
.github/PULL_REQUEST_TEMPLATE.md
vendored
Normal file
@ -0,0 +1,19 @@
|
||||
## Description
|
||||
|
||||
<!-- Describe the big picture of your changes to communicate to the maintainers
|
||||
why we should accept this pull request. -->
|
||||
|
||||
## Related Issue(s)
|
||||
|
||||
<!--
|
||||
If this PR fixes any issues, please link to the issue here.
|
||||
- Fixes #<issue_number>
|
||||
-->
|
||||
|
||||
## Screenshots
|
||||
|
||||
<!-- Add screenshots of the changes if applicable. -->
|
||||
|
||||
## Checklist
|
||||
|
||||
- [ ] I've read the [CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md) guidelines.
|
6
.github/dependabot.yml
vendored
Normal file
6
.github/dependabot.yml
vendored
Normal file
@ -0,0 +1,6 @@
|
||||
version: 2
|
||||
updates:
|
||||
- package-ecosystem: "github-actions"
|
||||
directory: "/"
|
||||
schedule:
|
||||
interval: "weekly"
|
19
.github/labeler.yml
vendored
Normal file
19
.github/labeler.yml
vendored
Normal file
@ -0,0 +1,19 @@
|
||||
core:
|
||||
- all:
|
||||
- changed-files:
|
||||
- any-glob-to-any-file: "lua/lazyvim/**"
|
||||
- all-globs-to-all-files: "!lua/lazyvim/plugins/**"
|
||||
|
||||
core-plugins:
|
||||
- all:
|
||||
- changed-files:
|
||||
- any-glob-to-any-file: "lua/lazyvim/plugins/**"
|
||||
- all-globs-to-all-files: "!lua/lazyvim/plugins/extras/**"
|
||||
|
||||
extras:
|
||||
- changed-files:
|
||||
- any-glob-to-any-file: "lua/lazyvim/plugins/extras/**"
|
||||
|
||||
extras-lang:
|
||||
- changed-files:
|
||||
- any-glob-to-any-file: "lua/lazyvim/plugins/extras/lang/**"
|
9
.github/release-please-config.json
vendored
Normal file
9
.github/release-please-config.json
vendored
Normal file
@ -0,0 +1,9 @@
|
||||
{
|
||||
"$schema": "https://raw.githubusercontent.com/googleapis/release-please/main/schemas/config.json",
|
||||
"packages": {
|
||||
".": {
|
||||
"release-type": "simple",
|
||||
"extra-files": ["lua/lazyvim/config/init.lua"]
|
||||
}
|
||||
}
|
||||
}
|
76
.github/workflows/ci.yml
vendored
76
.github/workflows/ci.yml
vendored
@ -1,74 +1,14 @@
|
||||
name: CI
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [main, master]
|
||||
pull_request:
|
||||
|
||||
jobs:
|
||||
tests:
|
||||
strategy:
|
||||
matrix:
|
||||
# os: [ubuntu-latest, windows-latest]
|
||||
os: [ubuntu-latest]
|
||||
runs-on: ${{ matrix.os }}
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- name: Install Neovim
|
||||
shell: bash
|
||||
run: |
|
||||
mkdir -p /tmp/nvim
|
||||
wget -q https://github.com/neovim/neovim/releases/download/nightly/nvim.appimage -O /tmp/nvim/nvim.appimage
|
||||
cd /tmp/nvim
|
||||
chmod a+x ./nvim.appimage
|
||||
./nvim.appimage --appimage-extract
|
||||
echo "/tmp/nvim/squashfs-root/usr/bin/" >> $GITHUB_PATH
|
||||
- name: Run Tests
|
||||
run: |
|
||||
nvim --version
|
||||
[ ! -d tests ] && exit 0
|
||||
nvim --headless -u tests/init.lua -c "PlenaryBustedDirectory tests/ {minimal_init = 'tests/init.lua', sequential = true}"
|
||||
docs:
|
||||
runs-on: ubuntu-latest
|
||||
needs: tests
|
||||
if: ${{ github.ref == 'refs/heads/main' }}
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- name: panvimdoc
|
||||
uses: kdheepak/panvimdoc@main
|
||||
with:
|
||||
vimdoc: LazyVim
|
||||
version: "Neovim >= 0.9.0"
|
||||
demojify: true
|
||||
treesitter: true
|
||||
- name: Push changes
|
||||
uses: stefanzweifel/git-auto-commit-action@v5
|
||||
with:
|
||||
commit_message: "chore(build): auto-generate vimdoc"
|
||||
commit_user_name: "github-actions[bot]"
|
||||
commit_user_email: "github-actions[bot]@users.noreply.github.com"
|
||||
commit_author: "github-actions[bot] <github-actions[bot]@users.noreply.github.com>"
|
||||
release:
|
||||
name: release
|
||||
if: ${{ github.ref == 'refs/heads/main' }}
|
||||
needs:
|
||||
- docs
|
||||
- tests
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: google-github-actions/release-please-action@v4
|
||||
id: release
|
||||
with:
|
||||
release-type: simple
|
||||
package-name: LazyVim
|
||||
extra-files: |
|
||||
lua/lazyvim/config/init.lua
|
||||
- uses: actions/checkout@v4
|
||||
- name: tag stable versions
|
||||
if: ${{ steps.release.outputs.release_created }}
|
||||
run: |
|
||||
git config user.name github-actions[bot]
|
||||
git config user.email github-actions[bot]@users.noreply.github.com
|
||||
git remote add gh-token "https://${{ secrets.GITHUB_TOKEN }}@github.com/google-github-actions/release-please-action.git"
|
||||
git tag -d stable || true
|
||||
git push origin :stable || true
|
||||
git tag -a stable -m "Last Stable Release"
|
||||
git push origin stable
|
||||
ci:
|
||||
uses: folke/github/.github/workflows/ci.yml@main
|
||||
secrets: inherit
|
||||
with:
|
||||
plugin: LazyVim
|
||||
repo: LazyVim/LazyVim
|
||||
|
8
.github/workflows/labeler.yml
vendored
Normal file
8
.github/workflows/labeler.yml
vendored
Normal file
@ -0,0 +1,8 @@
|
||||
name: "PR Labeler"
|
||||
on:
|
||||
- pull_request_target
|
||||
|
||||
jobs:
|
||||
labeler:
|
||||
uses: folke/github/.github/workflows/labeler.yml@main
|
||||
secrets: inherit
|
18
.github/workflows/pr.yml
vendored
Normal file
18
.github/workflows/pr.yml
vendored
Normal file
@ -0,0 +1,18 @@
|
||||
name: PR Title
|
||||
|
||||
on:
|
||||
pull_request_target:
|
||||
types:
|
||||
- opened
|
||||
- edited
|
||||
- synchronize
|
||||
- reopened
|
||||
- ready_for_review
|
||||
|
||||
permissions:
|
||||
pull-requests: read
|
||||
|
||||
jobs:
|
||||
pr-title:
|
||||
uses: folke/github/.github/workflows/pr.yml@main
|
||||
secrets: inherit
|
10
.github/workflows/stale.yml
vendored
Normal file
10
.github/workflows/stale.yml
vendored
Normal file
@ -0,0 +1,10 @@
|
||||
name: Stale Issues & PRs
|
||||
|
||||
on:
|
||||
schedule:
|
||||
- cron: "30 1 * * *"
|
||||
|
||||
jobs:
|
||||
ci:
|
||||
uses: folke/github/.github/workflows/stale.yml@main
|
||||
secrets: inherit
|
12
.github/workflows/update.yml
vendored
Normal file
12
.github/workflows/update.yml
vendored
Normal file
@ -0,0 +1,12 @@
|
||||
name: Update Repo
|
||||
|
||||
on:
|
||||
workflow_dispatch:
|
||||
schedule:
|
||||
# Run every hour
|
||||
- cron: "0 * * * *"
|
||||
|
||||
jobs:
|
||||
ci:
|
||||
uses: folke/github/.github/workflows/update.yml@main
|
||||
secrets: inherit
|
15
.gitignore
vendored
15
.gitignore
vendored
@ -1,8 +1,9 @@
|
||||
tt.*
|
||||
.tests
|
||||
doc/tags
|
||||
debug
|
||||
.repro
|
||||
foo.*
|
||||
*.log
|
||||
data
|
||||
/.repro
|
||||
/.tests
|
||||
/build
|
||||
/debug
|
||||
/doc/tags
|
||||
foo.*
|
||||
node_modules
|
||||
tt.*
|
||||
|
768
CHANGELOG.md
768
CHANGELOG.md
File diff suppressed because it is too large
Load Diff
31
CONTRIBUTING.md
Normal file
31
CONTRIBUTING.md
Normal file
@ -0,0 +1,31 @@
|
||||
# Contributing to LazyVim
|
||||
|
||||
## General Guidelines
|
||||
|
||||
- Avoid using Vim plugins whenever possible.
|
||||
- If an extra requires a Vim plugin, explain why in the PR description.
|
||||
- Ensure all configurations are overridable by the user, using Lazy's specs.
|
||||
- Tag specs as `optional` if they should only be enabled when the user has them installed.
|
||||
- Implement proper lazy-loading for every plugin added in an extra.
|
||||
- Understand how Lazy's dependencies work. For Lua dependencies, do not specify
|
||||
them in the `dependencies` field. Instead, add them as a separate spec with `lazy=true`.
|
||||
|
||||
## Contributing an Extra Plugin
|
||||
|
||||
- The plugin should be well-known and require significant configuration.
|
||||
- Simple specs containing just the plugin with some options will not be accepted.
|
||||
|
||||
## Contributing an Extra Language
|
||||
|
||||
- You should be familiar with the language you are adding.
|
||||
- You should have experience with the language's ecosystem, including formatters,
|
||||
linters, and LSP servers.
|
||||
- The extra should include the setup most widely used by the community.
|
||||
- Include Tree-sitter parsers that are not yet the default.
|
||||
- Include the most widely used LSP server setup.
|
||||
- Avoid the need for LSP wrapper packages whenever possible.
|
||||
- Only add a formatter if it is typically used by the community instead of the LSP formatter.
|
||||
- Only add extra linters if the community typically uses them instead of just the LSP linters.
|
||||
- Every language extra requires a `recommended` section as part of the extra.
|
||||
Check lspconfig server configurations for the proper filetypes and root directories.
|
||||
Refer to other extras for creating the `recommended` section.
|
31
NEWS.md
31
NEWS.md
@ -1,7 +1,38 @@
|
||||
# What's new?
|
||||
|
||||
## 12.x
|
||||
|
||||
- This **news** is now also available on the website at [https://www.lazyvim.org/news](https://www.lazyvim.org/news)
|
||||
|
||||
- **prettier** extra now works for all prettier supported filetypes
|
||||
and will be enabled for astro/svelte extra if you have a proper
|
||||
config file with the correct prettier plugin
|
||||
|
||||
- **New Language Support:** SQL, Clojure, Thrift, Elm, Gleam, Angular,
|
||||
NuShell, Svelte, Kotlin, Astro, Toml and PHP
|
||||
|
||||
- **New Extras:** `copilot-chat`, `git`, `octo`, `inc-rename` and `neogen`
|
||||
|
||||
- The **typescript** extra now uses `vtsls` instead of `tsserver`
|
||||
|
||||
- **Neovim >= 0.10** now uses the much faster [lazydev.nvim](https://github.com/folke/lazydev.nvim)
|
||||
instead of `neodev.nvim`
|
||||
|
||||
- moved `neoconf.nvim` to extras. Project specific LSP settings
|
||||
can be done with a `.lazy.lua` file instead.
|
||||
|
||||
## 11.x
|
||||
|
||||
- **Keymaps:**
|
||||
|
||||
- `<leader>gB` to open the current repo in the browser
|
||||
- `gco` and `gcO` to add a comment below or above the current line
|
||||
- `<leader>wm` to toggle window maximize
|
||||
|
||||
- **lazydev.nvim:** faster alternative to `neodev.nvim`
|
||||
|
||||
- **Options:** Added `linebreak=true` to default options.
|
||||
|
||||
- `mini.ai` is back as a default plugin! Removing it was a mistake.
|
||||
It's a great plugin that enhances the native text objects.
|
||||
|
||||
|
@ -113,6 +113,10 @@ docker run -w /root -it --rm alpine:edge sh -uelic '
|
||||
|
||||
[](https://www.youtube.com/watch?v=N93cTbtLCIM)
|
||||
|
||||
[@dusty-phillips](https://github.com/dusty-phillips) 正在编写一本名为
|
||||
[LazyVim for Ambitious Developers](https://lazyvim-ambitious-devs.phillips.codes)
|
||||
的书,该书可在线免费获得。
|
||||
|
||||
## 📂 文件结构
|
||||
|
||||
config 下的文件会在适当的时候自动加载,所以你不需要手动引入这些文件。
|
||||
|
139
README-JP.md
Normal file
139
README-JP.md
Normal file
@ -0,0 +1,139 @@
|
||||
<div align="center">
|
||||
<img src="https://user-images.githubusercontent.com/292349/213446185-2db63fd5-8c84-459c-9f04-e286382d6e80.png">
|
||||
</div>
|
||||
|
||||
<hr>
|
||||
|
||||
<h4 align="center">
|
||||
<a href="https://lazyvim.github.io/installation">インストール</a>
|
||||
·
|
||||
<a href="https://lazyvim.github.io/configuration">設定</a>
|
||||
·
|
||||
<a href="https://lazyvim.github.io">ドキュメント</a>
|
||||
</h4>
|
||||
|
||||
<div align="center"><p>
|
||||
<a href="https://github.com/LazyVim/LazyVim/releases/latest">
|
||||
<img alt="Latest release" src="https://img.shields.io/github/v/release/LazyVim/LazyVim?style=for-the-badge&logo=starship&color=C9CBFF&logoColor=D9E0EE&labelColor=302D41&include_prerelease&sort=semver" />
|
||||
</a>
|
||||
<a href="https://github.com/LazyVim/LazyVim/pulse">
|
||||
<img alt="Last commit" src="https://img.shields.io/github/last-commit/LazyVim/LazyVim?style=for-the-badge&logo=starship&color=8bd5ca&logoColor=D9E0EE&labelColor=302D41"/>
|
||||
</a>
|
||||
<a href="https://github.com/LazyVim/LazyVim/blob/main/LICENSE">
|
||||
<img alt="License" src="https://img.shields.io/github/license/LazyVim/LazyVim?style=for-the-badge&logo=starship&color=ee999f&logoColor=D9E0EE&labelColor=302D41" />
|
||||
</a>
|
||||
<a href="https://github.com/LazyVim/LazyVim/stargazers">
|
||||
<img alt="Stars" src="https://img.shields.io/github/stars/LazyVim/LazyVim?style=for-the-badge&logo=starship&color=c69ff5&logoColor=D9E0EE&labelColor=302D41" />
|
||||
</a>
|
||||
<a href="https://github.com/LazyVim/LazyVim/issues">
|
||||
<img alt="Issues" src="https://img.shields.io/github/issues/LazyVim/LazyVim?style=for-the-badge&logo=bilibili&color=F5E0DC&logoColor=D9E0EE&labelColor=302D41" />
|
||||
</a>
|
||||
<a href="https://github.com/LazyVim/LazyVim">
|
||||
<img alt="Repo Size" src="https://img.shields.io/github/repo-size/LazyVim/LazyVim?color=%23DDB6F2&label=SIZE&logo=codesandbox&style=for-the-badge&logoColor=D9E0EE&labelColor=302D41" />
|
||||
</a>
|
||||
<a href="https://twitter.com/intent/follow?screen_name=folke">
|
||||
<img alt="follow on Twitter" src="https://img.shields.io/twitter/follow/folke?style=for-the-badge&logo=twitter&color=8aadf3&logoColor=D9E0EE&labelColor=302D41" />
|
||||
</a>
|
||||
</div>
|
||||
|
||||
LazyVimは、設定の拡張と変更を容易にするために[💤 lazy.nvim](https://github.com/folke/lazy.nvim)によって提供されるNeovimセットアップです。
|
||||
LazyVimは、ゼロから始めるか、あらかじめ作成されたディストリビューションを使用するかの選択を迫ることなく、
|
||||
必要に応じて設定を調整する柔軟性と、事前に設定されたセットアップの利便性を両方叶える最高の世界を提供します。
|
||||
|
||||

|
||||
|
||||

|
||||
|
||||
## ✨ 機能
|
||||
|
||||
- 🔥 Neovimを本格的なIDEへと変身させます
|
||||
- 💤 [lazy.nvim](https://github.com/folke/lazy.nvim)で簡単にカスタマイズと拡張が可能
|
||||
- 🚀 驚くほどの高速さ
|
||||
- 🧹 Options, autocmds, そしてkeymapsのための合理的なデフォルト設定
|
||||
- 📦 事前に設定がされ、使用可能なプラグインが豊富についてきます
|
||||
|
||||
## ⚡️ 必要要件
|
||||
|
||||
- Neovim >= **0.9.0** (**LuaJIT**でビルドされている必要があります)
|
||||
- Git >= **2.19.0** (部分的なcloneサポートのため)
|
||||
- [Nerd Font](https://www.nerdfonts.com/) **_(任意)_**
|
||||
- `nvim-treesitter`用の**C**コンパイラ。詳細は[こちら](https://github.com/nvim-treesitter/nvim-treesitter#requirements)
|
||||
|
||||
## 🚀 Getting Started
|
||||
|
||||
**lazyvim**のスターターテンプレートは[こちら](https://github.com/lazyvim/starter)。
|
||||
|
||||
<details><summary>Dockerで試す</summary>
|
||||
|
||||
```sh
|
||||
docker run -w /root -it --rm alpine:edge sh -uelic '
|
||||
apk add git lazygit neovim ripgrep alpine-sdk --update
|
||||
git clone https://github.com/LazyVim/starter ~/.config/nvim
|
||||
cd ~/.config/nvim
|
||||
nvim
|
||||
'
|
||||
```
|
||||
|
||||
</details>
|
||||
|
||||
<details><summary><a href="https://github.com/LazyVim/starter">LazyVim Starter</a>をインストール</summary>
|
||||
|
||||
- 既存のNeovimファイルのバックアップを作成します。
|
||||
|
||||
```sh
|
||||
mv ~/.config/nvim ~/.config/nvim.bak
|
||||
mv ~/.local/share/nvim ~/.local/share/nvim.bak
|
||||
```
|
||||
|
||||
- スターターをcloneします。
|
||||
|
||||
```sh
|
||||
git clone https://github.com/LazyVim/starter ~/.config/nvim
|
||||
```
|
||||
|
||||
- 後ほど自分のリポジトリに加えられるように、`.git`フォルダを削除します。
|
||||
```sh
|
||||
rm -rf ~/.config/nvim/.git
|
||||
```
|
||||
|
||||
- Neovimを起動します!
|
||||
|
||||
```sh
|
||||
nvim
|
||||
```
|
||||
|
||||
**LazyVim**をカスタマイズするために、ファイルのコメントを参照してください。
|
||||
|
||||
</details>
|
||||
|
||||
---
|
||||
|
||||
[@elijahmanor](https://github.com/elijahmanor)氏によって作成された始めるにあたっての概要動画があります。
|
||||
|
||||
[](https://www.youtube.com/watch?v=N93cTbtLCIM)
|
||||
|
||||
## 📂 ファイル構造
|
||||
|
||||
config配下にあるファイルは適切なタイミングで自動的にロードされる為、
|
||||
手動でそれらのファイルをrequireする必要はありません。
|
||||
LazyVimには、自分で設定したものより先にロードされるデフォルトの設定ファイルが付属しています。詳しくは[こちら](https://github.com/LazyVim/LazyVim/tree/main/lua/lazyvim/config)。
|
||||
カスタムプラグインをlua/plugins/の下に追加することができます。lua/plugins/配下の全てのファイルは[lazy.nvim](https://github.com/folke/lazy.nvim)によって自動的にロードされます。
|
||||
|
||||
<pre>
|
||||
~/.config/nvim
|
||||
├── lua
|
||||
│ ├── config
|
||||
│ │ ├── autocmds.lua
|
||||
│ │ ├── keymaps.lua
|
||||
│ │ ├── lazy.lua
|
||||
│ │ └── options.lua
|
||||
│ └── plugins
|
||||
│ ├── spec1.lua
|
||||
│ ├── **
|
||||
│ └── spec2.lua
|
||||
└── init.lua
|
||||
</pre>
|
||||
|
||||
## ⚙️ 設定
|
||||
|
||||
こちらの[ドキュメント](https://lazyvim.github.io)を参照してください。
|
139
README-KO.md
Normal file
139
README-KO.md
Normal file
@ -0,0 +1,139 @@
|
||||
<div align="center">
|
||||
<img src="https://user-images.githubusercontent.com/292349/213446185-2db63fd5-8c84-459c-9f04-e286382d6e80.png">
|
||||
</div>
|
||||
|
||||
<hr>
|
||||
|
||||
<h4 align="center">
|
||||
<a href="https://lazyvim.github.io/installation">설치하기</a>
|
||||
·
|
||||
<a href="https://lazyvim.github.io/configuration">설정하기</a>
|
||||
·
|
||||
<a href="https://lazyvim.github.io">문서</a>
|
||||
</h4>
|
||||
|
||||
<div align="center"><p>
|
||||
<a href="https://github.com/LazyVim/LazyVim/releases/latest">
|
||||
<img alt="최신 업데이트" src="https://img.shields.io/github/v/release/LazyVim/LazyVim?style=for-the-badge&logo=starship&color=C9CBFF&logoColor=D9E0EE&labelColor=302D41&include_prerelease&sort=semver" />
|
||||
</a>
|
||||
<a href="https://github.com/LazyVim/LazyVim/pulse">
|
||||
<img alt="마지막 커밋" src="https://img.shields.io/github/last-commit/LazyVim/LazyVim?style=for-the-badge&logo=starship&color=8bd5ca&logoColor=D9E0EE&labelColor=302D41"/>
|
||||
</a>
|
||||
<a href="https://github.com/LazyVim/LazyVim/blob/main/LICENSE">
|
||||
<img alt="라이센스" src="https://img.shields.io/github/license/LazyVim/LazyVim?style=for-the-badge&logo=starship&color=ee999f&logoColor=D9E0EE&labelColor=302D41" />
|
||||
</a>
|
||||
<a href="https://github.com/LazyVim/LazyVim/stargazers">
|
||||
<img alt="스타" src="https://img.shields.io/github/stars/LazyVim/LazyVim?style=for-the-badge&logo=starship&color=c69ff5&logoColor=D9E0EE&labelColor=302D41" />
|
||||
</a>
|
||||
<a href="https://github.com/LazyVim/LazyVim/issues">
|
||||
<img alt="이슈" src="https://img.shields.io/github/issues/LazyVim/LazyVim?style=for-the-badge&logo=bilibili&color=F5E0DC&logoColor=D9E0EE&labelColor=302D41" />
|
||||
</a>
|
||||
<a href="https://github.com/LazyVim/LazyVim">
|
||||
<img alt="레파지토리 크기" src="https://img.shields.io/github/repo-size/LazyVim/LazyVim?color=%23DDB6F2&label=SIZE&logo=codesandbox&style=for-the-badge&logoColor=D9E0EE&labelColor=302D41" />
|
||||
</a>
|
||||
<a href="https://twitter.com/intent/follow?screen_name=folke">
|
||||
<img alt="트위터" src="https://img.shields.io/twitter/follow/folke?style=for-the-badge&logo=twitter&color=8aadf3&logoColor=D9E0EE&labelColor=302D41" />
|
||||
</a>
|
||||
</div>
|
||||
|
||||
LazyVim은 [💤 lazy.nvim](https://github.com/folke/lazy.nvim)를 기반으로 작동하는 Neovim 셋업입니다. 더 커스터마이징 가능하고, 설정들을 바꾸는 것을 쉽게 만들기위해 시작되었죠. 그저 처음부터 모든 설정들을 만지고 시작하는 방법, 또는 이미 만들어진 배포용 설정을 사용하는 방법이 있지만, LazyVIM은 이미 잘 설정된 환경과, 필요에 따라 쉽게 바꿀 수 있는 유연성을 모두 포괄합니다. 이를 통해 훨신 쉽고 편리한, 전에는 만나보실 수 없었던 새로운 Nvim의 세계를 경험하실 수 있으실 겁니다.
|
||||
|
||||

|
||||
|
||||

|
||||
|
||||
## ✨ 기능
|
||||
|
||||
- 🔥 Neovim을 완벽한 IDE로 바꾸어보세요.
|
||||
- 💤 lazy.vim과 함께 쉽게 커스터마이징하고, 확장하세요.
|
||||
- 🚀 완전히 빠른 속도를 경험해보세요.
|
||||
- 🧹 기본적으로 만져져있는 옵션, 자동커멘드, 그리고 단축키들을 아무런 추가적인 설정없이 사용해보세요.
|
||||
- 📦 안정적이고 미리 설정되어져있는 플러그인들과 함게 코딩하세요.
|
||||
|
||||
## ⚡️ 요구사항
|
||||
|
||||
- **0.9.0**이상의 Neovim (LuaJIT과 함께 개발이 되어져있어야함니다.)
|
||||
- **2.19.0**이상의 Git (이것은 부분적인 클론기능을 지원하기 위함입니다.)
|
||||
- [Nerd Font](https://www.nerdfonts.com/) **_(옵션)_**
|
||||
- `nvim-treesitter`를 위한 **C** 컴파일러. [이 문서](https://github.com/nvim-treesitter/nvim-treesitter#requirements)를 확인해주시기바랍니다.
|
||||
|
||||
## 🚀 시작하기
|
||||
|
||||
[이 깃헙 레파지토리](https://github.com/LazyVim/starter)에서 스타터 템플릿을 찾으실 수 있습니다.
|
||||
|
||||
<details><summary>도커와 함께 시작해보기</summary>
|
||||
|
||||
```sh
|
||||
docker run -w /root -it --rm alpine:edge sh -uelic '
|
||||
apk add git lazygit neovim ripgrep alpine-sdk --update
|
||||
git clone https://github.com/LazyVim/starter ~/.config/nvim
|
||||
cd ~/.config/nvim
|
||||
nvim
|
||||
'
|
||||
```
|
||||
|
||||
</details>
|
||||
|
||||
<details><summary><a href="https://github.com/LazyVim/starter">LazyVim 스타터</a>와 함께 시작해보기</summary>
|
||||
|
||||
- 현재 Neovim 파일들을 미리 백업:
|
||||
|
||||
```sh
|
||||
mv ~/.config/nvim ~/.config/nvim.bak
|
||||
mv ~/.local/share/nvim ~/.local/share/nvim.bak
|
||||
```
|
||||
|
||||
- Lazyvim 스타터 깃헙 레파지토리 복제:
|
||||
|
||||
```sh
|
||||
git clone https://github.com/LazyVim/starter ~/.config/nvim
|
||||
```
|
||||
|
||||
- 나중에 본인의 레파지토리에 저장할 경우를 대비해 .git 폴더 지우기
|
||||
|
||||
```sh
|
||||
rm -rf ~/.config/nvim/.git
|
||||
```
|
||||
|
||||
- Neovim!
|
||||
|
||||
```sh
|
||||
nvim
|
||||
```
|
||||
|
||||
LazyVim를 커스터마이징 하는 법에 대해 다룬 설명을 참조해주시기 바랍니다.
|
||||
|
||||
</details>
|
||||
|
||||
---
|
||||
|
||||
유튜브에 LazyVim시작하기에 대해 [@elijahmanor](https://github.com/elijahmanor)에 의해 만들어진 영상이 있으니, 시청해 보시는 것을 추천드립니다.
|
||||
|
||||
[](https://www.youtube.com/watch?v=N93cTbtLCIM)
|
||||
|
||||
## 📂 파일 구조
|
||||
|
||||
config 폴더 안에 있는 모든 파일들은 적절한 시간내에 자동으로 로드가 되기에, 아무 파일도 require를 하지 않아도 됩니다. **LazyVim**은 config폴더 안에 있는 모든 기본 파일들을 당신의 config 파일들 **전**에 불어옵니다. 이것에 대해서는, [이 문서](https://github.com/LazyVim/LazyVim/tree/main/lua/lazyvim/config)를 확인해 보시기 바랍니다.
|
||||
|
||||
추가적인 플러그인을 설치하시거나, 미리 설치되고 설정된 플러그인들을 또 덮어서 설정을 바꾸거나, 지우거나, 추가하고 싶으실 경우에는, 그에 해당하는 lua 파일들을 `lua/plugins` 폴더 안에 추가하시면, lazy.nvim이 자동적으로 그 파일들을 로드 할 것입니다.
|
||||
|
||||
<pre>
|
||||
~/.config/nvim
|
||||
├── lua
|
||||
│ ├── config
|
||||
│ │ ├── autocmds.lua
|
||||
│ │ ├── keymaps.lua
|
||||
│ │ ├── lazy.lua
|
||||
│ │ └── options.lua
|
||||
│ └── plugins
|
||||
│ ├── spec1.lua
|
||||
│ ├── **
|
||||
│ └── spec2.lua
|
||||
└── init.lua
|
||||
</pre>
|
||||
|
||||
## ⚙️ 설정
|
||||
|
||||
[Lazyvim 공식문서](https://lazyvim.github.io)를 확인해 주시기 바랍니다.
|
||||
|
||||
LazyVim 공식문서의 한국어 지원은 현재 번역 중에 있습니다.
|
146
README-PT.md
Normal file
146
README-PT.md
Normal file
@ -0,0 +1,146 @@
|
||||
<div align="center">
|
||||
<img src="https://user-images.githubusercontent.com/292349/213446185-2db63fd5-8c84-459c-9f04-e286382d6e80.png">
|
||||
</div>
|
||||
|
||||
<hr>
|
||||
|
||||
<h4 align="center">
|
||||
<a href="https://lazyvim.github.io/installation">Instalar</a>
|
||||
·
|
||||
<a href="https://lazyvim.github.io/configuration">Configurar</a>
|
||||
·
|
||||
<a href="https://lazyvim.github.io">Documentação</a>
|
||||
</h4>
|
||||
|
||||
<div align="center"><p>
|
||||
<a href="https://github.com/LazyVim/LazyVim/releases/latest">
|
||||
<img alt="Latest release" src="https://img.shields.io/github/v/release/LazyVim/LazyVim?style=for-the-badge&logo=starship&color=C9CBFF&logoColor=D9E0EE&labelColor=302D41&include_prerelease&sort=semver" />
|
||||
</a>
|
||||
<a href="https://github.com/LazyVim/LazyVim/pulse">
|
||||
<img alt="Last commit" src="https://img.shields.io/github/last-commit/LazyVim/LazyVim?style=for-the-badge&logo=starship&color=8bd5ca&logoColor=D9E0EE&labelColor=302D41"/>
|
||||
</a>
|
||||
<a href="https://github.com/LazyVim/LazyVim/blob/main/LICENSE">
|
||||
<img alt="License" src="https://img.shields.io/github/license/LazyVim/LazyVim?style=for-the-badge&logo=starship&color=ee999f&logoColor=D9E0EE&labelColor=302D41" />
|
||||
</a>
|
||||
<a href="https://github.com/LazyVim/LazyVim/stargazers">
|
||||
<img alt="Stars" src="https://img.shields.io/github/stars/LazyVim/LazyVim?style=for-the-badge&logo=starship&color=c69ff5&logoColor=D9E0EE&labelColor=302D41" />
|
||||
</a>
|
||||
<a href="https://github.com/LazyVim/LazyVim/issues">
|
||||
<img alt="Issues" src="https://img.shields.io/github/issues/LazyVim/LazyVim?style=for-the-badge&logo=bilibili&color=F5E0DC&logoColor=D9E0EE&labelColor=302D41" />
|
||||
</a>
|
||||
<a href="https://github.com/LazyVim/LazyVim">
|
||||
<img alt="Repo Size" src="https://img.shields.io/github/repo-size/LazyVim/LazyVim?color=%23DDB6F2&label=SIZE&logo=codesandbox&style=for-the-badge&logoColor=D9E0EE&labelColor=302D41" />
|
||||
</a>
|
||||
<a href="https://twitter.com/intent/follow?screen_name=folke">
|
||||
<img alt="follow on Twitter" src="https://img.shields.io/twitter/follow/folke?style=for-the-badge&logo=twitter&color=8aadf3&logoColor=D9E0EE&labelColor=302D41" />
|
||||
</a>
|
||||
</div>
|
||||
|
||||
LazyVim é uma configuração de Neovim potenciada por [💤 lazy.nvim](https://github.com/folke/lazy.nvim)
|
||||
para tornar fácil customizar e extender a tua configuração.
|
||||
Em vez de ter de escolher entre começar de raiz ou usar
|
||||
uma distribuição pré-feita, LazyVim oferece o melhor
|
||||
dos dois mundos - a flexibilidade de alterar a tua configuração
|
||||
como necessário, junto com a conveniência de um setup pré-configurado.
|
||||
|
||||

|
||||
|
||||

|
||||
|
||||
## ✨ Características
|
||||
|
||||
- 🔥 Transforma o teu Neovim num IDE completo.
|
||||
- 💤 Customiza e extende a tua configuração facilmente com [lazy.nvim](https://github.com/folke/lazy.nvim)
|
||||
- 🚀 Super rápido
|
||||
- 🧹 Definições comuns para options, autocms e keymaps
|
||||
- 📦 Contém uma variedade de plugins pré-configurados e preparados a usar
|
||||
|
||||
## ⚡️ Requesitos
|
||||
|
||||
- Neovim >= **0.9.0** (preciso fazer build com **LuaJIT**)
|
||||
- Git >= **2.19.0** (para suporte parcial de clones)
|
||||
- uma [Nerd Font](https://www.nerdfonts.com/) **_(opcional)_**
|
||||
- um compilador de **C** para `nvim-treesitter`. Mais informações [aqui](https://github.com/nvim-treesitter/nvim-treesitter#requirements)
|
||||
|
||||
## 🚀 Como Começar
|
||||
|
||||
Podes encontrar uma template **LazyVim** starter para começar, [aqui](https://github.com/LazyVim/starter)
|
||||
|
||||
<details><summary>Experimenta com docker</summary>
|
||||
|
||||
```sh
|
||||
docker run -w /root -it --rm alpine:edge sh -uelic '
|
||||
apk add git lazygit neovim ripgrep alpine-sdk --update
|
||||
git clone https://github.com/LazyVim/starter ~/.config/nvim
|
||||
cd ~/.config/nvim
|
||||
nvim
|
||||
'
|
||||
```
|
||||
|
||||
</details>
|
||||
|
||||
<details><summary>Instala a template <a href="https://github.com/LazyVim/starter">LazyVim Starter</a></summary>
|
||||
|
||||
- Faz um backup da tua configuração atual de Neovim:
|
||||
|
||||
```sh
|
||||
mv ~/.config/nvim ~/.config/nvim.bak
|
||||
mv ~/.local/share/nvim ~/.local/share/nvim.bak
|
||||
```
|
||||
|
||||
- Clona a template
|
||||
|
||||
```sh
|
||||
git clone https://github.com/LazyVim/starter ~/.config/nvim
|
||||
```
|
||||
|
||||
- Remove o diretório `.git`, para poderes adicionar ao teu próprio repositório mais tarde
|
||||
|
||||
```sh
|
||||
rm -rf ~/.config/nvim/.git
|
||||
```
|
||||
|
||||
- Inicia o Neovim!
|
||||
|
||||
```sh
|
||||
nvim
|
||||
```
|
||||
|
||||
Consulta os comentários nos ficheiros sobre como customizar **LazyVim**.
|
||||
|
||||
</details>
|
||||
|
||||
---
|
||||
|
||||
Existe um excelente video criado por [@elijahmanor](https://github.com/elijahmanor) com um passo a passo para começar.
|
||||
|
||||
[](https://www.youtube.com/watch?v=N93cTbtLCIM)
|
||||
|
||||
## 📂 Extrutura de ficheiros
|
||||
|
||||
Os ficheiros no diretório **config** serão carregados automaticamente
|
||||
no momento apropriado, por isso não é necessário carregar os plugins manualmente.
|
||||
**LazyVim** vem com um conjunto de ficheiros
|
||||
que serão carregados **_antes_** dos teus. Lẽ mais [aqui](https://github.com/LazyVim/LazyVim/tree/main/lua/lazyvim/config)
|
||||
|
||||
Tu podes acrescentar a tua configuração em `lua/plugins`. Todos os ficheiros
|
||||
neste diretório serão carregados automaticamente por [lazy.nvim](https://github.com/folke/lazy.nvim)
|
||||
|
||||
<pre>
|
||||
~/.config/nvim
|
||||
├── lua
|
||||
│ ├── config
|
||||
│ │ ├── autocmds.lua
|
||||
│ │ ├── keymaps.lua
|
||||
│ │ ├── lazy.lua
|
||||
│ │ └── options.lua
|
||||
│ └── plugins
|
||||
│ ├── spec1.lua
|
||||
│ ├── **
|
||||
│ └── spec2.lua
|
||||
└── init.lua
|
||||
</pre>
|
||||
|
||||
## ⚙️ Configuração
|
||||
|
||||
Consulta a [documentação](https://lazyvim.github.io)
|
@ -115,6 +115,10 @@ There's a great video created by [@elijahmanor](https://github.com/elijahmanor)
|
||||
|
||||
[](https://www.youtube.com/watch?v=N93cTbtLCIM)
|
||||
|
||||
[@dusty-phillips](https://github.com/dusty-phillips) is working on a book called
|
||||
[LazyVim for Ambitious Developers](https://lazyvim-ambitious-devs.phillips.codes)
|
||||
available for free online.
|
||||
|
||||
## 📂 File Structure
|
||||
|
||||
The files under config will be automatically loaded at the appropriate time,
|
||||
|
@ -1,4 +1,4 @@
|
||||
*LazyVim.txt* For Neovim >= 0.9.0 Last change: 2024 May 27
|
||||
*LazyVim.txt* For Neovim Last change: 2024 July 18
|
||||
|
||||
==============================================================================
|
||||
Table of Contents *LazyVim-table-of-contents*
|
||||
@ -102,6 +102,10 @@ There’s a great video created by @elijahmanor
|
||||
|
||||
<https://www.youtube.com/watch?v=N93cTbtLCIM>
|
||||
|
||||
@dusty-phillips <https://github.com/dusty-phillips> is working on a book called
|
||||
LazyVim for Ambitious Developers
|
||||
<https://lazyvim-ambitious-devs.phillips.codes> available for free online.
|
||||
|
||||
|
||||
FILE STRUCTURE *LazyVim-file-structure*
|
||||
|
||||
@ -125,6 +129,7 @@ Refer to the docs <https://lazyvim.github.io>
|
||||
2. *image*: https://user-images.githubusercontent.com/292349/213447056-92290767-ea16-430c-8727-ce994c93e9cc.png
|
||||
3. *@elijahmanor*:
|
||||
4. *Watch the video*: https://img.youtube.com/vi/N93cTbtLCIM/hqdefault.jpg
|
||||
5. *@dusty-phillips*:
|
||||
|
||||
Generated by panvimdoc <https://github.com/kdheepak/panvimdoc>
|
||||
|
||||
|
@ -66,10 +66,16 @@ vim.api.nvim_create_autocmd("FileType", {
|
||||
"checkhealth",
|
||||
"neotest-summary",
|
||||
"neotest-output-panel",
|
||||
"dbout",
|
||||
"gitsigns.blame",
|
||||
},
|
||||
callback = function(event)
|
||||
vim.bo[event.buf].buflisted = false
|
||||
vim.keymap.set("n", "q", "<cmd>close<cr>", { buffer = event.buf, silent = true })
|
||||
vim.keymap.set("n", "q", "<cmd>close<cr>", {
|
||||
buffer = event.buf,
|
||||
silent = true,
|
||||
desc = "Quit buffer",
|
||||
})
|
||||
end,
|
||||
})
|
||||
|
||||
@ -85,7 +91,7 @@ vim.api.nvim_create_autocmd("FileType", {
|
||||
-- wrap and check for spell in text filetypes
|
||||
vim.api.nvim_create_autocmd("FileType", {
|
||||
group = augroup("wrap_spell"),
|
||||
pattern = { "gitcommit", "markdown" },
|
||||
pattern = { "text", "plaintex", "typst", "gitcommit", "markdown" },
|
||||
callback = function()
|
||||
vim.opt_local.wrap = true
|
||||
vim.opt_local.spell = true
|
||||
@ -112,3 +118,29 @@ vim.api.nvim_create_autocmd({ "BufWritePre" }, {
|
||||
vim.fn.mkdir(vim.fn.fnamemodify(file, ":p:h"), "p")
|
||||
end,
|
||||
})
|
||||
|
||||
vim.filetype.add({
|
||||
pattern = {
|
||||
[".*"] = {
|
||||
function(path, buf)
|
||||
return vim.bo[buf]
|
||||
and vim.bo[buf].filetype ~= "bigfile"
|
||||
and path
|
||||
and vim.fn.getfsize(path) > vim.g.bigfile_size
|
||||
and "bigfile"
|
||||
or nil
|
||||
end,
|
||||
},
|
||||
},
|
||||
})
|
||||
|
||||
vim.api.nvim_create_autocmd({ "FileType" }, {
|
||||
group = augroup("bigfile"),
|
||||
pattern = "bigfile",
|
||||
callback = function(ev)
|
||||
vim.b.minianimate_disable = true
|
||||
vim.schedule(function()
|
||||
vim.bo[ev.buf].syntax = vim.filetype.match({ buf = ev.buf }) or ""
|
||||
end)
|
||||
end,
|
||||
})
|
||||
|
@ -3,7 +3,7 @@ _G.LazyVim = require("lazyvim.util")
|
||||
---@class LazyVimConfig: LazyVimOptions
|
||||
local M = {}
|
||||
|
||||
M.version = "10.21.1" -- x-release-please-version
|
||||
M.version = "12.32.0" -- x-release-please-version
|
||||
LazyVim.config = M
|
||||
|
||||
---@class LazyVimOptions
|
||||
@ -33,6 +33,9 @@ local defaults = {
|
||||
misc = {
|
||||
dots = "",
|
||||
},
|
||||
ft = {
|
||||
octo = "",
|
||||
},
|
||||
dap = {
|
||||
Stopped = { " ", "DiagnosticWarn", "DapStoppedLine" },
|
||||
Breakpoint = " ",
|
||||
@ -132,7 +135,8 @@ local defaults = {
|
||||
}
|
||||
|
||||
M.json = {
|
||||
version = 5,
|
||||
version = 6,
|
||||
path = vim.g.lazyvim_json or vim.fn.stdpath("config") .. "/lazyvim.json",
|
||||
data = {
|
||||
version = nil, ---@type string?
|
||||
news = {}, ---@type table<string, string>
|
||||
@ -141,8 +145,7 @@ M.json = {
|
||||
}
|
||||
|
||||
function M.json.load()
|
||||
local path = vim.fn.stdpath("config") .. "/lazyvim.json"
|
||||
local f = io.open(path, "r")
|
||||
local f = io.open(M.json.path, "r")
|
||||
if f then
|
||||
local data = f:read("*a")
|
||||
f:close()
|
||||
@ -245,16 +248,17 @@ function M.load(name)
|
||||
end, { msg = "Failed loading " .. mod })
|
||||
end
|
||||
end
|
||||
local pattern = "LazyVim" .. name:sub(1, 1):upper() .. name:sub(2)
|
||||
-- always load lazyvim, then user file
|
||||
if M.defaults[name] or name == "options" then
|
||||
_load("lazyvim.config." .. name)
|
||||
vim.api.nvim_exec_autocmds("User", { pattern = pattern .. "Defaults", modeline = false })
|
||||
end
|
||||
_load("config." .. name)
|
||||
if vim.bo.filetype == "lazy" then
|
||||
-- HACK: LazyVim may have overwritten options of the Lazy ui, so reset this here
|
||||
vim.cmd([[do VimResized]])
|
||||
end
|
||||
local pattern = "LazyVim" .. name:sub(1, 1):upper() .. name:sub(2)
|
||||
vim.api.nvim_exec_autocmds("User", { pattern = pattern, modeline = false })
|
||||
end
|
||||
|
||||
|
@ -75,6 +75,10 @@ map("n", "<leader>K", "<cmd>norm! K<cr>", { desc = "Keywordprg" })
|
||||
map("v", "<", "<gv")
|
||||
map("v", ">", ">gv")
|
||||
|
||||
-- commenting
|
||||
map("n", "gco", "o<esc>Vcx<esc><cmd>normal gcc<cr>fxa<bs>", { desc = "Add Comment Below" })
|
||||
map("n", "gcO", "O<esc>Vcx<esc><cmd>normal gcc<cr>fxa<bs>", { desc = "Add Comment Above" })
|
||||
|
||||
-- lazy
|
||||
map("n", "<leader>l", "<cmd>Lazy<cr>", { desc = "Lazy" })
|
||||
|
||||
@ -111,25 +115,25 @@ map("n", "[w", diagnostic_goto(false, "WARN"), { desc = "Prev Warning" })
|
||||
-- stylua: ignore start
|
||||
|
||||
-- toggle options
|
||||
map("n", "<leader>uf", function() LazyVim.format.toggle() end, { desc = "Toggle Auto Format (Global)" })
|
||||
map("n", "<leader>uF", function() LazyVim.format.toggle(true) end, { desc = "Toggle Auto Format (Buffer)" })
|
||||
map("n", "<leader>us", function() LazyVim.toggle("spell") end, { desc = "Toggle Spelling" })
|
||||
map("n", "<leader>uw", function() LazyVim.toggle("wrap") end, { desc = "Toggle Word Wrap" })
|
||||
map("n", "<leader>uL", function() LazyVim.toggle("relativenumber") end, { desc = "Toggle Relative Line Numbers" })
|
||||
map("n", "<leader>ul", function() LazyVim.toggle.number() end, { desc = "Toggle Line Numbers" })
|
||||
map("n", "<leader>ud", function() LazyVim.toggle.diagnostics() end, { desc = "Toggle Diagnostics" })
|
||||
local conceallevel = vim.o.conceallevel > 0 and vim.o.conceallevel or 3
|
||||
map("n", "<leader>uc", function() LazyVim.toggle("conceallevel", false, {0, conceallevel}) end, { desc = "Toggle Conceal" })
|
||||
if vim.lsp.buf.inlay_hint or vim.lsp.inlay_hint then
|
||||
map( "n", "<leader>uh", function() LazyVim.toggle.inlay_hints() end, { desc = "Toggle Inlay Hints" })
|
||||
LazyVim.toggle.map("<leader>uf", LazyVim.toggle.format())
|
||||
LazyVim.toggle.map("<leader>uF", LazyVim.toggle.format(true))
|
||||
LazyVim.toggle.map("<leader>us", LazyVim.toggle("spell", { name = "Spelling" }))
|
||||
LazyVim.toggle.map("<leader>uw", LazyVim.toggle("wrap", { name = "Wrap" }))
|
||||
LazyVim.toggle.map("<leader>uL", LazyVim.toggle("relativenumber", { name = "Relative Number" }))
|
||||
LazyVim.toggle.map("<leader>ud", LazyVim.toggle.diagnostics)
|
||||
LazyVim.toggle.map("<leader>ul", LazyVim.toggle.number)
|
||||
LazyVim.toggle.map( "<leader>uc", LazyVim.toggle("conceallevel", { values = { 0, vim.o.conceallevel > 0 and vim.o.conceallevel or 2 } }))
|
||||
LazyVim.toggle.map("<leader>uT", LazyVim.toggle.treesitter)
|
||||
LazyVim.toggle.map("<leader>ub", LazyVim.toggle("background", { values = { "light", "dark" }, name = "Background" }))
|
||||
if vim.lsp.inlay_hint then
|
||||
LazyVim.toggle.map("<leader>uh", LazyVim.toggle.inlay_hints)
|
||||
end
|
||||
map("n", "<leader>uT", function() if vim.b.ts_highlight then vim.treesitter.stop() else vim.treesitter.start() end end, { desc = "Toggle Treesitter Highlight" })
|
||||
map("n", "<leader>ub", function() LazyVim.toggle("background", false, {"light", "dark"}) end, { desc = "Toggle Background" })
|
||||
|
||||
-- lazygit
|
||||
map("n", "<leader>gg", function() LazyVim.lazygit( { cwd = LazyVim.root.git() }) end, { desc = "Lazygit (Root Dir)" })
|
||||
map("n", "<leader>gG", function() LazyVim.lazygit() end, { desc = "Lazygit (cwd)" })
|
||||
map("n", "<leader>gb", LazyVim.lazygit.blame_line, { desc = "Git Blame Line" })
|
||||
map("n", "<leader>gB", LazyVim.lazygit.browse, { desc = "Git Browse" })
|
||||
|
||||
map("n", "<leader>gf", function()
|
||||
local git_path = vim.api.nvim_buf_get_name(0)
|
||||
@ -137,8 +141,11 @@ map("n", "<leader>gf", function()
|
||||
end, { desc = "Lazygit Current File History" })
|
||||
|
||||
map("n", "<leader>gl", function()
|
||||
LazyVim.lazygit({ args = { "log" } })
|
||||
LazyVim.lazygit({ args = { "log" }, cwd = LazyVim.root.git() })
|
||||
end, { desc = "Lazygit Log" })
|
||||
map("n", "<leader>gL", function()
|
||||
LazyVim.lazygit({ args = { "log" } })
|
||||
end, { desc = "Lazygit Log (cwd)" })
|
||||
|
||||
-- quit
|
||||
map("n", "<leader>qq", "<cmd>qa<cr>", { desc = "Quit All" })
|
||||
@ -167,15 +174,15 @@ map("t", "<C-/>", "<cmd>close<cr>", { desc = "Hide Terminal" })
|
||||
map("t", "<c-_>", "<cmd>close<cr>", { desc = "which_key_ignore" })
|
||||
|
||||
-- windows
|
||||
map("n", "<leader>ww", "<C-W>p", { desc = "Other Window", remap = true })
|
||||
map("n", "<leader>wd", "<C-W>c", { desc = "Delete Window", remap = true })
|
||||
map("n", "<leader>w-", "<C-W>s", { desc = "Split Window Below", remap = true })
|
||||
map("n", "<leader>w|", "<C-W>v", { desc = "Split Window Right", remap = true })
|
||||
map("n", "<leader>w", "<c-w>", { desc = "Windows", remap = true })
|
||||
map("n", "<leader>-", "<C-W>s", { desc = "Split Window Below", remap = true })
|
||||
map("n", "<leader>|", "<C-W>v", { desc = "Split Window Right", remap = true })
|
||||
map("n", "<c-w>d", "<C-W>c", { desc = "Delete Window", remap = true })
|
||||
LazyVim.toggle.map("<c-w>m", LazyVim.toggle.maximize)
|
||||
|
||||
-- tabs
|
||||
map("n", "<leader><tab>l", "<cmd>tablast<cr>", { desc = "Last Tab" })
|
||||
map("n", "<leader><tab>o", "<cmd>tabonly<cr>", { desc = "Close Other Tabs" })
|
||||
map("n", "<leader><tab>f", "<cmd>tabfirst<cr>", { desc = "First Tab" })
|
||||
map("n", "<leader><tab><tab>", "<cmd>tabnew<cr>", { desc = "New Tab" })
|
||||
map("n", "<leader><tab>]", "<cmd>tabnext<cr>", { desc = "Next Tab" })
|
||||
|
@ -5,6 +5,12 @@ vim.g.maplocalleader = "\\"
|
||||
-- LazyVim auto format
|
||||
vim.g.autoformat = true
|
||||
|
||||
-- LazyVim picker to use.
|
||||
-- Can be one of: telescope, fzf
|
||||
-- Leave it to "auto" to automatically use the picker
|
||||
-- enabled with `:LazyExtras`
|
||||
vim.g.lazyvim_picker = "auto"
|
||||
|
||||
-- LazyVim root dir detection
|
||||
-- Each entry can be:
|
||||
-- * the name of a detector function like `lsp` or `cwd`
|
||||
@ -19,6 +25,12 @@ vim.g.root_spec = { "lsp", { ".git", "lua" }, "cwd" }
|
||||
-- Set to false to disable.
|
||||
vim.g.lazygit_config = true
|
||||
|
||||
-- Options for the LazyVim statuscolumn
|
||||
vim.g.lazyvim_statuscolumn = {
|
||||
folds_open = false, -- show fold sign when fold is open
|
||||
folds_githl = false, -- highlight fold sign with git sign color
|
||||
}
|
||||
|
||||
-- Optionally setup the terminal to use
|
||||
-- This sets `vim.o.shell` and does some additional configuration for:
|
||||
-- * pwsh
|
||||
@ -28,6 +40,15 @@ vim.g.lazygit_config = true
|
||||
-- Hide deprecation warnings
|
||||
vim.g.deprecation_warnings = false
|
||||
|
||||
-- Set filetype to `bigfile` for files larger than 1.5 MB
|
||||
-- Only vim syntax will be enabled (with the correct filetype)
|
||||
-- LSP, treesitter and other ft plugins will be disabled.
|
||||
-- mini.animate will also be disabled.
|
||||
vim.g.bigfile_size = 1024 * 1024 * 1.5 -- 1.5 MB
|
||||
|
||||
-- Show the current document symbols location from Trouble in lualine
|
||||
vim.g.trouble_lualine = true
|
||||
|
||||
local opt = vim.opt
|
||||
|
||||
opt.autowrite = true -- Enable auto write
|
||||
@ -54,7 +75,9 @@ opt.grepformat = "%f:%l:%c:%m"
|
||||
opt.grepprg = "rg --vimgrep"
|
||||
opt.ignorecase = true -- Ignore case
|
||||
opt.inccommand = "nosplit" -- preview incremental substitute
|
||||
opt.jumpoptions = "view"
|
||||
opt.laststatus = 3 -- global statusline
|
||||
opt.linebreak = true -- Wrap lines at convenient points
|
||||
opt.list = true -- Show some invisible characters (tabs...
|
||||
opt.mouse = "a" -- Enable mouse mode
|
||||
opt.number = true -- Print line number
|
||||
@ -72,6 +95,7 @@ opt.signcolumn = "yes" -- Always show the signcolumn, otherwise it would shift t
|
||||
opt.smartcase = true -- Don't ignore case with capitals
|
||||
opt.smartindent = true -- Insert indents automatically
|
||||
opt.spelllang = { "en" }
|
||||
opt.spelloptions:append("noplainbuffer")
|
||||
opt.splitbelow = true -- Put new windows below current
|
||||
opt.splitkeep = "screen"
|
||||
opt.splitright = true -- Put new windows right of current
|
||||
|
@ -19,24 +19,23 @@ return {
|
||||
-- auto_brackets = { "python" }
|
||||
-- }
|
||||
-- ```
|
||||
|
||||
opts = function()
|
||||
vim.api.nvim_set_hl(0, "CmpGhostText", { link = "Comment", default = true })
|
||||
local cmp = require("cmp")
|
||||
local defaults = require("cmp.config.default")()
|
||||
local auto_select = true
|
||||
return {
|
||||
auto_brackets = {}, -- configure any filetype to auto add brackets
|
||||
completion = {
|
||||
completeopt = "menu,menuone,noinsert",
|
||||
completeopt = "menu,menuone,noinsert" .. (auto_select and "" or ",noselect"),
|
||||
},
|
||||
preselect = auto_select and cmp.PreselectMode.Item or cmp.PreselectMode.None,
|
||||
mapping = cmp.mapping.preset.insert({
|
||||
["<C-n>"] = cmp.mapping.select_next_item({ behavior = cmp.SelectBehavior.Insert }),
|
||||
["<C-p>"] = cmp.mapping.select_prev_item({ behavior = cmp.SelectBehavior.Insert }),
|
||||
["<C-b>"] = cmp.mapping.scroll_docs(-4),
|
||||
["<C-f>"] = cmp.mapping.scroll_docs(4),
|
||||
["<C-Space>"] = cmp.mapping.complete(),
|
||||
["<C-e>"] = cmp.mapping.abort(),
|
||||
["<CR>"] = LazyVim.cmp.confirm(),
|
||||
["<CR>"] = LazyVim.cmp.confirm({ select = auto_select }),
|
||||
["<C-y>"] = LazyVim.cmp.confirm({ select = true }),
|
||||
["<S-CR>"] = LazyVim.cmp.confirm({ behavior = cmp.ConfirmBehavior.Replace }), -- Accept currently selected item. Set `select` to `false` to only confirm explicitly selected items.
|
||||
["<C-CR>"] = function(fallback)
|
||||
cmp.abort()
|
||||
@ -50,11 +49,23 @@ return {
|
||||
{ name = "buffer" },
|
||||
}),
|
||||
formatting = {
|
||||
format = function(_, item)
|
||||
local icons = require("lazyvim.config").icons.kinds
|
||||
format = function(entry, item)
|
||||
local icons = LazyVim.config.icons.kinds
|
||||
if icons[item.kind] then
|
||||
item.kind = icons[item.kind] .. item.kind
|
||||
end
|
||||
|
||||
local widths = {
|
||||
abbr = vim.g.cmp_widths and vim.g.cmp_widths.abbr or 40,
|
||||
menu = vim.g.cmp_widths and vim.g.cmp_widths.menu or 30,
|
||||
}
|
||||
|
||||
for key, width in pairs(widths) do
|
||||
if item[key] and vim.fn.strdisplaywidth(item[key]) > width then
|
||||
item[key] = vim.fn.strcharpart(item[key], 0, width - 1) .. "…"
|
||||
end
|
||||
end
|
||||
|
||||
return item
|
||||
end,
|
||||
},
|
||||
@ -66,102 +77,72 @@ return {
|
||||
sorting = defaults.sorting,
|
||||
}
|
||||
end,
|
||||
---@param opts cmp.ConfigSchema | {auto_brackets?: string[]}
|
||||
config = function(_, opts)
|
||||
for _, source in ipairs(opts.sources) do
|
||||
source.group_index = source.group_index or 1
|
||||
end
|
||||
|
||||
local parse = require("cmp.utils.snippet").parse
|
||||
require("cmp.utils.snippet").parse = function(input)
|
||||
local ok, ret = pcall(parse, input)
|
||||
if ok then
|
||||
return ret
|
||||
end
|
||||
return LazyVim.cmp.snippet_preview(input)
|
||||
end
|
||||
|
||||
local cmp = require("cmp")
|
||||
cmp.setup(opts)
|
||||
cmp.event:on("confirm_done", function(event)
|
||||
if vim.tbl_contains(opts.auto_brackets or {}, vim.bo.filetype) then
|
||||
LazyVim.cmp.auto_brackets(event.entry)
|
||||
end
|
||||
end)
|
||||
cmp.event:on("menu_opened", function(event)
|
||||
LazyVim.cmp.add_missing_snippet_docs(event.window)
|
||||
end)
|
||||
end,
|
||||
main = "lazyvim.util.cmp",
|
||||
},
|
||||
|
||||
-- snippets
|
||||
vim.fn.has("nvim-0.10") == 1
|
||||
and {
|
||||
"nvim-cmp",
|
||||
dependencies = {
|
||||
{
|
||||
"garymjr/nvim-snippets",
|
||||
opts = {
|
||||
friendly_snippets = true,
|
||||
global_snippets = { "all", "global" },
|
||||
},
|
||||
dependencies = { "rafamadriz/friendly-snippets" },
|
||||
},
|
||||
{
|
||||
"nvim-cmp",
|
||||
dependencies = {
|
||||
{
|
||||
"garymjr/nvim-snippets",
|
||||
opts = {
|
||||
friendly_snippets = true,
|
||||
},
|
||||
opts = function(_, opts)
|
||||
opts.snippet = {
|
||||
expand = function(item)
|
||||
return LazyVim.cmp.expand(item.body)
|
||||
end,
|
||||
}
|
||||
table.insert(opts.sources, { name = "snippets" })
|
||||
dependencies = { "rafamadriz/friendly-snippets" },
|
||||
},
|
||||
},
|
||||
opts = function(_, opts)
|
||||
opts.snippet = {
|
||||
expand = function(item)
|
||||
return LazyVim.cmp.expand(item.body)
|
||||
end,
|
||||
keys = {
|
||||
{
|
||||
"<Tab>",
|
||||
function()
|
||||
return vim.snippet.active({ direction = 1 }) and "<cmd>lua vim.snippet.jump(1)<cr>" or "<Tab>"
|
||||
end,
|
||||
expr = true,
|
||||
silent = true,
|
||||
mode = { "i", "s" },
|
||||
},
|
||||
{
|
||||
"<S-Tab>",
|
||||
function()
|
||||
return vim.snippet.active({ direction = -1 }) and "<cmd>lua vim.snippet.jump(-1)<cr>" or "<Tab>"
|
||||
end,
|
||||
expr = true,
|
||||
silent = true,
|
||||
mode = { "i", "s" },
|
||||
},
|
||||
},
|
||||
}
|
||||
or { import = "lazyvim.plugins.extras.coding.luasnip", enabled = vim.fn.has("nvim-0.10") == 0 },
|
||||
if LazyVim.has("nvim-snippets") then
|
||||
table.insert(opts.sources, { name = "snippets" })
|
||||
end
|
||||
end,
|
||||
keys = {
|
||||
{
|
||||
"<Tab>",
|
||||
function()
|
||||
return vim.snippet.active({ direction = 1 }) and "<cmd>lua vim.snippet.jump(1)<cr>" or "<Tab>"
|
||||
end,
|
||||
expr = true,
|
||||
silent = true,
|
||||
mode = { "i", "s" },
|
||||
},
|
||||
{
|
||||
"<S-Tab>",
|
||||
function()
|
||||
return vim.snippet.active({ direction = -1 }) and "<cmd>lua vim.snippet.jump(-1)<cr>" or "<S-Tab>"
|
||||
end,
|
||||
expr = true,
|
||||
silent = true,
|
||||
mode = { "i", "s" },
|
||||
},
|
||||
},
|
||||
},
|
||||
|
||||
-- auto pairs
|
||||
{
|
||||
"echasnovski/mini.pairs",
|
||||
event = "VeryLazy",
|
||||
opts = {
|
||||
mappings = {
|
||||
["`"] = { action = "closeopen", pair = "``", neigh_pattern = "[^\\`].", register = { cr = false } },
|
||||
},
|
||||
},
|
||||
keys = {
|
||||
{
|
||||
"<leader>up",
|
||||
function()
|
||||
vim.g.minipairs_disable = not vim.g.minipairs_disable
|
||||
if vim.g.minipairs_disable then
|
||||
LazyVim.warn("Disabled auto pairs", { title = "Option" })
|
||||
else
|
||||
LazyVim.info("Enabled auto pairs", { title = "Option" })
|
||||
end
|
||||
end,
|
||||
desc = "Toggle Auto Pairs",
|
||||
},
|
||||
modes = { insert = true, command = true, terminal = false },
|
||||
-- skip autopair when next character is one of these
|
||||
skip_next = [=[[%w%%%'%[%"%.%`%$]]=],
|
||||
-- skip autopair when the cursor is inside these treesitter nodes
|
||||
skip_ts = { "string" },
|
||||
-- skip autopair when next character is closing pair
|
||||
-- and there are more closing pairs than opening pairs
|
||||
skip_unbalanced = true,
|
||||
-- better deal with markdown code blocks
|
||||
markdown = true,
|
||||
},
|
||||
config = function(_, opts)
|
||||
LazyVim.mini.pairs(opts)
|
||||
end,
|
||||
},
|
||||
|
||||
-- comments
|
||||
@ -169,11 +150,6 @@ return {
|
||||
"folke/ts-comments.nvim",
|
||||
event = "VeryLazy",
|
||||
opts = {},
|
||||
enabled = vim.fn.has("nvim-0.10") == 1,
|
||||
},
|
||||
{
|
||||
import = "lazyvim.plugins.extras.coding.mini-comment",
|
||||
enabled = vim.fn.has("nvim-0.10") == 0,
|
||||
},
|
||||
|
||||
-- Better text-objects
|
||||
@ -181,9 +157,6 @@ return {
|
||||
"echasnovski/mini.ai",
|
||||
event = "VeryLazy",
|
||||
opts = function()
|
||||
LazyVim.on_load("which-key.nvim", function()
|
||||
vim.schedule(LazyVim.mini.ai_whichkey)
|
||||
end)
|
||||
local ai = require("mini.ai")
|
||||
return {
|
||||
n_lines = 500,
|
||||
@ -207,5 +180,35 @@ return {
|
||||
},
|
||||
}
|
||||
end,
|
||||
config = function(_, opts)
|
||||
require("mini.ai").setup(opts)
|
||||
LazyVim.on_load("which-key.nvim", function()
|
||||
vim.schedule(function()
|
||||
LazyVim.mini.ai_whichkey(opts)
|
||||
end)
|
||||
end)
|
||||
end,
|
||||
},
|
||||
|
||||
{
|
||||
"folke/lazydev.nvim",
|
||||
ft = "lua",
|
||||
cmd = "LazyDev",
|
||||
opts = {
|
||||
library = {
|
||||
{ path = "luvit-meta/library", words = { "vim%.uv" } },
|
||||
{ path = "LazyVim", words = { "LazyVim" } },
|
||||
{ path = "lazy.nvim", words = { "LazyVim" } },
|
||||
},
|
||||
},
|
||||
},
|
||||
-- Manage libuv types with lazy. Plugin will never be loaded
|
||||
{ "Bilal2453/luvit-meta", lazy = true },
|
||||
-- Add lazydev source to cmp
|
||||
{
|
||||
"hrsh7th/nvim-cmp",
|
||||
opts = function(_, opts)
|
||||
table.insert(opts.sources, { name = "lazydev", group_index = 0 })
|
||||
end,
|
||||
},
|
||||
}
|
||||
|
38
lua/lazyvim/plugins/compat/nvim-0_9.lua
Normal file
38
lua/lazyvim/plugins/compat/nvim-0_9.lua
Normal file
@ -0,0 +1,38 @@
|
||||
-- Compatibility with Neovim 0.9
|
||||
return {
|
||||
-- Use LuaSnip instead of native snippets
|
||||
{ "garymjr/nvim-snippets", enabled = false },
|
||||
{ import = "lazyvim.plugins.extras.coding.luasnip" },
|
||||
|
||||
-- Use mini.comment instead of ts-comments
|
||||
{ "folke/ts-comments.nvim", enabled = false },
|
||||
{ import = "lazyvim.plugins.extras.coding.mini-comment" },
|
||||
|
||||
-- Use neodev-types with lazydev
|
||||
{ "folke/neodev.nvim", config = function() end },
|
||||
{
|
||||
"folke/lazydev.nvim",
|
||||
opts = function(_, opts)
|
||||
opts.library = opts.library or {}
|
||||
table.insert(opts.library, { "neodev.nvim/types/stable" })
|
||||
end,
|
||||
config = function(_, opts)
|
||||
-- force lazydev to load on Neovim 0.9
|
||||
require("lazydev.config").have_0_10 = true
|
||||
require("lazydev").setup(opts)
|
||||
end,
|
||||
},
|
||||
{
|
||||
"neovim/nvim-lspconfig",
|
||||
dependencies = {},
|
||||
},
|
||||
|
||||
-- dummy import to save core imports
|
||||
{
|
||||
import = "foobar",
|
||||
enabled = function()
|
||||
LazyVim.plugin.save_core()
|
||||
return false
|
||||
end,
|
||||
},
|
||||
}
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user