Skip to content
/ nvim Public

A modern Neovim configuration with for C/C++, Markdown, Python and more...

License

Notifications You must be signed in to change notification settings

lin2j/nvim

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

57 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Neovim

个人配置,用在别的机器可能会有些奇奇怪怪的问题,建议还是自己从头配置


screenshot

☀️ 手动操作和外部工具依赖

  • 表示必须

  • 表示可选

  • 安装 nerd-fonts (部分插件使用了文字图标,基于该字体)

  • 安装 tree-sitter,luajit,node(≥14),npm

  • zip 解压软件

    • Unix 系统: unzip, tar, gzip
    • Windows 系统: 7zip, peazip, archiver, winzip, WinRAR
  • MarkdownPreview 命令如果不能执行,可能是 markdown-preview 插件没有安装好了,安装需要用到 npm 或者 yank 命令

  • 首次进入会自动安装 Packer 插件,安装完成后重启 neovim,执行 :PackerSync 进行插件下载

  • 所有插件安装完成后,执行 :MasonInstall 安装需要的 language server

  • 你可能需要安装 ripgrep 程序以用来搜索项目中的关键词

如果有什么问题,可以尝试运行 :checkhealth 命令查看并解决

🪐 所有的插件

⚡️ 插件快捷键

空格用 ⌴ 表示

N 表示在 Normal 下的快捷键,V 表示在 Visual 模式,I 表示 Insert 模式

CR 表示回车

比如 N<Ctrl-/> 表示在 Normal 模式下按住 ctrl 和 / 键

注释

注释:N<gc>, V<gc>, N<Ctrl-/>, V<Ctrl-/>

解除注释:N<gcc>,V<gcc>,N<Ctrl-/>, V<Ctrl-/>

Visual 模式下主要用来选中多行代码然后全部注释掉

文件目录浏览

打开目录树:N<⌴-1>

定位到当前编辑的文件:N<⌴-2>, N<⌴-m-f>

刷新目录树:N<⌴-m-r>

操作文件(前提是先把光标定位到对应的文件(夹))

  • 打开文件(文件夹): N<CR>, N<o>
  • 竖屏打开文件:N<v>
  • 横屏打开文件:N<h>
  • 创建文件:N<a>
  • 删除文件:N<d>
  • 重命名文件:N<r>
  • 剪切文件:N<x>
  • 复制文件:N<c>
  • 粘贴文件:N<p>
  • 复制文件名:N<y>
  • 复制文件路径:N<Y>
  • 复制文件绝对路径:N<gy>
  • 使用系统程序打开文件(比如记事本):N<s>

文件搜索

从当前目录之下的文件中搜索关键词:N<⌴-f-m>

从项目根目录开始搜索文件:N<⌴-f-f>

从项目根目录开始搜索文件,包括隐藏文件:N<⌴-f-a>

查看当前 git 仓库的历史提交:N<⌴-c-m>

查看当前 git 仓库的 status 情况:N<⌴-g-t>

从整个项目中查找某个关键词(需要 rg 命令支持):N<⌴-f-w>

下一项:I<Ctrl-n>

上一项:I<Ctrl-p>

代码大纲(outline)

打开大纲:N<⌴-a>

跳到前一项:N<{>

跳到后一项:N<}>

跳到当前项的父项的上一项:N<[[>

跳到当前项的父项的下一项:N<]]>

LSP 回调函数

重命名变量或者方法:N<⌴-r-n>

跳转到变量或者方法的声明处:N<g-d>, N<Ctrl-b>

显示变量或者方法的注释:N<g-h>

显示方法的实现:N<g-i>

显示变量或者方法的引用:N<g-r>

格式化代码:N<⌴-=>

...待补充

nvim-cmp 自动补全

选中提示:I<CR>, I<Tab>

下一项:I<Ctrl-n>

上一项:I<Ctrl-p>

markdown

在当前位置生成目录:N<⌴-t-o-c>

启动 Markdown 预览(需要在 md 文件下才能用): N<⌴-m-p-v>

多光标操作

具体使用建议看视频,B站教程

竖直向下选择:N<Ctrl-j>

竖直向上选择:N<Ctrl-k>

🌟 注意点

🌧 不足之处

  • 格式化需要借助外部程序进行格式化

🌈 Q&A

  1. tree-sitter 高亮报错

使用 :TSUpdate <lang> 命令更新对应变成语言的 ts,比如 TSUpdate lua

📃 协议

MIT

Releases

No releases published

Packages

No packages published

Languages