首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >使用vim打造go语言IDE

使用vim打造go语言IDE

作者头像
暮雨
发布于 2019-08-28 03:12:55
发布于 2019-08-28 03:12:55
3.2K01
代码可运行
举报
文章被收录于专栏:云端漫步云端漫步
运行总次数:1
代码可运行

在网上看到了一篇不错的关于vim的文章,参考网上给出的资料,花了些时间,将自己的vim打造成一块go语言的IDE。中间因为网路的问题,踩了很多的坑,就在此简单的分享下自己的爬坑经验吧,其实也没经验,主要还是网络。以前的安装经验来自mac,linux下没有尝试。

安装go语言环境

这一步就不做详细的展开,唯一需要注意的地方就是设置GOPATH环境变量以及将$GOPATH/bin目录加入到环境变量中。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
export GOPATH=$HOME/go
export PATH=$PATH:$GOPATH/bin:$GOROOT/bin

将其加入到bash或zsh配置文件中,为了环境变量生效一定要source一下配置

安装vim

mac及linux都会自带vim, 因为一直用mac自带的,在安装YMC插件时踩了很多的坑。最后,将vim重新安装了一遍才解决。所以在此先将vim升级一把, 避免因为版本问题,带来不必要的麻烦。mac下升级

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
brew install vim

为了使新安装的版本起作用,需要重新启动下命令行工具,这个坑,爬了好久,才出来。

vim的基本配置

在写程序中,我们常把一些系统需要灵活更改的变量设置到配置文件中,vim也有这样的一个配置文件.vimrc,默认存在用户目录下,vim有着强大的配置参数。个人根据自己的喜好进行定制。当然要把每一个参数的作用都研究透也是需要花费巨大的精力。前人栽树,后人乘凉。一些参数经过很多人的探索,已经成为一种规范,直接拿来主义好了。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
" 关闭兼容模式
set nocompatible

set nu " 设置行号
set cursorline "突出显示当前行
" set cursorcolumn " 突出显示当前列
set showmatch " 显示括号匹配

" tab 缩进
set tabstop=4 " 设置Tab长度为4空格
set shiftwidth=4 " 设置自动缩进长度为4空格
set autoindent " 继承前一行的缩进方式,适用于多行注释

" 定义快捷键的前缀,即<Leader>
let mapleader=";"

" ==== 系统剪切板复制粘贴 ====
" v 模式下复制内容到系统剪切板
vmap <Leader>c "+yy
" n 模式下复制一行到系统剪切板
nmap <Leader>c "+yy
" n 模式下粘贴系统剪切板的内容
nmap <Leader>v "+p

" 开启实时搜索
set incsearch
" 搜索时大小写不敏感
set ignorecase
syntax enable
syntax on                    " 开启文件类型侦测
filetype plugin indent on    " 启用自动补全

" 退出插入模式指定类型的文件自动保存
au InsertLeave *.go,*.sh,*.php write

插件管理

vim要想变的强大,离不来插件的支持。为了便于管理这些插件,就需要一个用来管理插件的插件。这样的插件也很多,最常用要属 Vundle吧,看到有说 vim-plug效率更高所以就选用了vim-plug这个插件。先来安装一把,其实也就是个安装包的下载。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
curl -fLo ~/.vim/autoload/plug.vim --create-dirs \
    https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim

安装完成后,在.vimrc配置文件添加配置

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
" 插件开始的位置
call plug#begin('~/.vim/plugged')

" 需要被管理的插件

" 插件结束的位置,插件全部放在此行上面
call plug#end()

配置就这么简单,在begin和end块之间添加需要被安装或管理的插件 配置如下几个插件,我们即可构建出一个关于go的IDE:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
" 插件开始的位置
call plug#begin('~/.vim/plugged')

" 用来提供一个导航目录的侧边栏
Plug 'scrooloose/nerdtree'

" 代码自动完成,安装完插件还需要额外配置才可以使用
Plug 'Valloric/YouCompleteMe'

" go 主要插件
Plug 'fatih/vim-go', { 'tag': '*' }

" go 中的代码追踪,输入 gd 就可以自动跳转
Plug 'dgryski/vim-godef'

" 插件结束的位置,插件全部放在此行上面
call plug#end()

然后输入 :w 保存配置,在输入 :PlugInstall ,如下:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
:w
:PlugInstall

插件会自动下载安装,看见上面显示 Finishing ... Done 的内容,插件安装成功

删除插件,只需要将插件在配置中注掉,然后执行:PlugClean即可完成删除操作。

vim-go依赖安装

我们上一步完成vim-go插件的安装,vim-go的使用需要依赖go的一些工具,这些工具存在于目录$GOPATH/bin可以在.vimrc文件中执行GoInstallBinaries进行安装,因为这一步需要下载大量的依赖工具,然后会比较耗时,另外非常重要的一点,有一些包是存在于墙外的服务上,所以需要开启访问外国网站。当出现 vim-go: installing finished! 则安装成功!

YouCompleteMe

代码提示,是IDE和编辑器的重要区别,有了代码提示,那么就可以流畅的写代码了。vim中常用的代码提示方案就是这个YouCompleteMe的插件了,这个插件也需要安装依赖。在插件安装那一步中,完成了YouCompleteMe简称(YMC)的安装,这个还需要一个依赖的安装。首先确认vim支持python版本。

这个就需要python3来安装

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$cd ~/.vim/plugged/YouCompleteMe
$python3 install.py --go-completer
// 安装子模块
$git submodule update --init --recursive
$python3 install.py --go-completer

因为子模块有一些包在墙外,还是要解决网络的问题。YouCompleteMe号称是vim上最难安装的插件。主要的困难还是来自网络吧,所以,在安装时,先要解决网络的问题。

最终成果

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-08-22,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 云端漫记 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
【玩转Lighthouse】在Lighthouse配置Vim的YouCompleteMe:文本编辑更清爽和强大,并具有一定的IDE能力
Vim的强大已经是毋庸置疑了。并且开源社区内大佬们十分活跃,满满的安全感^_^。本文将介绍Vim如何编译安装,并支援Python,进而安装号称最难安装的Vim插件:YouCompleteMe。以下为了方便,我简称为:YCM。配合它,可以让你的Vim文本编辑更强大和清爽,并具有一定的IDE能力。不能说完全媲美IDE,但是也算多了个不错的工具啦。
Mintimate
2022/04/22
2K6
【玩转Lighthouse】在Lighthouse配置Vim的YouCompleteMe:文本编辑更清爽和强大,并具有一定的IDE能力
mac编辑器vim美化
一处是所有用户通配的位置,位于/usr/share/vim下,名称为vimrc,无后缀
小胖
2019/08/27
1.9K0
mac编辑器vim美化
TextWrangler和Vim配置GoLang 语法高亮
OSX 下配置VIM语法高亮 Vim原生不支持golang语法高亮,因此要借助插件。功能强大又好用的插件有很多,这里就只简单介绍一种。 vim-go插件,github在[这里](https://gi
gigiwangs
2019/03/01
2.2K0
ubuntu16.04打造vim和pyt
ubuntu16.04 安装支持python3的IDE 1. 安装vim: # apt-get install  -y vim-gnome 2. 安装ctags,ctags用于支持taglist # apt-get install ctags 3. 安装taglist # apt-get install vim-scripts vim-addon-manager # vim-addons install taglist 4. 安装pydiction 实现代码补全: #wget  https://www.vi
py3study
2020/01/03
7340
vim-IDE进化03-插件管理器plug插件
vim 如果不添加插件,仅仅只有原来的编译文本等功能,加上插件之后,就可以做更多事情,加快处理效率,比如可以把它打造成一个写作环境、开发IDE,相当之好用。 插件可以手动添加,手动添加步骤需要下载、解压、将文件放到对应目录下步骤多一些。可以使用挺件管理,很方便的添加自己需要的插件
潇洒
2023/10/23
7390
vim-IDE进化03-插件管理器plug插件
Ubuntu18.04下VIM安装及配置
2020/07/02更新: 前不久发现网上已经有了一个很屌的vim项目。感觉对不起自己这篇文章的几万浏览量诶 😃 github上的vimplus项目。运行安装脚本一键下载安装。 https://github.com/chxuan/vimplus 效果如下: ---- 作者:陈浩 更新日期:2018-09-21 1.安装VIM $sudo apt-get install vim 我的vim 已经是最新版 (2:8.0.1453-1ubuntu1)。 2.VIM主题scheme设置
全栈程序员站长
2022/11/11
1.9K0
Vim 插件管理及 vimrc 配置
当没有插件管理器时,Vim 用户必须手动下载 tarball 包形式的插件,并将它们解压到 ~/.vim 目录中。所有插件文件分散在单个目录中,用户无法找到哪个文件属于哪个插件。此外,他们无法找到他们应该删除哪个文件来卸载插件,这时 Vim 插件管理器就可以派上用场。插件管理器将安装插件的文件保存在单独的目录中,因此管理所有插件变得非常容易。
1ess
2021/11/01
1.2K0
2018 更新下vim 插件
周末网上晃荡看到一些关于 vim8 异步和插件的文章,觉得有些新功能挺实用的,所以花了点时间升级下自己的 vim 配置。 本文介绍一些使用到的实用插件以及参考配置。
orientlu
2018/09/13
2.8K0
2018 更新下vim 插件
vim-plug:简洁高效的Vim插件管理工具
今天无意中发现了这个vim-plug这个简洁又高效的Vim插件管理工具,试了下,安装插件简直没法再容易,大大减小了配置难度,对于我这种既想要Vim及插件强大的功能但又不想花费太多时间到配置上的懒人来说,Vim-plug简直就是神器了。 借用作者的原话,Vim-plugin有下面的优点:
王云峰
2019/12/25
1.8K0
vim-plug:简洁高效的Vim插件管理工具
vim设置go语法高亮
版权声明:欢迎转载,请注明出处,谢谢。 环境信息 操作系统:CentOS 7.6.1810 go版本:1.12 vim版本:7.4.1099 准备工具 确保vim、git、wget这三个工具已安装; 一次操作完成设置 执行以下命令即可完成go语法高亮设置: mkdir -p ~/.vim/autoload \ && mkdir -p ~/.vim/plugged \ && cd ~/.vim/plugged \ && git clone https://github.com/fatih/vim-go vim
程序员欣宸
2019/05/26
2.7K0
Vim定制化简介
Vim是几乎所有Unix系统中都会存在的少数文本编辑器之一。虽然最初的学习曲线是不可避免的,但Vim的目标是成为一个高效的文本编辑器,并提供一个根据用户喜好可配置的插件系统。它还支持数百种编程语言和文件扩展名。
双愚
2018/08/28
1.4K0
Vim定制化简介
NeoVim 安装及配置
GitHub仓库地址: https://github.com/minhanghuang/nvim
Autooooooo
2022/05/09
4.5K0
NeoVim 安装及配置
通过vim-plug安装UltiSni
安装plug (https://github.com/junegunn/v... curl -fLo ~/.vim/autoload/plug.vim --create-dirs \ https://raw.githubusercontent...
py3study
2020/01/02
6930
Vim折腾PowerShell篇
正式开始下面的内容之前,你可以考虑下要不要折腾,或者说是不是真的爱vim,如果不爱请离开,就现在,因为它真的带刺,没有足够的热爱就不会有足够的耐心和精力去维护和学习,vim很难学,但属于那种学会了就离不开的类型。
堆栈哲学
2022/11/24
1.8K0
Vim折腾PowerShell篇
从入门到精通:Vim 高效文本编辑全面指南
在 Linux 与类 Unix 环境中,Vim 凭借其高效、轻量、可扩展以及键盘导向的编辑哲学,赢得了无数开发者、运维人员与文本处理工作者的青睐。与传统的图形化文本编辑器不同,Vim 刻意将编辑与移动分离,以多种模式运作,让用户在键盘上就能快速完成复杂的文本操作。当你真正掌握其思维方式与快捷键布局后,会发现 Vim 并不只是一个编辑器,更像是文字与代码处理的“魔法杖”。
suye
2024/12/20
5510
从入门到精通:Vim 高效文本编辑全面指南
Windows安装WSL--Ubuntu
WSL(Ubuntu)将Ubuntu和Win10无缝连接起来,让开发人员可以不使用虚拟机,就轻松地在同一个系统中使用win10和Ubuntu,你可以用它代替Cywin32和babun.
php007
2019/11/28
3.9K0
【Vim 核心攻略】 —— 文本编辑高手的进阶秘籍
Vim 是一种强大且高度可定制的文本编辑器,广泛用于软件开发、系统管理和各种文本处理任务。它基于更早期的编辑器 Vi,并对其进行了扩展,因此也被称为 “Vi Improved”(Vi 的增强版)。Vim 的特点是快捷键驱动、支持多模式编辑以及可扩展性强。
换一颗红豆
2024/12/23
4200
【Vim 核心攻略】 —— 文本编辑高手的进阶秘籍
Win11平台安装和配置NeoVim0.8.2编辑器搭建Python3开发环境(2023最新攻略)
    毫无疑问,我们生活在编辑器的最好年代,Vim是仅在Vi之下的神级编辑器,而脱胎于Vim的NeoVim则是这个时代最好的编辑器,没有之一。异步支持、更好的内存管理、更快的渲染速度、更多的编辑命令,是大神Thiago de Arruda对开发者们最好的技术馈赠。
用户9127725
2023/03/01
2.2K0
Win11平台安装和配置NeoVim0.8.2编辑器搭建Python3开发环境(2023最新攻略)
想在linux平台拥有和vs一样的体验模式吗?只需配置一下你的vim便可以轻松达到,让你日常编写代码爽到飞起的vim配置,他来了
一份好的 Vim 配置,不仅仅是让你拥有一个强大的文本编辑器,它还能将 Vim 打造成一个类似 IDE(集成开发环境)的高效工作工具,让你在 Linux 中也能体验到编译器般的流畅和便捷。这不仅仅是编辑文本,它是一种沉浸式的编程体验。
猫咪-9527
2025/01/13
3450
终端文本编辑神器--Vim命令详解。如何配置Vim以及Vim插件?
Vim是一款跨平台的文本编辑器,不但可以运行在Unix,还可以运行在GNU、Windows平台,并且还支持丰富的插件,助力开发和使用。
Mintimate
2021/08/24
2.5K0
终端文本编辑神器--Vim命令详解。如何配置Vim以及Vim插件?
相关推荐
【玩转Lighthouse】在Lighthouse配置Vim的YouCompleteMe:文本编辑更清爽和强大,并具有一定的IDE能力
更多 >
LV.1
这个人很懒,什么都没有留下~
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验