¿Existe un estándar para escribir una sinopsis de comando?

14

Me parece que todos tienen su propia idea sobre cómo escribir una sinopsis que describa el uso de comandos para el usuario final.

Por ejemplo, este es el formato de man grep:

grep [OPTIONS] PATTERN [FILE...]
grep [OPTIONS] [-e PATTERN | -f FILE] [FILE...]

Ahora esto tiene una sintaxis que aparece en otras páginas de manual. []se reconoce como opcional y ...tiene sentido como múltiplo de la misma entrada.

Pero la gente usa |o /para OR y hay otros que revertirán lo que []significa. O no dan ninguna indicación de a dónde [OPTIONS]va.

Me gustaría seguir un estándar para lo que escribo, pero cada sitio web que miro me dice algo diferente.

¿Existe una forma estándar real de escribir sinopsis, o es la convención lo que la gente ha estado haciendo con el tiempo?

Tormyst
fuente
Elige uno y quédate con él.
Kevin
Por alguna razón, no creo que eso ayude. Cada persona tendría su propio estándar, y luego nada se haría al respecto.
Tormyst
44
¿Es este el tipo de estándar que quieres decir? pubs.opengroup.org/onlinepubs/009695399/basedefs/…
Mark Plotnick
Sí, esto es exactamente lo que estaba buscando. Gracias.
Tormyst
1
@ MarkPlotnick: convertiría eso en una A para que el OP pueda aceptarlo. Ese es el estándar si alguna vez hubo uno. Haga referencia al enlace que iluminé hizo referencia.
slm

Respuestas:

8

El estándar clásico para esto es POSIX, Sintaxis de argumento de utilidad (gracias a @ illuminÉ por el enlace actualizado). Describe la sintaxis que se utilizará en las páginas man, por ejemplo

utility_name[-a][-b][-c option_argument]
    [-d|-e][-f[option_argument]][operand...]

Al ser clásico, recomienda el uso de opciones de un solo carácter, con el -Wuso recomendado por los proveedores, y así es como se acomodan las opciones de varios caracteres (ver, por ejemplo, Resumen de opciones de gcc ).

El software GNU introdujo opciones de varios caracteres que comienzan con --. Puede encontrar algunas pautas de GNU para formatear páginas man con esas opciones en la referencia de help2man .

Mark Plotnick
fuente