为
rust
与go
开发进行专门配置支持语法提示,格式化,
debug
等,支持buf
的linter
配合 Neovide 使用更佳!
编写 rust 的集成开发环境种类丰富, Intellij IDEA
,CLion
,VSCode
等,它们都有一个特点
占用内存太大!
Mac的16G内存,写 rust
时只需要多开一个 Docker Desktop,就会变得捉襟见肘。如果挂了一个 Parallels Desktop,那内存分分钟就会爆红
在使用 IDEA 和 CLion 时,它们都会随着项目打开慢慢变得卡顿(存在 M1 芯片优化问题带来的卡顿),内存占用也会慢慢变高 (最后大概在 5-6G
左右)
所以我将目光投向了 nvim,希望在高负载的情况下能正常编写 rust
其次,我可以在移动设备上安装 Termux
等类似模拟终端类的软件,配置这个 neovim,就可以随时随地开发了(
- 安装
neovim
,使用到的版本为0.8.2
,不要低于0.7
- 将仓库 clone 到
~/.config/nvim
下,windows
系统在~/.AppData/local/nvim
- 保证
init.lua
处在~/.config/nvim/init.lua
的正确路径下
- 保证
-
Packer/Treesitter 下载失败
- 通常是网络问题,可以考虑给 git 挂个代理
-
使用某个功能时提示某些可执行文件缺失
这里列出了可能需要配置的部分
./lua/plugins.lua
插件安装文件
./lua/keymaps.lua
快捷键映射文件
./lua/colorscheme.lua
主题文件
配置第一行的主题名称即可
./lua/plugins/null-ls.lua
null-ls
配置可以添加一些额外的
formatter
,code_action
等
./lua/plugins/treesitter.lua
配置不同语言的高亮、缩进、增量选择、折叠
./lua/plugin-config/dashboard.lua
启动页配置
配置启动页图标,Banner 和 Footer
Mac 上 Alt 使用 Option 键代替
[leader] 默认配置的是
Space
键
-
sv —— 垂直分屏
-
sc —— 关闭屏
-
sh —— 水平分屏
-
so —— 关闭其他分屏
-
Shift + <h,j,k,l> —— 窗口间上下左右切换
-
s, —— 左右比例控制
-
s. —— 左右比例控制
-
sj —— 上下比例控制
-
sk —— 上下比例控制
-
s= —— 等比例
- [leader]t —— 水平打开终端
- [leader]vt —— 垂直打开终端
- Ctrl + <j,k> —— 上下预览(5 行)
- Shift + [Left, Right] —— 按单词左右跳转
- Shift + [Up, Down] —— 快速翻页
- I —— 行首插入
- A —— 行尾插入
- < —— 缩进代码
- > —— 缩进代码
- J —— 向下移动选择的块
- K —— 向上移动选择的块
- Ctrl + <h,l> —— 左右 Tab 切换
- Ctrl + w —— 关闭当前 Tab
- [leader]bh —— 关闭左侧 Tab
- [leader]bl —— 关闭右侧 Tab
- [leader]bc —— 选择关闭
- [leader]b —— 选择 Tab (Telescope)
- Ctrl + f —— 全文搜索
- Ctrl + p —— 文件搜索
- [leader]e —— 搜索环境变量
- 打开搜索框之后
- Ctrl + <u,d> —— 上下代码预览
- Ctrl + <j,k> —— 插入模式下上下翻动
- Ctrl + <n,p> —— 历史记录
- Ctrl + j —— 下一个补全
- Ctrl + k —— 上一个补全
-
[leader]rn —— 匹配更换命名
-
[leader]a —— code actions
-
gd —— 跳转到定义处
-
gh —— 显示提示
- [leader]ha ——
rust-tools
中的 hover action
- [leader]ha ——
-
gD —— 查看类型定义
-
gi —— 查看实现
-
gr —— 查看引用
-
gp —— 弹窗查看提示
-
gj —— 下一个提示
-
gk —— 上一个提示
-
[leader]f —— 格式化代码
-
zc —— 折叠
-
zo —— 打开折叠
- [leader]dt —— 打断点
- [leader]dT —— 清理所有断点
- [leader]dc —— 启动 debugger |debug continue
- 编写 rust 时推荐使用
:RustDebuggables
来启动debugger
- 编写 rust 时推荐使用
- [leader]dj —— step over
- [leader]dk —— step out
- [leader]dh —— debug hover
- [leader]dl —— step into
- [leader]dw —— 退出 debug