• [VIM]spcaevim


    Home | SpaceVim

    SpaceVim - 知乎

    关于Vim/Neovim/SpaceVim的一些思考 - 知乎

    vim高配版(1) – SpaceVim

    简介

    SpaceVim 是国内的一个大佬将一些NB的插件整合到一起的一个插件包. 一键式安装, 功能强大.

    官网参见 Home | SpaceVim

    vim高配版(2) – vimplus

    简介

    vimplus是国内的又一个大佬打造的一个vim开发工具包. 为 cpp 开发者量身定做. 界面漂亮.

    官网参见github

    GitHub - chxuan/vimplus: :rocket:An automatic configuration program for vim

    折腾程度

    安装过程: 4星

    安装过程

    可以参考github上的文档

    1. git clone https://github.com/chxuan/vimplus.git ~/.vimplus
    2. cd ~/.vimplus
    3. ./install.sh

    1 前言

    最近看到了Neovim以及SpaceVim,于是上手试了一下。

    NeovimSpaceVim

    NeovimVim的一个分支,具有更加现代的GUI、嵌入式以及脚本化的终端、异步工作控制等等特点,默认配置文件为~/.config/nvim/init.vim。而SpaveVim,是一个社区驱动的模块化的Vim IDE,以模块的方式组织管理插件以及相关配置,为不同的语言开发量身定制了相关的开发模块,提供了自动补全、语法检查、格式化、调试等特性,默认配置文件为~/.SpaveVim.d/init.toml

    3 使用感受

    3.1 Neovim

    首先是安装,Neovim的安装很简单,可以直接通过包管理器安装:

    paru -S neovim

    安装了之后可以使用nvim命令打开。

    简单使用了一下,发现Neovim并没有和Vim(版本8.2)有太大的区别。一般情况下,这样的Neovim不能成为一个IDE,需要添加若干插件才能使用。流行的插件管理器有如下几个:

    • vim-plug
    • vundle
    • neobundle
    • Pathogen

    笔者用的是vim-plug,插件安装不难,在init.vim中的两个call之间加上插件的名字:

    1. call plug#begin('~/.vim/plugged')
    2. Plug 'junegunn/vim-easy-align'
    3. call plug#end()

    然后在Neovim中键入:PlugInstall即可进行安装。

    一般来说,如果需要打造成为一个IDE,那么至少需要具备以下功能:

    但是,安装使用了之后,测试了一下Java,效果并不怎么样,拿最常用的补全来说,补全提示的速度比不快,另一方面,提示的速度比IDEA慢,而且提示不够智能,不能根据当前光标处的变量提示最接近的补全。另一方面,并不能自动import(虽然可以通过脚本做到,但是又需要额外的配置)。

    3.2 SpaceVim

    SpaveVim相当于一个开箱即用的IDE,默认就提供了IDE的常见功能,比如:

    • 补全
    • 高亮
    • 工程目录树
    • 运行调试
    • 快速定位
    • 构建工具支持

    等等。首先,不可否认的是SpaceVim默认就提供了一个用户友好的界面:

    会默认记录最近打开的文件,并且可以通过数字快速定位。笔者同样使用了Java进行测试,虽然内置了代码补全插件,但是,令人遗憾的是并没有自动import的功能,并且也没有变量名自动补全的功能(指创建一个叫arrayList的变量):

    当然,这也有可能是没有完全配置好的原因,想要配置一个更加好用的SpaceVim,可以参考这篇文章

    4 建议

    下面是个人建议的使用Neovim的原因:

    • 需要一个从零开始配置的IDE或者Vim
    • 动手能力强,能解决各种问题
    • 能够熟练记忆并使用各种各样的快捷键
    • 熟悉各种插件,包括但不限于nerdtreeYouCompleteMe等等

    因为如果想把Neovim用好,最起码需要花点时间,利用插件安装好各种各样的插件之后(当然因为有些插件只是针对Vim的,所以可能会遇上不兼容的问题),熟悉它们的使用并知道快捷键,这对记忆力以及学习能力都是一个考验,在这过程中,需要无数次的打开init.vim进行配置。

    建议使用SpaveVim的原因:

    • 不想手动配置太多的插件以及快捷键
    • 需要一个开箱即用且轻量级的IDE
    • 不需要开发很大的工程

    SpaveVim里面,大部分都是已经配置好的,剩下的只是需要通过官网文档熟悉界面,最主要的是熟悉Space组合键的使用,比如:

    • Space+数字键:切换窗口
    • Space+b/B:缓冲区操作
    • Space+c:命令操作
    • Space+f:文件操作
    • Space+l:语言相关操作,比如运行等等
    • Space+w:窗口操作

    相比起Neovim需要在init.vim中配置各种map去映射键,SpaceVim的快捷键学习曲线会低了很多。

    但是相比起现代级的IDENeovimSpaceVim还是有很大差距的,最明显的就是对各种库、各种包以及一键部署运行的支持,因此,个人认为SpaceVim/Neovim不是特别适合大项目的。不过当然有一些折中的方案,比如VSCode,在各种各样的插件加持之下,可以堪称是又轻又快的现代IDE

    5 资源

    如果想学习Neovim/SpaceVim或者想把两者配置成一个更好用的IDE,这里提供了一些资源:

  • 相关阅读:
    c语言入门——操作符
    RK3399平台开发系列讲解(时间篇)RTC设备构建过程
    JS课程记录-黑马
    Ubuntu常见问题及解决办法
    零信任特权访问管理
    string类接口介绍及应用
    【js&three.js】全景vr看房进阶版
    时序预测 | Python实现ARIMA-LSTM差分自回归移动平均模型结合长短期记忆神经网络时间序列预测
    【Unity】【VR开发疑难】Unity运行就报无法启动XR Plugin
    【Docker】(1)了解docker的基础命令、概念(底层隔离机制),云服务
  • 原文地址:https://blog.csdn.net/ldinvicible/article/details/133556745