nvim 学习以及配置
First
从18年开始一直使用 idea-vim
插件作为编辑工具, 日常使用虽然比较频繁, 但是很少做深入了解, 只是局限于一些简单的操作, 虽然速度提升了一些, 但是远远不够, idea
号称内存黑洞, 所以一直在考虑是不是有一种很多好的工具能够替代它,
最开始想到的是eclipse
系列(sts, myeclipse
等), 虽然现在eclipse
也很强大,但是还是老问题, 如果workspaces
打开项目多了,确实还是会卡, idea
没有 workspaces
这个概念,一个项目开一个窗口,造成内存吃紧;后面队任何 IDE
都失去兴趣了,
就考虑是否能直接用vim
, 问题在于 java
的提示和编译, 目前找到一个 lunarvim
, 使用感觉和 vs code
添加 java
插件差不多.至此,实验失败, 不过过程中收获很多, 让我对 打造一个自己的专属编辑器
这个概念产生了浓厚的兴趣, 而且确实 vim
或者 neovim
确实是简单,灵活,强大.
Install
- 官方安装包下载
windows
下使用chocolatey安装, 命令为choco install neovim --pre
, 此处--per
为安装beta
版本(目前为0.10.0
), 默认安装版本为0.8.0
,neovim 0.9.0
版本之后使用lua
语言管理插件.
Configuration
- 使用
choco
安装nvim
默认是在c:\tools
下面, 具体的安装位置, 可以通过环境变量ChocolateyToolsLocation
来指定. windows
操作系统下,neovim
的配置文件$env:localappdata\nvim
(默认为c:\user\<username>\appdata\local\nvim, 该目录也是大多数应用程序的配置文件所在目录, 详见[what's appdata](https://www.xda-developers.com/appdata/#:~:text=It's%20a%20hidden%20folder%20that,User%2Dspecific%20installations)
.- 创建
init.lua文件
,0.8.0
之前是init.vim
, 之后版本也兼容init.vim
但是大部分使用init.lua
. - 创建lua\user文件夹,
md lua\user
. - 进入lua\user目录, 创建
options.lua
文件, 用于做vim
的通用配置, 创建globals.lua
用于全局配置, 创建plugins.lua
用于加载插件. nvim init.lua
然后写入一下信息
1 | vim.g.mapleader = ' ' |
此处一定要先加载插件文件,如果其他文件里面有用到插件配置,会导致插件未加载,配置不生效.
7. 添加插件管理, git clone https://github.com/wbthomason/packer.nvim "$env:LOCALAPPDATA\nvim-data\site\pack\packer\start\packer.nvim"
编辑插件配置文件 nvim lua/user/plugins.lua
添加nvim插件管理此处使用packer
, 这个是之前没用用过的插件管理工具, 以前vim
使用vim-plug
感觉很简单,而且还可以指定插件位置, 这个工具初次接触有一点点难受.
1 | vim.cmd [[packadd packer.nvim]] |
此处添加插件自身管理,具体使用方法可以看github
链接.
9. nvim options.lua
文件, 添加一些之前vim
的常用配置.
1 | local o = vim.opt -- nvim 对vim的配置映射 |
Plugins Config (未完待续)
nvim真的是有很多插件, nvm-tree
文件树可以像文件资源管理器一样,管理文件,telescope
文件搜索, 简直太强大了, 但是非常依赖, 键位记忆以及键位配置, 慢慢学习, 慢慢配置