当前位置: 首页 > news >正文

从零开始配置neovim

前言

使用lazy配置neovim还算简单。
但由于许多插件和neovim本体更新迅速,许多教程已经过时(由于是新更新的,ai酱也不知道捏)。
整理一下配置过程。

init.lua

在配置目录下创建init.lua。
理论上只需要一个文件就能配置完nvim(只要你不嫌维护麻烦>_<)
文件结构大概长这样

.
├── init.lua
└── lua├── config│   ├── autocmds.lua│   ├── keymaps.lua│   ├── lazy.lua│   ├── options.lua└── plugins├── cmp.lua├── copilot.lua├── formatter.lua├── lspconfig.lua├── nvim-tree.lua├── telescope.lua├── theme.lua├── toggleterm.lua└── treesitter.lua

init.lua里用require将其他文件加载进来

require("config.options")
require("config.keymaps")
require("config.autocmds")
require("config.lazy")require("nvim-treesitter").install { 'c', 'cpp','rust', 'javascript','lua','html','vim','vimdoc', 'xml', 'python', 'markdown','markdown_inline', 'json', 'bash', 'zsh'}
vim.lsp.enable('clangd')
vim.lsp.enable('pyright')
vim.lsp.enable('rust_analyzer')

options里写option,keymaps里写keymap,autocmds里写auto command。
然后就创建完成了。

lazy插件管理

用lazy处理插件下载、更新、配置,很方便。
启动后会自动从github下载lazy,你可能需要处理一些网络问题。

local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
if not vim.loop.fs_stat(lazypath) thenvim.fn.system({"git","clone","--filter=blob:none","https://github.com/folke/lazy.nvim.git","--branch=stable", -- latest stable releaselazypath,})
end
vim.opt.rtp:prepend(lazypath)
-- 加载插件
require("lazy").setup({-- 这里可以自动引入 lua/plugins 文件夹下的所有模块{ import = "plugins" },
})

其余插件

其余插件全部扔在plugins文件夹里,如果为空的话lazy不会启动。

主题

tokyonight。
大概这样写。config里写配置

return {"folke/tokyonight.nvim",lazy = false,priority = 1000,config = function()vim.cmd[[colorscheme tokyonight]]     end,
}

treesitter

语法高亮插件。
如果未安装主题可能看不到配色。
使用require("nvim-treesitter").install开启高亮

return {'nvim-treesitter/nvim-treesitter',lazy = false,build = ':TSUpdate'
}

conform

代码格式化插件。
为每个语言配置格式化工具,记得在外部安装好。

return {{"stevearc/conform.nvim",config = function()local conform = require("conform")conform.setup({formatters_by_ft = {html = { "prettier" },json = { "prettier" },lua = { "stylua" },markdown = { "prettier" },python = { "isort", "black" },rust = { "rustfmt" },},})vim.keymap.set({ "n", "v" }, "<leader>=", function()conform.format({lsp_fallback = true,async = false,timeout_ms = 500,})end, { desc = "Format file or range (in visual mode)" })end,},
}

LSP

理论上neovim 0.11自带lsp客户端,只需要配置lspconfig。
nvim-lspconfig经历了一次不兼容更新,现有的github master分支为新分支。
安装好后记得在init.lua里enable

return {{"neovim/nvim-lspconfig",},
}

cmp

自动补全插件。
需要用vim.lsp.config设置capabilities。

return {{"hrsh7th/nvim-cmp",dependencies = {"hrsh7th/cmp-nvim-lsp","hrsh7th/cmp-buffer","hrsh7th/cmp-path","neovim/nvim-lspconfig",},config = function()local cmp = require("cmp")local caps = require('cmp_nvim_lsp').default_capabilities()vim.lsp.config('*', {capabilities = caps})cmp.setup({completion = {autocomplete = false },sources = cmp.config.sources({{ name = "nvim_lsp" }, -- LSP{ name = "path" },     -- 路径{ name = "buffer" },   -- 当前文件内容 (Buffer)}),mapping = cmp.mapping.preset.insert({['<C-n>'] = cmp.mapping.select_next_item(),['<C-p>'] = cmp.mapping.select_prev_item(),['<C-i>'] = cmp.mapping.complete(),['<C-e>'] = cmp.mapping.confirm({ select = true }), }),})end,}
}

参考文献

https://dev.to/slydragonn/ultimate-neovim-setup-guide-lazynvim-plugin-manager-23b7
https://www.mintimate.cn/2023/01/10/guideForLunarvim
https://youngxhui.top/2023/07/nvim-guideline-1basic-config
https://github.com/rockerBOO/awesome-neovim

http://www.jsqmd.com/news/254884/

相关文章:

  • Educational Codeforces Round 186 C-F 个人题解
  • JAVA攻防-Shiro专题有key无利用链JRMP协议CC1链分析Transform执行链
  • 如何克隆Demo代码仓库
  • 2026国内最新运动瑜伽面料品牌top10推荐!广东广州等地优质面料企业权威榜单发布,功能性与品质双优助力运动服饰升级. - 品牌推荐2026
  • 用数据说话:先知AI重塑男装企业增长曲线
  • 从需求分析到精准匹配:解码专业红娘的“择偶系统设计”逻辑
  • 2026最新MinGW64官网下载安装全攻略教程(含环境变量配置避坑,适合新手小白) - xiema
  • 开源大模型中的Agent概念解析
  • 模组日志总体介绍
  • 3.手写线程池-C语言版
  • sys系统消息
  • 高效筛选20w热点数据,从MySQL 2000w中精准提取
  • LuatOS-Air脚本移植到LuatOS版本注意事项
  • AI搜索新趋势:品牌推广如何赢得DeepSeek等智能模型的青睐?
  • 一文搞定AI排名SEO的手段:从“反向提问”来优化AI排名
  • 【1 月小记】Part 5: DP 优化 - L
  • AI搜索与消费者的未来:2026年需要关注的7个SEO领域
  • 救命神器8个AI论文写作软件,专科生毕业论文救星!
  • 从抽检到全检,AI 正在如何改变工厂质量控制体系?
  • 通信原理篇---AM\DSB\SSB\VSB
  • 教AI写漏洞代码,竟让它产生奴役人类幻想
  • 中国大学题库数据集包含24个学科领域:STEM教育数据库、理工科题库、计算机科学题库、JSON格式结构化数据、支持机器学习训练、自适应学习算法开发和智能教育系统构建
  • 中国上市公司股吧数据集(含帖子正文、回帖互动、用户画像与粉丝关系,共6万+结构化样本与统一ID可关联),支持金融舆情分析、推荐排序、社交网络挖掘与中文大模型训练的高质
  • 蓝牙学习之Provision(7)bind (1)
  • 导师推荐!专科生必看!8款AI论文平台测评与推荐
  • 蓝牙学习之Provision(6)Provison Complete
  • JD商品评论数据集:真实用户评论情感分析数据,中文自然语言处理语料,学习深度学习模型训练、文本挖掘、电商推荐系统优化、产品评价分析、客户服务改进及自然语言处理教学
  • 戴尔警告:SSD短缺下重复使用闪存存在风险
  • SK海力士开发分割单元5位闪存技术
  • 实用指南:Transformer实战(30)——Transformer注意力机制可视化