过程略,可参考: https://blog.csdn.net/lxyoucan/article/details/111120215
macOS安装支持Python 3的neovim为什么不用 vim?因为我使用vim时会有这样的提示: neocomplete does not work with Vim 8.2.1066+. 也许换个版本就可以了,因为我试了一下neovim直接就可以了,就没有换版本。 官方是这么说的:SpaceVim 支持什么版本的 Vim/Neovim? 建议使用 Vim 7.4 或者 Neovim v0.1.7 及其以上版本。为了更好的使用体验,建议使用最新版的 Neovim。
1、你需要先安装
brew install neovim
2、安装python支持,我用denite和YCM只需要python3
brew install python3
pip3 install neovim --upgrade
安装 SpaceVim
curl -sLf https://spacevim.org/cn/install.sh | bash
配置java环境
Java智能提示支持
《使用 Vim 搭建 Java 开发环境》https://spacevim.org/cn/use-vim-as-a-java-ide/
配置javalsp这里我部署在 ~/.SpaceVim.d/javalsp
目录,这个可以根据需要自行修改,如果修改了,则上面配置文件中的路径也要同步修改。
#创建javalsp所需目录
mkdir -p ~/.SpaceVim.d/javalsp/.cache/javalsp
下载eclipse.jdt.ls 默认下载速度很慢,推荐使用迅雷下载。 把下载下来的文件解压到 ~/.SpaceVim.d/javalsp
目录。我解压后的路径如下:
itkey@ycmit: ~/.SpaceVim.d/javalsp $ l [8:44:24]
total 16
drwxr-xr-x 13 itkey staff 416B 2 19 21:28 .
drwxr-xr-x 5 itkey staff 160B 2 20 08:36 ..
-rw-r--r--@ 1 itkey staff 6.0K 2 20 08:37 .DS_Store
drwxr-xr-x 4 itkey staff 128B 2 19 21:27 .cache
drwxr-xr-x 7 itkey staff 224B 2 19 22:29 config_linux
drwxr-xr-x 7 itkey staff 224B 2 20 08:19 config_mac
drwxr-xr-x 3 itkey staff 96B 2 18 04:25 config_ss_linux
drwxr-xr-x 3 itkey staff 96B 2 18 04:25 config_ss_mac
drwxr-xr-x 3 itkey staff 96B 2 18 04:25 config_ss_win
drwxr-xr-x 3 itkey staff 96B 2 18 04:25 config_win
drwxr-xr-x 7 itkey staff 224B 2 19 21:28 configuration
drwxr-xr-x 3 itkey staff 96B 2 18 04:25 features
drwxr-xr-x 82 itkey staff 2.6K 2 18 04:25 plugins
修改配置
编辑SpaceVim配置文件~/.SpaceVim.d/init.toml
vim ~/.SpaceVim.d/init.toml
SpaceVim默认是不开启java智能提示的,需要手动开启。增加以下内容:
[[layers]]
name = "lang#java"
[[layers]]
name = "lsp"
filetypes = [
"java"
]
[layers.override_cmd]
java = [
"java",
"-Declipse.application=org.eclipse.jdt.ls.core.id1",
"-Dosgi.bundles.defaultStartLevel=4",
"-Declipse.product=org.eclipse.jdt.ls.core.product",
"-Dlog.protocol=true",
"-Dlog.level=NONE",
"-noverify",
"-Xmx1G",
"-jar",
"~/.SpaceVim.d/javalsp/plugins/org.eclipse.equinox.launcher_1.6.0.v20200915-1508.jar",
"-configuration",
"~/.SpaceVim.d/javalsp/config_mac",
"-data",
"~/.SpaceVim.d/javalsp/.cache/javalsp"
]
这里的-jar -configuration -data
的值根据实际部署位置调整即可。 特别是-jar
项,因为jar的版本一直在升级,很有可能不一样!
-configuration
根据当前系统,选择对应的配置文件:
config_win, Windows 系统 config_mac, MacOS 系统 config_linux, Linux 系统
配置完成以后,下一次打开vim 会自动安装一些插件。
虽然下次打开.java文件的时候,就可以有语法检查,代码智能提示啦。 至此大部分人应该顺利完成了!
小坑提醒: 1.测试的时候千万别放在文件很多的目录,比如:不要在用户目录~/下创建.java测试。因为程序会自动扫描文件所在目录的文件,如果文件特别多,扫描时间很久。比如:我放在nvim ~/Demo.java 加载竟然需要1分 30秒
2.这里需要注意一点的是,nvim Demo.java
进入编辑以后不是立马就有智能提示的,因为插件要后台启动javalsp
就算状态栏下面有Ready也不行,还要等!而且没有进度条和提示。 也就是因为这一点,我老以为自己插件没安装成功。
问题是这个javalsp服务每次关闭nvim也自动关闭了,这就很难受了,每次关闭重开又得等。目前我的解决办法就是尽量就不关闭它了。执行命令在重新打开个终端吧!
如果不想重新打开一个终端,还可以挂起现在nvim进程, Ctrl + Z
然后执行完命令后,在执行 fg
回到nvim
默认的语法树插件是 tagbar,快捷键为 F2。这一快捷键将会在左侧打开一个语法树侧栏。 在macOS下会报一个ctags的错,详细解决办法的见: 《Getting started with ctags + Vim on MacOS》
精简教程如下:
brew install ctags
alias ctags="`brew --prefix`/bin/ctags"
alias ctags >> ~/.zshrc
执行这三行后,在次在nvim编辑java代码时,就可以用F2打开语法树了。
字体乱码问题默认打开界面可能会看到一些图标都是?号,是字体设置不正确导致的。
使用Homebrew安装nerd-font字体,顺序运行如下命令行:
brew tap homebrew/cask-fonts
brew install font-hack-nerd-font --cask
设置iterm 在依次点击(或者直接使用快捷键command+O)Profiles->Open Profiles…,选择一个你的Profiles,我的是⭐️Default,点击Edit Profiles…,在弹出界面选择Text,在界面底部勾选☑️Use a different font for non-ASCII text,选择Change Font,在Family栏下方找到并选定DroidSansMono Nerd Font或者是Hack Nerd Font。退出Profiles界面。
Java代码格式化2021年3月6日更新详见: 《SpaceVim踩坑之java代码格式化》
-----------------教程结束-----------------
离线安装SpaceVimhttps://download.csdn.net/download/lxyoucan/15378222
文件是安装SpaceVim并配置java开发环境以后生成的文件。Java开发相关环境可正常使用,智能提示正常,语法检查正常。
日期: 2021年2月20日
用途:
- 给第一次配置SpaceVim的朋友一个参考。
- 对于网络不佳,或者安装SpaceVim报莫名奇妙的错的朋友,直接拿去覆盖相关文件,也许能解决问题。
- 离线安装SpaceVim使用,有些服务器只能内网使用,而且服务器本身无法上线,可以当离线安装包使用。
如果遇到 Error from LanguageClient: ‘list’ object has no attribute ‘get’ 问题,解决办法见:
《macOS使用SpaceVim配置java开发环境爬坑》
参考文献《Getting started with ctags + Vim on MacOS》