Jinyun's Notes

没什么天赋,爱好也不多,但愿坚持做些喜欢的事情

0%

Neovim + SpaceVim 起步

201909291120.jpg

🚀 Neovim 专注于后端和控制台,而 Vim 是一个 TUI 和 GUI 兼顾的编辑器。如果你穿梭于 GVim 的康庄大道,那么本文也许不太对你胃口。当然,时不时折腾折腾也是一个程序员固有的癖好,咱就好这口。这不,SpaceVim 加持的 Neovim 来了。

Neovim

Vim 8 的推出,很大程度上是受了 Neovim 的影响,对于异步通信和内置终端,都是在 Neovim 中首先实现的。总之,在编辑器的开发上面,Neovim 是领先于 Vim 的。

安装 Neovim

清理配置(慎重:最好进行备份):

1
2
rm -rf ~/.vim
rm -rf ~/.vim*

安装 neovim,稳定版和开发版选一个就好,其它的安装方式请参考官网文档:

1
2
3
4
5
// 稳定版
brew install neovim

// 开发版
brew install --HEAD neovim

SpaceVim

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

SpaceVim 也列出了它的受众用户,对于 Vim ,本人一直处于新手状态,所有我觉得它适合我,高手请忽略:

  • 初级 Vim 用户
  • 追求优雅界面的 Vim 用户
  • 追求更少肌肉损伤的 Vim 用户
  • 想要学习一种不一样的编辑文件方式的 Vim 用户
  • 追求简单但是可高度配置系统的 Vim 用户

安装 SpaceVim

获取安装脚本的帮助信息:

1
curl -sLf https://spacevim.org/cn/install.sh | bash -s -- -h

Linux 或 macOS 安装:

1
curl -sLf https://spacevim.org/cn/install.sh | bash

配置输入 vi 或 vim 时用 Neovim 打开:

1
2
3
4
5
vim ~/.zshrc
alias vi='nvim'
alias vim='nvim'

source ~/.zshrc

更新自身和插件

  • 更新自身:在命令模式下输入 :SPUpdate SpaceVim
  • 更新插件:在命令模式下输入 :SPUpdate
  • 获取日志:在命令模式下输入::SPDebugInfo!

修正字段乱码

1
2
brew tap caskroom/fonts
brew cask install font-hack-nerd-font

如果出现以下报错:

1
2
3
Error: Cask font-hack-nerd-font exists in multiple taps:
homebrew/cask-fonts/font-hack-nerd-font
caskroom/fonts/font-hack-nerd-font

顺序运行以下命令:

1
2
3
brew untap caskroom/fonts
brew tap homebrew/cask-fonts
brew cask install font-hack-nerd-font

用户配置

SpaceVim 将自动在用户的 HOME 目录生成 ~/.SpaceVim.d/init.toml,并且所有的用户脚本存储在 ~/.SpaceVim.d/ 目录下。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
vim ~/.SpaceVim.d/init.toml
#=============================================================================
# dark_powered.toml --- dark powered configuration example for SpaceVim
# Copyright (c) 2016-2017 Wang Shidong & Contributors
# Author: Wang Shidong < wsdjeg at 163.com >
# URL: https://spacevim.org
# License: GPLv3
#=============================================================================

# All SpaceVim option below [option] section
[options]
# set spacevim theme. by default colorscheme layer is not loaded,
# if you want to use more colorscheme, please load the colorscheme
# layer
colorscheme = "gruvbox"
background = "dark"
# Disable guicolors in basic mode, many terminal do not support 24bit
# true colors
enable_guicolors = true
# Disable statusline separator, if you want to use other value, please
# install nerd fonts
statusline_separator = "arrow"
statusline_inactive_separator = "arrow"
buffer_index_type = 4
enable_tabline_filetype_icon = true
enable_statusline_display_mode = false

# Enable autocomplete layer
[[layers]]
name = 'autocomplete'
auto-completion-return-key-behavior = "complete"
auto-completion-tab-key-behavior = "smart"

[[layers]]
name = 'shell'
default_position = 'top'
default_height = 30

# 添加自定义主题(可选):https://github.com/mhartington/oceanic-next
[[custom_plugins]]
name = "mhartington/oceanic-next"
merged = 0

未完待续……

本笔记是笔者在学习和工作中的一些整理,如对您有用,请鼓励我继续写作