Zed縮排的違和感與元字元的憂鬱

大家好,我是無能。
我基本上是那種喜歡標準的東西就標準地使用的人,所以不想在.vimrc裡寫一堆東西,這樣一來,其他語言的自動縮排功能就變得相當困難,所以我最近開始使用Zed,但總覺得有點奇怪。
這是什麼呢...。
總覺得和用zeditor打開時看到的世界大相徑庭。感覺很不舒服,於是進行了調查。
用cat -A查看的話...。
$ cat -A main.go
package main$
$
import ($
^I"fmt"$
^I"net/http"$
^I"os"$
$
^I"golang.org/x/net/html"$
)$
$
func fetchOGP(url string) (siteName string, title string, err error) {$
^Iresp, err := http.Get(url)$
^Iif err != nil {$
^I^Ireturn "", "", fmt.Errorf("failed to fetch OGP URL: %w", err)$
^I}$
^Idefer resp.Body.Close()$
$
^Idoc, err := html.Parse(resp.Body)$
^Iif err != nil {$
^I^Ireturn "", "", fmt.Errorf("failed to parse HTML: %w", err)$
^I}$
$
^Ivar findOGP func(*html.Node)$
^IfindOGP = func(n *html.Node) {$
^I^Iif n.Type == html.ElementNode && n.Data == "meta" {$
^I^I^Ivar property, content string$
^I^I^Ifor _, attr := range n.Attr {$
^I^I^I^Iif attr.Key == "property" {$
^I^I^I^I^Iproperty = attr.Val$
^I^I^I^I} else if attr.Key == "content" {$
^I^I^I^I^Icontent = attr.Val$
^I^I^I^I}$
^I^I^I}$
咦...?
雖然無可奈何但還是設法解決了,但是
試著替換一次後再用Zed保存。 這樣替換一次後...。
sed "s/\t/ /g"
然後,用Zed保存後再cat -A一次的話...。
$ cat -A main.go
package main$
$
import ($
^I"fmt"$
^I"net/http"$
^I"os"$
$
^I"golang.org/x/net/html"$
)$
$
func fetchOGP(url string) (siteName string, title string, err error) {$
^Iresp, err := http.Get(url)$
^Iif err != nil {$
^I^Ireturn "", "", fmt.Errorf("failed to fetch OGP URL: %w", err)$
^I}$
^Idefer resp.Body.Close()$
$
^Idoc, err := html.Parse(resp.Body)$
^Iif err != nil {$
^I^Ireturn "", "", fmt.Errorf("failed to parse HTML: %w", err)$
^I}$
$
^Ivar findOGP func(*html.Node)$
哇啊啊啊啊啊啊啊啊啊啊
無法擺脫...。
如果無論如何都想使用2空格縮排的話
在zed的vim模式下執行:%s/\t/ /g後再:wq似乎沒有意義
每次都執行sed -i "s/\t/ /g,或者只能分叉(fork)後完全為自己重新建置(build)了...。
話說回來
Indentation conversion #4291
關於轉換的issue已經存在了。
然後,先用sed將所有tab字元替換掉,再將~/.config/zed/settings.json設定為
"useTabs": false,
"hard_tabs": false,
這樣設定的話,暫時可以擺脫困擾。
但是,格式化工具(formatter)會作用的import部分,似乎無論如何都會變成tab縮排。
咦?我原本那種喜歡標準的東西就標準地使用的性格呢?
我是這麼想的,用go fmt可以讓縮排變得整齊,但它會自動變成tab縮排。
如果標準推薦使用tab縮排,那麼特意使用2空格縮排是不是很愚蠢呢?
......
感覺哪種都無所謂了...。
那麼,下次再見。
請多關照。