当前位置: 首页 > 工具软件 > SpaceVim > 使用案例 >

Go语言 linux下开发 IDE -SpaceVim\NeoVim

竺焕
2023-12-01

Go语言 linux下开发 IDE -SpaceVim

在 Linux 系统下我们可以选择将 Vim 配置成 Go IDE。熟练 Vim IDE 操作之后,开发效率不输 GoLand 和 VSCode。

个人工作感觉:其实用vscode,远程sftp够用了。当然纯linux环境场景下,你可以尝试这些东西~

一、NeoVim和SpaceVim区别

spacevim与vim/neovim的关系不同于neovim和vim的关系. neovim是对vim的重新实现。

spacevim不是对vim/neovim的实现, 而是在vim/neovim之上整合了很多好用的插件。

SpaceVim 初始化脚本,默认同时为 vim 和 neovim 安装 SpaceVim。

总结: NeoVim和SpaceVim是不一样的,一个是编辑器,一个是基于编辑器的并配置方案。

建议的使用Neovim的原因:

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

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

建议使用SpaveVim的原因:

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

在SpaveVim里面,大部分都是已经配置好的,剩下的只是需要通过官网文档熟悉界面

但是相比起现代级的IDE,Neovim与SpaceVim还是有很大差距的,最明显的就是对各种库、各种包以及一键部署运行的支持,因此,个人认为SpaceVim/Neovim不是特别适合大项目的。

二、NeoVim

官网:http://neovim.io/

Bram Moolenaar 在写 Vim 时还是 90 年代初,至今已经 20 多年 过去了。其中,不仅包含了大量的遗留代码,而且程序的维护、Bug 的 修复、以及新特性的添加都变得越来越困难。为了解决这些问题,Neovim 项目应运而生。Neo 即“新”之意,它是 Vim 在这个新时代的重生。

安装 NeoVim

官方参考:https://github.com/neovim/neovim/wiki/Installing-Neovim
NeoVIM安装使用
参考URL: https://www.cnblogs.com/michaelcjl/p/12436227.html

  1. 安装 NeoVim
sudo apt update
sudo apt install python3-pip
sudo pip3 install neovim jedi python-language-server --user
  1. 配置 $HOME/.bashrc
    配置 nvim 的别名为 vi,这样,当我们执行 vi 时,Linux系统就会默认调用 nvim。配置 EDITOR 环境变量可以使一些工具,例如 Git 默认使用 nvim。配置方法如下:
tee -a $HOME/.bashrc <<'EOF'
# Configure for nvim
export EDITOR=nvim # 默认的编辑器(git 会用到)
alias vi="nvim"
EOF

cat $HOME/.bashrc
source $HOME/.bashrc

  1. 检查 nvim 是否安装成功
vi --version

Neovim GitHub Copilot插件安装

GitHub Copilot 支持了 Neovim,但是没有支持 vim。

  1. 打开终端并进入您的Neovim配置目录。一般情况下,该目录位于 ~/.config/nvim/。

  2. 如果您没有安装任何插件管理器,请先安装一个。我推荐使用 vim-plug 插件管理器,您可以通过以下命令进行安装:

  3. 在您的Neovim配置文件(一般为init.vim或init.lua)中添加以下行:
    init.vim 是 Neovim 的配置文件,通常位于 ~/.config/nvim/init.vim。如果该文件不存在,则可以手动创建一个。

vi  ~/.config/nvim/init.vim
call plug#begin()
Plug 'vim-scripts/Copilot.vim'
call plug#end()
  1. 保存并退出配置文件。重新加载Neovim以使更改生效,并键入 :PlugInstall 命令开始安装插件。
    开终端或命令行窗口,并输入 nvim 命令启动 Neovim 编辑器。

:PlugInstall 是在使用 Vim 或 Neovim 的插件管理器 vim-plug 时,用于安装插件的命令。在安装完 vim-plug 插件之后,在 init.vim 文件中配置了需要安装的插件列表,并保存文件后,可以在终端中打开 Vim 或 Neovim 并输入 :PlugInstall 命令来执行插件的安装。

请注意,在执行 :PlugInstall 命令之前,您需要确保已经正确安装了 Vim-Plug 插件管理器,并且在您的 Neovim 配置文件中包含了要安装的插件列表。如果您还没有安装 Vim-Plug,请参考官方文档进行安装:https://github.com/junegunn/vim-plug

  1. 进入普通模式并输入 :PlugStatus 命令。该命令将显示当前所有已安装的插件和它们的状态(例如“OK”或“X”)。

常见错误

执行完PlugInstall 报错 fatal: could not read Username for ‘https://github.com’: terminal prompts disabled

这个错误是因为 Git 正在尝试访问托管在 GitHub 上的远程仓库,它需要你的身份验证凭据。但是,在这种情况下,输入用户名和密码的终端提示被禁用了。

要解决此错误,可以通过运行以下命令启用终端提示

git config --global prompt true

如果 git config --global prompt true 命令报错提示 “error: key does not contain a section: prompt”,那么可能是因为 prompt 这个配置项还没有被设置过。你可以尝试手动在 Git 的全局配置文件中添加这个配置项,方法如下:

打开 Git 的全局配置文件,在终端中运行命令:git config --global --edit

[prompt]
    enabled = true

大部分情况是,你需要升级git,git不支持prompt。
直接运行 git config --global prompt true 命令来尝试添加 prompt 配置项。如果成功添加了这个配置项,则说明你的 Git 版本支持它。否则,你可能需要升级 Git 版本或者考虑其他解决方法。

这个错误通常表示您未能正确配置Git的身份验证信息。请确保您在运行PlugInstall命令之前已经正确地设置了Git的用户名和电子邮件地址,并且已经通过SSH密钥或用户名和密码进行了身份验证。

要设置您的Git用户名和电子邮件地址,请运行以下命令,将您的用户名和电子邮件地址替换为您自己的信息:

git config --global user.name "Your Name"
git config --global user.email "youremail@example.com"

将公钥添加到您的GitHub帐户中,需要执行以下步骤:

  1. 打开终端窗口,输入以下命令以生成一个SSH密钥:
    ssh-keygen -t ed25519 -C “your_email@example.com”

按照提示完成密钥的生成过程。如果您不想在电脑上设置密码,可以直接敲回车键跳过这一步骤。

  1. 在终端输入以下命令,将SSH代理添加到ssh-agent中:eval “$(ssh-agent -s)”。

  2. 输入以下命令以将私钥添加到ssh-agent中:ssh-add ~/.ssh/id_ed25519。

  3. 使用以下命令打开id_ed25519.pub密钥文件:cat ~/.ssh/id_ed25519.pub。

  4. github设置
    复制密钥文件中的所有内容。

登录GitHub帐户,并单击右上角的头像图标,然后选择“Settings”。

在左侧菜单中,单击“SSH和GPG keys”,然后单击“New SSH key”按钮。

在“Title”字段中,为您的密钥起个名称(例如,“My SSH Key”)。

在“Key”字段中,粘贴您在第6步中复制的SSH密钥内容。

单击“Add SSH key”按钮,以将密钥添加到您的GitHub帐户中。

现在,您应该能够使用SSH密钥进行Git操作,而无需再次输入用户名和密码。

三、SpaceVim

官网:https://spacevim.org/cn/
Github 地址 : https://github.com/SpaceVim/SpaceVim

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

SpaceVim提供代码自动补全、语法检查、格式化、调试、REPL 等特性。开发者只需要载入相关语言的模块就能得到一个开箱即用的 Vim IDE。

SpaceVim安装

参考SpaceVim的官方文档来安装:https://spacevim.org/quick-start-guide/

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

安装结束后,初次打开 vim 或者 neovim 时,SpaceVim 会自动下载并安装插件。

使用 Vim 搭建 Go 开发环境

官方参考:https://spacevim.org/cn/use-vim-as-a-go-ide/

 类似资料: