gofmt和goimports的縮排

2021-09-25 10:42:07 字數 840 閱讀 4674

go原生的format格式化都是tab,且使8個字元寬度,但是由於我們團隊都是由php技術轉過來的,然後很多同事都使用golang工具,可以自帶設定縮排為4個空格,所以為了沿用之前的風格,都採用4個空格為縮排。

options = &imports.options
然而編譯後並不生效,自動格式化**仍然還是tab,很無奈-_-,為啥就沒有乙個真正解決問題的。

其實goimports只是對import的**進行格式修改,最終對整個**進行tab替換的使go原生的goformat,這裡介紹下修改方法:

1. 修改go的原生的goformat原始檔,通過命令「 go env goroot」查詢系統預設的goroot目錄,我的是:/usr/local/cellar/go/1.11/libexec/

進入src的go format目錄。/usr/local/cellar/go/1.11/libexec/src/go/format修改format.go檔案,如下:

var config = printer.config 注釋掉printer.tabindent,修改tabwidth為4

2.  重新安裝goimports,命令如下:

go install golang.org/x/tools/cmd/goimports

至此vscode自動儲存呼叫goformat的自動化格式**,就會是4個空格了。

總結: 沒有解決不了的問題,只要下決心去研究始終能解決的,然後順便吐槽下網際網路很多東西都是複製黏貼,真正寫東西的人太少了。

be the first to comment.

調整gofmt和goimports的縮排

goimports是乙個類似於gofmt的go 格式化工具,除此之外還可以自動修正import的package,但僅限於標準庫。goimports的縮排預設是8個長度單位的tab,但個人已經習慣了4個長度單位,所以對goimports進行了一下修改,使其行首縮排4格。2 修改tab相關引數 func...

go fmt列印詳解

軟體包fmt實現了格式化的i o,其功能類似於c的printf和scanf。格式 動詞 來自c,但更簡單。佔位符說明 示例輸出 v相應值的預設格式 printf v person v類似 v,但輸出結構體時會新增欄位名式 printf v person v相應值的go語法表示 printf v pe...

Windows下goimports的安裝

參考了幾個博文後成功安裝goimports 1 建立資料夾 mkdir gopath src golang.org x 2 進入資料夾 cd gopath src golang.org x git clone 3 2 網速不行走gitee git clone 4安裝 在cmd目錄下 go insta...