lazyvim / lazyvim.github.io Goto Github PK
View Code? Open in Web Editor NEWLazyVim Website
LazyVim Website
Switching over from hand crafted vim setup to neovim / LazyVIM and x
not working drove me nuts. Through reddit, I found this was because of leap.nvim which lazy enables but isn't documented.
Having this in the keymaps documentation would have made this more discoverable for resolving it on my own. Granted, searching the keymaps isn't easy for single-letters like x
.
I appreciate all the work that you have put into lazyvim.org. I have become accustomed to going there first when searching for documentation on LazyVim, which I think is the intent of all the effort. So from my perspective, it's been really effective!
I am wondering if you'd be willing to also include the LazyVim news on lazyvim.org. It's the one document I consistently have to traverse to GitHub to look at since it's only available there, or in Neovim on occasional updates to LazyVim the plugin.
The lua snippet provided in https://www.lazyvim.org/configuration/examples contains many helpful examples, but at this current time it seems to raise a few diagnostic errors when added, which may be confusing to new users like myself.
Here's the current 5 diagnostic errors
lua/plugins/example.lua 5
│ Missing required fields in type
`lspconfig.options`: `als`, `astro`, `awkls`, `bashls`, `clangd`, `cssls`,
`dartls`, `denols`, `elixirls`, `elmls`, `eslint`, `flow`, `fsautocomplete`,
`grammarly`, `haxe_language_server`, `hhvm`, `hie`, `html`, `intelephense`,
`java_language_server`, `jdtls`, `jsonls`, `julials`,
`kotlin_language_server`, `ltex`, `lua_ls`, `luau_lsp`, `omnisharp`,
`perlls`, `perlnavigator`, `perlpls`, `powershell_es`, `psalm`, `puppet`,
`purescriptls`, `pylsp`, `r_language_server`, `rescriptls`, `rls`, `rome`,
`rust_analyzer`, `solargraph`, `solidity_ls`, `sorbet`, `sourcekit`,
`spectral`, `stylelint_lsp`, `svelte`, `svlangserver`, `tailwindcss`,
`terraformls`, `tsserver`, `volar`, `vtsls`, `vuels`, `wgls_analyzer`,
`yamlls`, `zeta_note`, `zls` Lua Diagnostics. (missing-fields) [92, 17]
│ Missing required fields in type `lspconfig.options.pyright`: `settings` Lua
Diagnostics. (missing-fields) [94, 19]
│ Undefined field `on_attach`.
Lua Diagnostics. (undefined-field) [105, 33]
│ Missing required fields
in type `lspconfig.options`: `als`, `astro`, `awkls`, `bashls`, `clangd`,
`cssls`, `dartls`, `denols`, `elixirls`, `elmls`, `eslint`, `flow`,
`fsautocomplete`, `grammarly`, `haxe_language_server`, `hhvm`, `hie`,
`html`, `intelephense`, `java_language_server`, `jdtls`, `jsonls`,
`julials`, `kotlin_language_server`, `ltex`, `lua_ls`, `luau_lsp`,
`omnisharp`, `perlls`, `perlnavigator`, `perlpls`, `powershell_es`, `psalm`,
`puppet`, `purescriptls`, `pylsp`, `pyright`, `r_language_server`,
`rescriptls`, `rls`, `rome`, `rust_analyzer`, `solargraph`, `solidity_ls`,
`sorbet`, `sourcekit`, `spectral`, `stylelint_lsp`, `svelte`,
`svlangserver`, `tailwindcss`, `terraformls`, `volar`, `vtsls`, `vuels`,
`wgls_analyzer`, `yamlls`, `zeta_note`, `zls` Lua Diagnostics.
(missing-fields) [115, 17]
│ Missing required fields in type
`lspconfig.options.tsserver`: `settings` Lua Diagnostics. (missing-fields)
[117, 20]
The Extras->lang section of the page lists all supported programming languages. Some of these pages use backticks to present the title, e.g. https://www.lazyvim.org/extras/lang/astro
Some others do not use backticks, e.g.: https://www.lazyvim.org/extras/lang/clangd
You should decide on one styling and apply it uniformly.
The current example for how to add plugins is using the simrat39/symbols-outline.nvim plugin. Since it's been archived, it should no longer be used in any example since new users have a bit of a habit of just copy-pasting whatever they see.
Either we should change this example into something else entirely, or switch to a maintained fork of the plugin.
Just mentioning "automatically loaded" may deserve more explanation.
I think explicitly mentioning vim.tbl_deep_extend("force",...,...)
should remove ambiguity even for novice lua user like me.
I am thinking along ...
The files
autocmds.lua
,keymaps.lua
,lazy.lua
andoptions.lua
underlua/config
will be automatically loaded at the appropriate time, so you don't need to require those files manually. This user override mechanism is implemented by using code such asoptions = vim.tbl_deep_extend("force", defaults, opts or {})
. LazyVim comes with a set of default config files providingdefaults
table and their table contents are overridden by your own config files providingopts
table.
The first link seems correct, the two other ones return a 404.
lazyvim.github.io/docs/plugins/ui.md
Lines 74 to 161 in b9214b1
Edit: Resolved by #50 but there is no open issue for it
https://github.com/LazyVim/lazyvim.github.io/blob/main/docs/configuration/general.md?plain=1#L24
this init.toml
doesn't exist in the start repo. I wonder if it is a typo?
~/repos/LazyVim/starter 🌐 nixos in on main via 🌙
❯ eza --tree -a --long --ignore-glob='.git|__*|tf|venv|target|incremental'
drwxr-xr-x - saidler 7 Apr 21:59 .
.rw-r--r-- 51 saidler 7 Apr 21:59 ├── .gitignore
.rw-r--r-- 183 saidler 7 Apr 21:59 ├── .neoconf.json
.rw-r--r-- 72 saidler 7 Apr 21:59 ├── init.lua
.rw-r--r-- 11k saidler 7 Apr 21:59 ├── LICENSE
drwxr-xr-x - saidler 7 Apr 21:59 ├── lua
drwxr-xr-x - saidler 7 Apr 21:59 │ ├── config
.rw-r--r-- 213 saidler 7 Apr 21:59 │ │ ├── autocmds.lua
.rw-r--r-- 209 saidler 7 Apr 21:59 │ │ ├── keymaps.lua
.rw-r--r-- 1.8k saidler 7 Apr 21:59 │ │ ├── lazy.lua
.rw-r--r-- 212 saidler 7 Apr 21:59 │ │ └── options.lua
drwxr-xr-x - saidler 7 Apr 21:59 │ └── plugins
.rw-r--r-- 6.8k saidler 7 Apr 21:59 │ └── example.lua
.rw-r--r-- 171 saidler 7 Apr 21:59 ├── README.md
.rw-r--r-- 58 saidler 7 Apr 21:59 └── stylua.toml
As a beginner, LazyVim has greatly improved my experience with Neovim. The default <leader>
key in LazyVim is <Space>
, rather than the backslash \
mentioned in :h mapleader
. I found this out by searching through the repository.
Although this may be common knowledge for some users, I believe it would be helpful to include a small tip in the keymaps page for some new users.
I am confused about where to place my lsp configuration options. For example, for clangd, should I use .../lua/plugins/clangd.lua
? Apologies, I am quite new to the system and I have been reading the docs for the last few weeks but not managed to figure out the answer.
I can of course get there by trial and error, but would it be possible to add some headers to the documentation on pages such as in lsp.md to make it clear where I would put the example configuration settings to use lazyVim in the anticipated way?
I am a lua novice, so sorry if this question makes little sense! If the change I am proposing makes no sense maybe we could just have a link in the getting started page for other documentation new users ought to read?
Hi,
I was looking at the lazyvim documentation and noticed that a part of the documentation does not seem listed in the sidebar. See for example this screenshot that only shows the first 4 extras, but not more, such as flash.nvim. I tested in Firefox, Safari and Edge.
The only way to get there seems to be pressing next page at the bottom or by using the search bar.
As a side note, it would be helpful if there was a page when clicking on extras that would list them all. (In a similar way that plugins and configurations have their own page.)
p.s. By the way I just started migrating to lazyvim and think it is a great project! Thanks for that.
p.p.s Also would love to help with a PR to fix it, but have no clue where to start (and I am not fluent in lua).
Hi,
After the initial install LazyHealth was there, but after running Update inside Lazy (the pm) I don't have it anymore.
That said it seems that all the same fields are now printed to the core :checkhealth
.
If it was merged in the core command then there is a small typo there: https://github.com/LazyVim/lazyvim.github.io/blob/main/docs/installation.md (or the fact that the command will be missing after updating above vXX)
Thanks
LSP configurations are usually given in json format (a format compatible with vscode)
{
"texlab.rootDirectory": null,
"texlab.build.executable": "tectonic",
"texlab.build.args": ["-X", "compile", "%f"],
"texlab.forwardSearch.executable": "/Applications/Skim.app/Contents/SharedSupport/displayline",
"texlab.forwardSearch.args": ["-g", "%l", "%p", "%f"]
}
For Lua/Neovim novices (of whom I am one), converting from JSON to Lua is not always straightforward. For the above code, the version for lazy.nvim would be...
return {
"neovim/nvim-lspconfig",
opts = {
-- LSP Server Settings
---@type lspconfig.options
servers = {
texlab = { -- LSP server name
settings = {
texlab = { -- again LSP server name !
rootDirectory = nil,
build = {
executable = "tectonic",
args = { "-X", "compile", "%f"},
},
forwardSearch = {
executable = "/Applications/Skim.app/Contents/SharedSupport/displayline",
args = { "-g", "%l", "%p", "%f" },
},
},
},
},
},
},
}
Moreover, :LspLog
does not provide useful information for debugging incorrect configurations as the erroneous configuration will not load, resulting in a silent bug.
I think that an example as I gave above could be added to the docs here.
The docker instructions listed will fail with a 'platform unsupported' error when Mason tries to install stylua (and lua-language-server if you go that far). Alpine Linux is compiled with musl and the Mason install of stylua requires glibc (mason.nvim issue 1406).
Using archlinux as the Docker base image is another option. Downside for Mx macbook users is that there is no arm64 official archlinux image.
I noticed that the next link in https://www.lazyvim.org/configuration/tips leads to "back" to
https://www.lazyvim.org/configuration/plugins.
If you read the documentation by clicking the next link (e.g. on the phone where the navigation is a bit more hidden) you'll be stuck in a loop.
The configuration/plugins
URL matches both Configuration > Plugins
and Plugins
, rendering the configuration/plugins.md
file. I tried fixing this and putting up a PR but got stuck figuring out the preferred solution. Is it best to create a separate plugins/index.md
file? If so, what should the content of that page be vs configuration/plugins.md
? 🙂
– Nasse
The site lists the default surround keybinds as gsr
, etc. But the default that comes with LazyVim upon install is gzr
.
The incorrect default bindings are also listed on the plugin's default options page.
There is a recipe to update the mappings to gsr
, which would correctly be a change from the actual default mappings.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.