下一代终极编辑器,Lua驱动、内置LSP,让你的编码如丝般顺滑!
写代码这么多年,经常被这些事情困扰:
服务器上改个配置文件要开VSCode,太重了;vim又显得原始,连个智能提示都没有。写代码时要在终端和编辑器间反复横跳。项目大了以后IDE越来越卡,风扇狂转。
这些问题一直存在,直到遇见了Neovim。
Neovim能做什么
现代化编辑体验
• 内置LSP支持,不依赖第三方插件就能实现代码补全
• 异步任务处理,大文件不卡顿
• 内置终端,告别反复切换窗口
• 支持多种现代GUI,也能纯终端使用
强大的扩展能力
• 用Lua写插件和配置,比Vimscript更容易
• 支持Python、Node.js等语言扩展
• 兼容95%以上的Vim插件
• 插件生态丰富,想要的功能基本都有
性能和稳定性
• 启动速度快,内存占用低
• 完全异步设计,操作不卡顿
• 代码经过重构,更容易维护
• 社区活跃,问题修复快
项目效果预览
各种插件
markdown-preview.nvim:支持浏览器中通过同步滚动预览Markdown文件
图片onedark.nvim:配色方案插件
图片
图片主题:
图片快速上手指南
安装配置
Mac下安装:
brew install neovim
Ubuntu下安装:
apt install neovim
基础配置(~/.config/nvim/init.lua):
-- 基础设置
vim.opt.number = true -- 显示行号
vim.opt.expandtab = true -- 使用空格代替tab
vim.opt.shiftwidth = 2 -- 缩进宽度
vim.opt.tabstop = 2 -- tab宽度
vim.opt.autoindent = true -- 自动缩进
-- 插件管理
require('packer').startup(function()
use 'wbthomason/packer.nvim'
use 'neovim/nvim-lspconfig'
use 'hrsh7th/nvim-cmp'
use 'nvim-telescope/telescope.nvim'
end)
常用功能
文件操作:
:e 文件名 -- 打开文件
:w -- 保存
:q -- 退出
:Ex -- 文件浏览器
搜索跳转:
/关键字 -- 搜索
gg -- 跳到文件开头
G -- 跳到文件末尾
代码编辑:
dd -- 删除当前行
yy -- 复制当前行
p -- 粘贴
u -- 撤销
实用插件推荐
代码补全:
use {
'hrsh7th/nvim-cmp',
'hrsh7th/cmp-nvim-lsp',
'L3MON4D3/LuaSnip'
}
文件搜索:
use {
'nvim-telescope/telescope.nvim',
requires = { {'nvim-lua/plenary.nvim'} }
}
语法高亮:
use {
'nvim-treesitter/nvim-treesitter',
run = ':TSUpdate'
}
日常使用技巧
提升效率的快捷键
•
ff: 搜索文件•
gd: 跳转到定义•
K: 查看文档•
: 从终端模式返回普通模式
工作流建议
1. 保持配置简单,按需添加
2. 熟悉基本操作再使用高级功能
3. 记住常用命令,少用鼠标
4. 根据项目需求配置LSP
写在最后
用了一段时间Neovim后,最大的感受是:
但也要注意:
• 入门有一定门槛,需要时间适应
• 配置需要一些编程基础
• 图形界面相关的功能不如VSCode
作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~
