初學(xué)Go必備的vscode插件及最常用快捷鍵和代碼自動(dòng)補(bǔ)全
初學(xué)vscode寫go的必會(huì)操作和常見編譯錯(cuò)誤
寫在前面:
go 1.18和1.19已經(jīng)不需要手動(dòng)配置環(huán)境變量了,安裝后即自動(dòng)配置。vscode安裝教程和go語言環(huán)境配置網(wǎng)上相關(guān)教程文檔非常多,非常簡單!
1. vscode必備插件
1.Go、Code Runner
不解釋,運(yùn)行必備
2.Markdown All in One、Markdown Preview Enhanced、Paste Image
為進(jìn)行Markdown文檔編寫提供很多快捷鍵和自動(dòng)補(bǔ)全功能,使vscode可以完全代替Typora(學(xué)生黨拒絕付費(fèi)!且不用切換app,寫代碼和文檔都可以在vscode)
邊寫邊看到Markdown渲染之后的樣子,在 Preview 界面按住鼠標(biāo)右鍵可以打開功能欄,選擇Open in Browser可以將文件在瀏覽器打開,還可以選擇生成HTML或者PDF等
在Markdown中快捷插入圖片,復(fù)制圖片后在文檔中 ctrl + alt + v
粘貼后圖片自動(dòng)添加到文件夾目錄下;
也可以將圖片手動(dòng)添加到文件夾,將圖片拖到需要插入圖片的位置同時(shí)按 shift
;
也可以直接輸入 ![]()
后括號(hào)內(nèi)會(huì)自動(dòng)出現(xiàn)所含圖片名稱,上下選擇即可
3. vscode-icons
不同的文件展示不同的圖標(biāo),方便快速識(shí)別文件類型,非常好用!效果如下圖:
2. vscode最常用快捷鍵
- 行注釋 ctrl + /
- 塊注釋 shift + alt + a (按習(xí)慣可修改為 ctrl + shift + /)
- 刪除行 直接 ctrl + x 和剪切一樣且不用選中整行(正常為 ctrl + shift + k)
- 向下向上復(fù)制行 shift + alt + up/down
- 多行批量縮進(jìn)
ctrl + ] 或 tab //向右縮進(jìn)
ctrl + [ 或 shift + tab //向左縮進(jìn) - 向上/向下移動(dòng)行(也可理解為交換該行與上/下一行) alt+ up/down
- 查找、替換 ctrl + f / ctrl + h
- 移動(dòng)到行首/尾 home / end
3. vscode快速生成golang代碼片段
pkgm
:生成main包+main主函數(shù)
package main func main() { }
ff
:格式化輸出
fmt.Printf("", var)
fp
:Println換行輸出
fmt.Println("")
a.Print!
(輸入a.p
第一個(gè)就是,直接回車即可):格式化輸出變量a:
a := 1 fmt.Printf("a: %v\n", a)
for
:for循環(huán)
for i := 0; i < count; i++ { }
forr
:for range
for _, v := range v { }
tys
:快捷構(gòu)建結(jié)構(gòu)體
type name struct { }
4. 常見編譯錯(cuò)誤
1. expected 'package', found 'EOF'
- 運(yùn)行文件未保存,
ctrl + s
即可 - 項(xiàng)目文件存在空文件,將空文件移除,保存即可(常見由于多個(gè)main報(bào)錯(cuò)后將整個(gè)文檔注釋)
- 忘記在文件的首行寫package包會(huì)報(bào)
expected 'package', found 'import'
2. main redeclared in this block
(不影響運(yùn)行)
同一個(gè)目錄下面不能有多個(gè) main,調(diào)整或者創(chuàng)建多個(gè)文件夾分別放入對應(yīng)的文件下執(zhí)行即可
3. *expected ';', found 'EOF'
(不影響運(yùn)行)
- 這種錯(cuò)誤是 gopls 自身的 bug,好久了,一直沒有解決,所以直接重新加載 vscode,然后就正常了
‘EOF’`(不影響運(yùn)行) - 這種錯(cuò)誤是 gopls 自身的 bug,好久了,一直沒有解決,所以直接重新加載 vscode,然后就正常了
- 打開go項(xiàng)目時(shí),重新 Install/Update gopls 這樣在整個(gè)項(xiàng)目過程中,就不會(huì)出現(xiàn)只要一新建go文件就報(bào)上面的錯(cuò)誤了。但是重新打開還是會(huì)出現(xiàn),這個(gè)問題一直是官方gopls的問題
總結(jié)
到此這篇關(guān)于初學(xué)Go必備的vscode插件及最常用快捷鍵和代碼自動(dòng)補(bǔ)全的文章就介紹到這了,更多相關(guān)初學(xué)go必會(huì)操作內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
golang解析json數(shù)據(jù)的4種方法總結(jié)
在日常工作中每一名開發(fā)者,不管是前端還是后端,都經(jīng)常使用 JSON,下面這篇文章主要給大家介紹了關(guān)于golang解析json數(shù)據(jù)的4種方法,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2023-06-06Golang TCP網(wǎng)絡(luò)編程的具體實(shí)現(xiàn)
go語言是一門功能強(qiáng)大的編程語言,它提供了眾多的網(wǎng)絡(luò)編程庫,其中包括tcp/ip,本文主要介紹了Golang TCP網(wǎng)絡(luò)編程的具體實(shí)現(xiàn),具有一定的參考價(jià)值,感興趣的可以來了解一下2024-06-06

go-zero源碼閱讀之布隆過濾器實(shí)現(xiàn)代碼

Golang使用minio替代文件系統(tǒng)的實(shí)戰(zhàn)教程

Go語言模擬while語句實(shí)現(xiàn)無限循環(huán)的方法