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

【Tools】neovim操作指南

Neovim 中最常见、最实用的操作, 主要针对C++ 开发需求:


🚀 基础操作

操作快捷键说明
保存:wZZ保存当前文件
退出:qZQ退出当前窗口
保存并退出:wqZZ保存并退出
强制退出:q!不保存直接退出
撤销u撤销上一步
重做<C-r>重做撤销
搜索/xxx向下搜索 xxx
搜索下一个n向后查找下一个匹配
替换:%s/foo/bar/g全文替换 foo 为 bar

🗂️ 窗口 & buffer 操作

操作快捷键说明
水平分屏:split:sp
垂直分屏:vsplit:vsp
切换窗口<C-w>h/j/k/l切换到上下左右窗口
新 buffer:e 文件名
切换 buffer:bnext, :bprev
关闭 buffer:bd

🧭 项目管理(使用插件如 telescope, nvim-tree

功能快捷键(建议)插件
打开文件树<leader>envim-tree
文件模糊搜索<leader>fftelescope
查找函数/变量<leader>fstelescope
列出打开的 buffer<leader>fbtelescope
打开大纲视图<leader>osymbols-outline.nvimaerial.nvim

🧠 LSP 功能(代码跳转、诊断)

(这些依赖你已经安装 LSP,比如 clangd)

操作快捷键(常见)插件
跳转定义gd内置 LSP
跳转声明gD
跳转实现gi
查找引用gr
弹出文档K
格式化代码<leader>fnull-ls, clang-format
显示诊断信息<leader>e
代码重命名<leader>rn
代码操作(修复)<leader>ca

🐞 调试(DAP)

你已安装 nvim-dap + nvim-dap-ui,推荐快捷键如下:

功能快捷键
启动调试<F5>
断点切换<F9>
单步跳过<F10>
单步进入<F11>
单步跳出<F12>
重启调试<leader>dr
停止调试<leader>dq

✍️ 插入模式快捷操作

快捷键功能
<C-a>光标移动到行首
<C-e>光标移动到行尾
<C-h>删除光标前字符
<C-w>删除前一个单词
<C-u>删除光标到行首

📦 插件操作(Lazy.nvim)

操作命令
打开插件管理界面:Lazy
安装插件:Lazy install
更新插件:Lazy update
同步插件:Lazy sync
检查插件状态:Lazy health

✅ 建议设置的一些常用快捷键

-- 保存
vim.keymap.set("n", "<C-s>", ":w<CR>")-- 文件树 toggle
vim.keymap.set("n", "<leader>e", ":NvimTreeToggle<CR>")-- Telescope 文件查找
vim.keymap.set("n", "<leader>ff", ":Telescope find_files<CR>")
vim.keymap.set("n", "<leader>fg", ":Telescope live_grep<CR>")-- DAP 调试
vim.keymap.set("n", "<F5>", function() require("dap").continue() end)
vim.keymap.set("n", "<F9>", function() require("dap").toggle_breakpoint() end)

http://www.xdnf.cn/news/7611.html

相关文章:

  • 【nRF9160 常用prj.conf配置与AT指令介绍】
  • 建筑设备分散管理痛点如何解?楼宇自控系统给出破局之道
  • 编程日志5.13
  • 2025.05.20【Treemap】树图数据可视化技巧
  • 专题六:记忆化搜索(递归优化的秘密武器)
  • 深入理解Redis Cluster:架构、原理与实践
  • Oracle资源管理器
  • Oracle ASM Rebalance Power 了解
  • Linux线程互斥与同步(上)(29)
  • 2025年PMP 学习二十三 16章 高级项目管理
  • Python的sys模块:系统交互的关键纽带
  • MySQL性能调优:从查询优化到分库分表
  • ubuntu14.04/16.06 安装vscode(实测可以用)
  • 在 Azure OpenAI 上使用 Elastic 优化支出和内容审核
  • 【Go-2】基本语法与数据类型
  • 基于C#的Modbus通信协议全面解析与实现指南
  • 文件操作和IO-2 使用Java操作文件
  • 迪菲-赫尔曼密钥交换算法深度解析
  • Java并发进阶系列:深度讨论官方关于jdk1.8ConcurrentHashMap的computeIfAbsent源代码修复逻辑
  • OpenCV 第6课 图像处理之几何变换(重映射)
  • javascript个人笔记 闭包/this/解构赋值/模板字符串/模块化
  • JavaScript计时器详解:setTimeout与setInterval的使用与注意事项
  • DNS:互联网的“通讯录”——计算机网络应用层中的域名系统详解
  • Android Framework学习七:Handler、Looper、Message
  • 力扣-快乐数
  • 便捷的Office批量转PDF工具
  • MinIO的安装和使用
  • 设计模式之备忘录模式
  • 通过COM获取正在运行的Excel实例并关闭 c#实现
  • C++之set与map介绍