SpaceVim - 模块化 Vim IDE

本贴最后更新于 1603 天前,其中的信息可能已经时移世改

初心

使用 Vim 已经有好一些年头了,最初也经历了到网上搜索各自配置教程,这个过程非常有趣,也有些痛苦,经常因为一些莫名其妙的错误不知所措。随着接触 Vim 时间越来越长,也了解到了各自组织 Vim 配置文件的方式。其中 airline 作者的配置给我印象最深,使用一个全局 List 变量,来定义需要载入的插件组合,这已经有一点模块化的思路了。再后来,受到 spacemacs 这个项目的启发,我新建了 SpaceVim 这一项目,其核心目的在于:

  1. 提供一个稳健的、开箱即用的 Vim 基础配置环境
  2. 对不同语言的支持,封装成一个模块,模块里自然包括一些语言相关的插件和配置,用户不需要去搜索各自插件、配置,只需要载入该模块即可以得到一个完整的语言开发环境。

关于 SpaceVim

614629200bd9d000a9a611e98e1fc70d6ec6ca1e.png

项 目 主 页: https://spacevim.org/cn/

Github 地址 : https://github.com/SpaceVim/SpaceVim

SpaceVim 是一个社区驱动的模块化 vim/neovim 配置集合,以模块的方式组织管理插件以
及相关配置,为不同的语言开发量身定制了相关的开发模块,该模块提供代码自动补全,
语法检查、格式化、调试、REPL 等特性。用户仅需载入相关语言的模块即可得到一个开箱
即用的 Vim-IDE。

最新 release 版本:v1.5.0

启用模块

比如启用 python 语言模块:

[[layers]]
   name = "lang#python"

目前支持的语言:https://github.com/SpaceVim/SpaceVim/wiki/programming-languages

在这个列表里,将列出所有 SpaceVim 已经支持和计划支持的语言,如果你对其中某个语言有兴趣,欢迎进入相关连接讨论,对于没有连接的,可以在 SpaceVim 的 github 仓库新建 issue 讨论。

中文社区

可以在官网看到,SpaceVim 的社区分两个,(中文、英文),而在每个社区里,分如下几个分支:

  1. 提交 bug,或者新特心需求,建议去 Github(英文) 或者 Gitee(中文)
  2. 贡献代码,毫无疑问 Github PR,SpaceVim 有一些镜像仓库,比如 gitee、gitlab,是为了方便用户下载,毕竟 github 在国内还是有些慢的。
  3. 日常讨论(即时消息),gitter 中文同步交流群,官网右下角既有聊天按钮,同步着电报、IRC 等平台
  4. 其他讨论,这些就分布在各个社区,比如知乎、比如掘金,当然也包括黑客派。所以,可以在黑客派下的 SpaceVim 标签下进行经验、技巧分享。

https://hacpai.com/tag/spacevim

相关讨论

这里罗列了一些跟 SpaceVim 相关的讨论:

  1. 如何评价 SpaceVim?
  2. 如何完善 SpaceVim?
  • Vim

    Vim 是类 UNIX 系统文本编辑器 Vi 的加强版本,加入了更多特性来帮助编辑源代码。Vim 的部分增强功能包括文件比较(vimdiff)、语法高亮、全面的帮助系统、本地脚本(Vimscript)和便于选择的可视化模式。

    29 引用 • 66 回帖 • 2 关注
  • SpaceVim

    SpaceVim 是一个社区驱动的模块化 vim/neovim 配置集合,以模块的方式组织管理插件以
    及相关配置,为不同的语言开发量身定制了相关的开发模块,该模块提供代码自动补全,
    语法检查、格式化、调试、REPL 等特性。用户仅需载入相关语言的模块即可得到一个开箱
    即用的 Vim-IDE。

    3 引用 • 31 回帖 • 105 关注
  • IDE
    21 引用 • 83 回帖 • 1 关注
6 操作
goodbye 在 2020-08-02 13:25:54 更新了该帖
goodbye 在 2020-04-19 13:53:07 更新了该帖
goodbye 在 2019-10-21 22:39:08 更新了该帖
goodbye 在 2019-10-21 22:16:20 更新了该帖 goodbye 在 2019-10-21 20:42:39 更新了该帖 goodbye 在 2019-10-21 20:40:37 置顶了该帖

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...
  • goodbye 1 评论
    作者 MOD
    1. 跳转到源码应该是快捷键 g d
    2. 参数简介,这个快捷键不是每个语言都有的,正常应该是 SPC l t
    3. 如果当前文件时仅有的一个窗口,文件树不算,那么 q! 肯定会关掉编辑器,如果你是要关闭当前 buffer, 可以使用 SPC b d
    4. SPC ' 打开的终端窗口确实不会实时刷新,这个是 vim/neovim 本身特性引起的
    5. 新建文件夹的快捷键暂时没有呢,你可以新建一个带有文件夹目录的文件比如 test/test.txt,这时候会自动新建 test 文件夹。
    1 回复
    感谢 🙏
    someone27889
  • 其他回帖
  • someone27889 1 评论

    现在用了一阵子,比较困扰我的问题有几个

    1.不知道按啥能跳转到函数的定义的源码文件

    2.不知道按啥能看到函数的简介 :参数,参数类型,返回值,返回值类型

    3.没有办法关闭当前打开的文件,直接 q!就把编辑器退出了。。。

    4.space ' 打开的 shell 好像不能时时刷新..

    5.右侧的 Tree 在 N 的时候只能创建文件,创建不出文件夹

    1 回复
    还有就是 maven 的 java 项目在 lr 尝试运行的时候找不到 main.class,应该是以前用 idea 用多了,啥都集成好了的锅
    someone27889
  • goodbye
    作者 MOD

    @88250 你好,我想在 spacevim 的社区列表里把黑客派也列出来,但是,似乎黑客派没有项目 channel 这种说法,我想像 reddit 那样,给自己的项目新建一个 channel,不知道后期是否会有这个功能。或者说还是仅仅有 tag 标签这一说法?

    1 回复
  • goodbye 1
    作者 MOD

    这个我觉得有点夸张了,对我来说,当我维护一个项目的时候,最主要,最核心的东西就是 git 版本信息,这个内容肯定是托管在最稳定的企业平台,而非个人或者国内公司平台,比如,github。 对于讨论我分三大块:

    1. PR, 这个是最主要的讨论,涉及到 代码 review,我倾向于丢在 github 讨论,如果出现实在非要中文的,那么也会偏向于丢在 中文 git 平台讨论
    2. issue, 有很多种,如果是 feature requets 和 bug report,我倾向于在 github 讨论。 如果是使用技巧,或者经验交流,我建议在各个社区讨论。比如,原先的知乎用户,他用了 SpaceVim, 有了一些经验,或者技巧想分享,我觉得他没必要注册多个其他社区账号,直接在自己的 知乎社区,SpaceVim 话题下分享即可。这才是开放的、包容的项目社区。
    3. 通知、邮件组,这些东西基本上是,非常关注这个项目的人才会订阅的。我偏向于使用 twitter 和 微博,公众号我会用,但不会推送消息。因为公众号太封闭,不是开放的社区。
    1 回复
  • 查看全部回帖