Invoer

Uitvoer

Wat is Protocol Buffers (Protobuf)?

Protocol Buffers (Protobuf) is een taal- en platformonafhankelijk serialisatieformaat van Google. .proto-bestanden definiëren bericht- en service-schema's en worden veel gebruikt met gRPC-API's.

De Protobuf-formatter normaliseert inspringing (2 spaties per niveau), herstelt blokuitlijning en verwijdert overbodige spaties — zodat .proto-schema's consistent en leesbaar blijven. Zie de Protobuf-stijlgids en de broncode op het protobuf GitHub-repository.

Gebruik

1

Plak uw .proto-inhoud

Plak uw Protocol Buffer-schema in de editor links of klik op Uploaden om een .proto-bestand te laden.

2

Direct formatteren

De formatter herstelt inspringing (2 spaties per niveau), normaliseert message- en serviceblokken en verwijdert overbodige spaties aan het regeleinde.

3

Kopiëren of downloaden

Gebruik Kopiëren om het resultaat te kopiëren of Downloaden om het als .proto-bestand op te slaan.

Opmaakvoorbeeld

Voorbeeld: Een proto3-berichtdefinitie opmaken

Niet-opgemaakte invoer:

syntax="proto3";package api;message User{string name=1;int32 age=2;repeated string roles=3;bool active=4;}

Opgemaakte uitvoer:

syntax = "proto3";
package api;

message User {
  string name = 1;
  int32 age = 2;
  repeated string roles = 3;
  bool active = 4;
}

Veelgestelde vragen

Wat is het verschil tussen proto2 en proto3?

Proto3 is nieuwer en aanbevolen. Het verwijdert required/optional-veldregels, gebruikt eenvoudigere standaarden en heeft betere JSON-ondersteuning. De formatter ondersteunt beide versies.

Kan ik dit gebruiken voor gRPC-servicedefinities?

Ja. gRPC gebruikt standaard Protobuf-syntax met service- en rpc-blokken, die de formatter correct verwerkt.

Valideert de formatter Protobuf-syntax?

De formatter normaliseert inspringing en blokstructuur maar voert geen volledige semantische validatie uit. Gebruik protoc voor volledige compilatie en validatie.

Welke inspringstijl gebruikt de formatter voor .proto-bestanden?

De formatter volgt de officiële Protobuf-stijlgids, die 2 spaties per inspringniveau aanbeveelt. Geneste blokken in message-, service- en enum-declaraties worden allemaal consistent ingesprongen.

Gerelateerde tools