chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

Linux中如何用vim做golang開發(fā)環(huán)境

馬哥Linux運維 ? 來源:CSDN博客 ? 作者:少年已不再年少年 ? 2021-10-08 17:20 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

vim 做 golang 開發(fā)環(huán)境,多么炫酷!還沒嘗試過用 vim 做開發(fā)環(huán)境的同學可以跟著這篇文檔把環(huán)境搭建起來了!

準備條件,是已經安裝好 golang 環(huán)境,還需要把 golang 的環(huán)境變量配置好,這里配置如下

[root@localhost bundle]# vim /etc/profile

在這個文件最后加上,GOPATH、GOBIN、GOROOT、PATH 的環(huán)境變量

export GOPATH=“/root/go”export GOBIN=“$GOPATH/bin”export GOROOT=“/usr/local/go”export PATH=“$PATH:/usr/local/go/bin”export PATH=“$PATH:/root/go/bin”

[root@localhost bundle]# source /etc/profile

安裝 git

[root@localhost ~]# yum install -y git

安裝 Vundle.vim

mkdir ~/.vim/bundle

git clone https://github.com/gmarik/Vundle.vim.git ~/.vim/bundle/Vundle.vim

安裝 vim-go

git clone https://github.com/fatih/vim-go.git ~/.vim/bundle/vim-go

修改~/.vimrc,如果沒有就創(chuàng)建。vimrc 文件

[root@localhost bundle]# vim ~/.vimrcset nocompatible “ be iMproved, required

filetype off ” required

“ set the runtime path to include Vundle and initialize

set rtp+=~/.vim/bundle/Vundle.vim

call vundle#begin()

” let Vundle manage Vundle, required

Plugin ‘gmarik/Vundle.vim’

Plugin ‘fatih/vim-go’“ All of your Plugins must be added before the following line

call vundle#end() ” required

filetype plugin indent on “ required

let g:go_version_warning = 0

如果覺得高亮的地方太少,可在~/.vimrc 下多添加如下配置

let g:go_highlight_functions = 1

let g:go_highlight_methods = 1

let g:go_highlight_structs = 1

let g:go_highlight_operators = 1

let g:go_highlight_build_constraints = 1

創(chuàng)建一個測試文件 test.go,將發(fā)現可以高亮了

[root@localhost bundle]# vim 。/test.go

下載 nerdtree 和 nerdtree-git-plugin

[root@localhost bundle]# git clone https://github.com/scrooloose/nerdtree.git ~/.vim/bundle/nerdtree

[root@localhost bundle]# git clone https://github.com/Xuyuanp/nerdtree-git-plugin.git ~/.vim/bundle/nerdtree-git-plugin

修改~/.vimrc

set nocompatible ” be iMproved, required

filetype off “ required

” set the runtime path to include Vundle and initialize

set rtp+=~/.vim/bundle/Vundle.vim

call vundle#begin()

“ let Vundle manage Vundle, required

Plugin ‘gmarik/Vundle.vim’

Plugin ‘fatih/vim-go’

Plugin ‘git://github.com/scrooloose/nerdtree.git’

Plugin ‘git://github.com/Xuyuanp/nerdtree-git-plugin.git’” All of your Plugins must be added before the following line

call vundle#end() “ required

filetype plugin indent on ” required

let g:go_version_warning = 0

“ NERDTree config

map 《F7》 :NERDTreeToggle《CR》 ”快捷鍵 F7,可以收放目錄樹的視圖

autocmd bufenter * if (winnr(“$”) == 1 && exists(“b:NERDTreeType”) &&b:NERDTreeType == “primary”) | q | endif

autocmd vimenter * NERDTree

nerdtree 的使用,這里不講解,大家可使用?命令來自己了解,如下

[root@localhost bundle]# vim ~/.vimrc

注意:使用 nerdtree 的命令,需要光標在目錄樹的窗口下才可以,如上圖,此時直接敲?即可

安裝 neocomplete

這個智能的提示功能需要很多限制條件,想要安裝成功請先閱讀這個網址:

https://blog.csdn.net/pei2215015/article/details/79813522

根據官網 https://github.com/shougo/neosnippet.vim 的提示安裝,修改~/.vimrc

[root@localhost bundle]# vim ~/.vimrc

在如上位置添加 3 個插件 Plugin

在~/.vimrc 文件的最后添加

let g:neocomplete#enable_at_startup = 1

:wq 保存退出

打開 vim,執(zhí)行:PluginInstall

[root@localhost .vim]# vim

:PluginInstall

出現 Done 即安裝成功

安裝 ctags、gotags 和 tarbar

[root@localhost bundle]# yum install -y ctags

如上面第 9 個步驟一樣,在~/.vimrc 中添加插件

Plugin ‘jstemmer/gotags’

Plugin ‘majutsushi/tagbar’

保存之后,打開 vim,執(zhí)行:PluginInstall,如下

[root@localhost .vim]# vim

:PluginInstall

出現 Done 即安裝成功

在~/.vimrc文件最后加入以下內容:

let g:tagbar_type_go = {

‘ctagstype’ : ‘go’,

‘kinds’ : [

‘p:package’,

‘i1’,

‘c:constants’,

‘v:variables’,

‘t:types’,

‘n:interfaces’,

‘w:fields’,

‘e:embedded’,

‘m:methods’,

‘r:constructor’,

‘f:functions’

],

‘sro’ : ‘。’,

‘kind2scope’ : {

‘t’ : ‘ctype’,

‘n’ : ‘ntype’

},

‘scope2kind’ : {

‘ctype’ : ‘t’,

‘ntype’ : ‘n’

},

‘ctagsbin’ : ‘gotags’,

‘ctagsargs’ : ‘-sort -silent’

}

安裝 mark.vim

地址:https://www.vim.org/scripts/script.php?script_id=2666,我這里演示中下載的是

直接使用 vim 打開

[root@localhost bundle]# vim 。/mark-3.0.0.vmb.gz

在 vim 的命令模式下輸入

:so %

即安裝成功

在~/.vimrc 中添加

nmap ml 《Plug》MarkSet #高亮或反高亮一個單詞

nmap md 《Plug》MarkClear

nmap mn 《Plug》MarkSearchAnyNext #跳轉到任一下一個高亮單詞

nmap mp 《Plug》MarkSearchAnyPrev

nmap mf 《Plug》MarkSearchCurrentNext #跳轉到當前高亮的下一個單詞

nmap mb 《Plug》MarkSearchCurrentPrev

安裝 goimports

[root@localhost src]# cd /root/go/src

[root@localhost src]# mkdir golang.org

[root@localhost golang.org]# mkdir x

[root@localhost golang.org]# cd 。/x

[root@localhost x]# git clone https://github.com/golang/tools.git

[root@localhost x]# cd 。/tools/cmd/goimports/

[root@localhost goimports]# go install

使用方法:在 vim 的命令模式下輸入:GoImports

注意:在 tools/cmd 下還有很多命令工具,可以使用同樣的方法安裝

安裝 golint,對 go 代碼進行 lint 檢查

[root@localhost golang.org]# cd /root/go/src/golang.org/x/

[root@localhost x]# git clone https://github.com/golang/lint

[root@localhost x]# cd 。/lint/

[root@localhost golint]# go install

使用方法:在 vim 的命令模式下輸入:GoLint

讓 vim 支持 gocode

[root@localhost vim]# cd /root/go/src/github.com/gocode/vim

[root@localhost vim]# 。/update.sh

如果還需要安裝其他的第三方庫,請按照下面地址去學習

https://www.golangtc.com/download/package

這里就不一一演示了,所有操作和上面的都是一樣的了

最后的~/.vimrc 的文件是這樣子的

set nocompatible “ be iMproved, required

filetype off ” required

“ set the runtime path to include Vundle and initialize

set rtp+=~/.vim/bundle/Vundle.vim

call vundle#begin()

” let Vundle manage Vundle, required

Plugin ‘gmarik/Vundle.vim’

Plugin ‘fatih/vim-go’

Plugin ‘git://github.com/scrooloose/nerdtree.git’

Plugin ‘git://github.com/Xuyuanp/nerdtree-git-plugin.git’

Plugin ‘Shougo/neocomplete’

Plugin ‘Shougo/neosnippet’

Plugin ‘Shougo/neosnippet-snippets’

Plugin ‘jstemmer/gotags’

Plugin ‘majutsushi/tagbar’

“ All of your Plugins must be added before the following line

call vundle#end() ” required

filetype plugin indent on “ required

let g:go_version_warning = 0

let g:go_highlight_functions = 1

let g:go_highlight_methods = 1

let g:neocomplete#enable_at_startup = 1

” NERDTree config

map 《F7》 :NERDTreeToggle《CR》

autocmd bufenter * if (winnr(“$”) == 1 && exists(“b:NERDTreeType”) && b:NERDTreeType == “primary”) | q | endif

autocmd vimenter * NERDTree

“ mark config

nmap ml 《Plug》MarkSet

nmap md 《Plug》MarkClear

nmap mn 《Plug》MarkSearchAnyNex

nmap mp 《Plug》MarkSearchAnyPrev

nmap mf 《Plug》MarkSearchCurrentNext

nmap mb 《Plug》MarkSearchCurrentPrev

nmap 《F8》 :TagbarToggle《CR》

let g:tagbar_type_go = {

‘ctagstype’ : ‘go’,

‘kinds’ : [

‘p:package’,

‘i1’,

‘c:constants’,

‘v:variables’,

‘t:types’,

‘n:interfaces’,

‘w:fields’,

‘e:embedded’,

‘m:methods’,

‘r:constructor’,

‘f:functions’

],

‘sro’ : ‘?!?/p>

‘kind2scope’ : {

‘t’ : ‘ctype’,

‘n’ : ‘ntype’

},

‘scope2kind’ : {

‘ctype’ : ‘t’,

‘ntype’ : ‘n’

},

‘ctagsbin’ : ‘gotags’,

‘ctagsargs’ : ‘-sort -silent’

}

有時間再補充下各個插件是怎么使用的吧。

安裝 ack,這里是新補充的

[root@localhost kingshard]# yum install -y ack

[root@localhost bundle]# git clone https://github.com/mileszs/ack.vim.git ~/.vim/bundle/ack

在~/.vimrc中添加插件位置添加 Ack 和在文件最后添加快捷鍵 F4

Plugin ‘mileszs/ack’

map 《F4》 :Ack

光標停留在某函數或變量名上,按 F4 回車,即可全局搜索調用處

總結:可能會經常使用的快捷鍵

打開目錄窗口:F7

打開符號窗口:F8

各窗口間的相互跳轉:ctr+w+w

跳轉到函數定義處:gd

向前:tab 鍵

向后:ctr+o

高亮光標所在的單詞:ml

取消光標所在單詞的高亮:md

下一個高亮的單詞:mf

上一個高亮的單詞:mp

轉自:blog.csdn.net/pei2215015/article/details/79802351

責任編輯:haq

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯系本站處理。 舉報投訴
  • Linux
    +關注

    關注

    88

    文章

    11621

    瀏覽量

    217807
  • VIM
    VIM
    +關注

    關注

    0

    文章

    137

    瀏覽量

    16109

原文標題:Linux 下 golang 的 vim 環(huán)境配置

文章出處:【微信號:magedu-Linux,微信公眾號:馬哥Linux運維】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    【免費送書】成為硬核Linux開發(fā)者:《Linux 設備驅動開發(fā)(第 2 版)》

    Linux系統(tǒng)的設備驅動開發(fā),一直給人門檻較高的印象,主要因內核機制抽象、需深度理解硬件原理、開發(fā)調試難度大所致。2021年,一本講解驅動開發(fā)的專著問世即獲市場青睞,暢銷近萬冊——這便
    的頭像 發(fā)表于 11-18 08:06 ?378次閱讀
    【免費送書】成為硬核<b class='flag-5'>Linux</b><b class='flag-5'>開發(fā)</b>者:《<b class='flag-5'>Linux</b> 設備驅動<b class='flag-5'>開發(fā)</b>(第 2 版)》

    移植蜂鳥需要在Linux環(huán)境下嗎?

    《手把手教你設計CPU》書上運行Verilog仿真測試那章說為了重現仿真環(huán)境,最好在Linux環(huán)境下。不知道移植蜂鳥是否需要在Linux環(huán)境
    發(fā)表于 11-10 07:42

    飛凌嵌入式ElfBoard-Vim編輯器之Vim常用操作命令

    /hello$ vim hello.c +4使用vim打開文件后,默認為一般模式。2.文件對比Vim的vimdiff對比工具可以很容易實現文件對比的功能,用法舉例如下:我們修改一個h
    發(fā)表于 10-14 09:15

    飛凌嵌入式ElfBoard-常用編輯器之Vim編輯器

    環(huán)境開發(fā),有windows界面軟件使用習慣的程序員不怎么友好,所以,也可以使用gedit文本編輯器,gedit類似windows的寫字板程序,有友好的圖形界面。對于不經常在Linux
    發(fā)表于 10-13 08:47

    Vim編輯器高效操作流程

    在現代運維工作,服務器配置管理、日志分析、腳本編寫等任務幾乎占據了工程師日常工作的大部分時間。作為Linux系統(tǒng)標配的文本編輯器,Vim以其強大的功能和極高的效率贏得了無數運維工程師的青睞。然而,
    的頭像 發(fā)表于 09-02 16:45 ?620次閱讀

    【HZ-T536開發(fā)板免費體驗】5、安裝sqlite3和使用golang讀寫數據庫

    ://golang.google.cn/dl/go1.25.0.linux-arm64.tar.gz 下載完畢后,我們需要把編譯環(huán)境解壓縮到指定目錄里。我習慣在用戶目錄里創(chuàng)建一個.bin目錄,然后
    發(fā)表于 08-26 00:04

    Linux 應用開發(fā)手冊

    T507linux應用開發(fā)手冊
    發(fā)表于 08-22 17:01 ?10次下載

    開發(fā)環(huán)境一鍵部署 | 如何搭建Docker環(huán)境編譯ARM程序?

    智能化科技領域,嵌入式系統(tǒng)開發(fā)占據著極為重要的地位。瑞迅科技RK3568、RK3588主板及核心板以其卓越的性能,為眾多應用場景賦能。基于Linux系統(tǒng)搭建其開發(fā)環(huán)境,為用戶開啟高效
    的頭像 發(fā)表于 08-15 11:06 ?673次閱讀
    <b class='flag-5'>開發(fā)</b><b class='flag-5'>環(huán)境</b>一鍵部署 | 如何搭建Docker<b class='flag-5'>環(huán)境</b>編譯ARM程序?

    【Milk-V Duo S 開發(fā)板免費體驗】Duo S(SG2000)開發(fā)環(huán)境搭建

    開發(fā)環(huán)境Linux主機:Ubuntu 20.04 開發(fā)板:DuoS (SG2000) Windows 下有很多虛擬機軟件,目前市面上流行的有 VMware 和 VirtualBox
    發(fā)表于 08-10 16:58

    【HZ-RK3568開發(fā)板免費體驗】合眾HZ-RK3568開發(fā)環(huán)境搭建

    開發(fā)環(huán)境: 主機:Ubuntu 20.04 開發(fā)板:合眾HZ-RK3568開發(fā)板 Windows 下有很多虛擬機軟件,目前市面上流行的有 VMware 和 VirtualBox。 VM
    發(fā)表于 07-15 23:13

    【米爾RK3576開發(fā)板免費體驗】1、開發(fā)環(huán)境、鏡像燒錄、QT開發(fā)環(huán)境搭建以及應用部署

    /output/rockchip_rk3576/host/environment-setup 其中的SDK安裝路徑根據自身放置Linux SDK的位置進行修改。 在命令行,執(zhí)行以下指令配置工具鏈開發(fā)
    發(fā)表于 07-14 11:26

    Linux系統(tǒng)環(huán)境監(jiān)測終極指南

    Linux系統(tǒng)環(huán)境主要監(jiān)測CPU、內存、磁盤I/O和網絡流量。
    的頭像 發(fā)表于 06-25 14:41 ?517次閱讀
    <b class='flag-5'>Linux</b>系統(tǒng)<b class='flag-5'>環(huán)境</b>監(jiān)測終極指南

    Vim編輯器的基本操作

    在代碼的世界里,效率是永恒的追求。無論是新手開發(fā)者還是資深工程師,都渴望擁有一款能讓自己如虎添翼的編輯器。而在Linux生態(tài),有一款被無數程序員奉為神器、被譽為“效率之王”的編輯器——Vim
    的頭像 發(fā)表于 05-06 13:41 ?946次閱讀
    <b class='flag-5'>Vim</b>編輯器的基本操作

    LinuxVim編輯器的使用技巧

    Vim】常用總結? 簡介? image 什么是vim?? Linux下兩大編輯神器之一 vim ? Linux/Unix下使用最多的編輯器
    的頭像 發(fā)表于 04-01 17:36 ?1014次閱讀
    <b class='flag-5'>Linux</b>下<b class='flag-5'>Vim</b>編輯器的使用技巧

    迅為RK3568開發(fā)板驅動指南Linux通用SPI設備驅動

    迅為RK3568開發(fā)板驅動指南Linux通用SPI設備驅動
    的頭像 發(fā)表于 01-23 11:02 ?3403次閱讀
    迅為RK3568<b class='flag-5'>開發(fā)</b>板驅動指南<b class='flag-5'>Linux</b><b class='flag-5'>中</b>通用SPI設備驅動