DevToolPal
PL

Formater Go

Formatuj kod źródłowy Go za pomocą gofmt skompilowanego do WebAssembly i działającego w twojej przeglądarce.

Działa lokalnie, nic nie jest wysyłane

Opcje

Wcięcie

Wejście

0 znaków · 0 B

Wynik

0 znaków · 0 B

Do czego służy to narzędzie

Formater Go przepisuje kod źródłowy Go do jedynego kanonicznego stylu, którego używa cała społeczność Go. Wklej plik lub fragment, a wróci z wcięciami, odstępami, grupowaniem importów oraz wyrównanymi polami struktur i komentarzami w stylu gofmt.

Działa tu prawdziwy gofmt z toolchaina Go, skompilowany do WebAssembly. Nic nie jest przybliżone: to, co widzisz, jest dokładnie tym, co zapisałby go fmt, więc sformatowany kod możesz commitować bez wywoływania różnic w CI.

Jak używać

  1. Wklej kod Go lub otwórz plik .go.
  2. Sformatowany kod pojawia się po prawej w trakcie pisania.
  3. Zostaw wcięcie Tabulator dla kodu, który będziesz commitować. Wybierz 2 spacje lub 4 spacje, gdy kod trafi do dokumentu, na slajd lub na stronę, która renderuje tabulatory zbyt szeroko.
  4. Skopiuj lub pobierz wynik.

Jeśli kodu nie da się sparsować, narzędzie pokazuje pierwszy błąd z jego wierszem i kolumną, na przykład expected ')', found '{', i możesz od razu przejść do tego wiersza.

Przykład

Przykład to krótki program ściśnięty w jak najmniejszą liczbę wierszy: importy oddzielone średnikami, struktura w dwóch wierszach i funkcje bez spacji wokół operatorów. Po sformatowaniu:

  • importy stają się blokiem w nawiasach z jednym pakietem na wiersz;
  • pola struktury trafiają do osobnych wierszy, a ich typy są wyrównane w kolumnie;
  • if u.Age<18{ staje się if u.Age < 18 { z ciałem w osobnym wierszu;
  • literały złożone dostają spacje po przecinkach i dwukropkach.

Co gofmt zmienia, a czego nie

gofmt zmienia wyłącznie układ. Nigdy nie zmienia nazw identyfikatorów, nie przestawia deklaracji ani nie usuwa nieużywanych importów; to zadania narzędzi takich jak goimports i go vet. Zachowuje też twoje podziały wierszy tam, gdzie mają znaczenie, więc długa lista argumentów rozbita na kilka wierszy pozostaje rozbita.

Komentarze są zachowywane i wcinane razem z otaczającym je kodem. Komentarze na końcu kolejnych wierszy są wyrównywane w kolumnie, tak jak pola struktur.

Wskazówki

  • Formatowanie to szybki sposób na znalezienie brakującego nawiasu klamrowego: pozycja błędu zwykle wskazuje pierwszy wiersz po pomyłce.
  • Uruchom formater, zanim udostępnisz kod w zgłoszeniu lub code review. Recenzenci mogą wtedy skupić się na tym, co kod robi, a nie jak wygląda.
  • W edytorze włącz „format on save” z gopls, aby twoje pliki zawsze zgadzały się z tym wynikiem.

FAQ

› Czy to prawdziwy gofmt?

Tak. Formater to kod gofmt z toolchaina Go skompilowany do WebAssembly, więc wynik jest bajt w bajt taki sam, jak to, co wypisuje `gofmt` lub `go fmt` na twoim komputerze.

› Czy potrzebuję klauzuli package?

Nie. Najlepiej sprawdza się pełny plik, ale gofmt przyjmuje też listę deklaracji lub kilka instrukcji, co jest wygodne przy fragmentach skopiowanych z wpisu na blogu lub czatu.

› Dlaczego do wcięć używane są tabulatory?

gofmt zawsze wcina tabulatorami i wyrównuje spacjami. Taka jest konwencja Go, a edytory wyświetlają tabulatory w dowolnej szerokości. Jeśli potrzebujesz spacji do dokumentu lub slajdu, wybierz 2 lub 4 spacje — zastąpione zostaną tylko tabulatory na początku wierszy.

› Czy mój kod jest wysyłany na serwer?

Nie. Moduł WebAssembly jest pobierany raz, a formatowanie odbywa się lokalnie w twojej przeglądarce.