Articulo de referencia

mandoc

{{cite web | url = http://mandoc.bsd.lv/NEWS | title = Release notes | date = September 23, 2021}} "},"programming language":{"wt":"[[C (programming language)|C]]"},"genre":{"wt...

mandoc (históricamente llamado mdocml ) es una utilidad que se utiliza para formatear páginas man en sistemas operativos BSD (por ejemplo, NetBSD ), específicamente aquellas escritas en los lenguajes de macros mdoc y man . A diferencia de groff y las herramientas más antiguas troff y nroff, que son utilizadas predominantemente para este propósito por herramientas como , mandoc se centra específicamente en manuales y no es adecuado para la composición tipográfica de propósito general .man

mandocSe utiliza principalmente para formatear los manuales mdoc utilizados en los sistemas operativos BSD , pero también implementa la mayoría de las macros man utilizadas en las distribuciones Linux , así como un subconjunto de comandos roff ocasionalmente intercalados con las macros man . [ 2 ] [ 1 ] : 1.14.5 No admite otros conjuntos de macros como mm y ms , ni ninguna característica de composición tipográfica como la división de palabras, las fuentes y la alineación. [ 2 ] : compatibilidad Se admiten estilos simples como negrita y cursiva, pero el texto en cursiva se reemplaza por texto subrayado en la terminal. [ 3 ] [ 4 ]

mandoc tiene soporte integrado para el preprocesador troff soelim (inclusión) y soporte integrado parcial para tbl y eqn . Tiene un fuerte soporte para la salida UTF-8. También puede usar la información semántica de los manuales mdoc para implementar la búsqueda semántica , que antes de la versión 1.4.1, dependía de sqlite . [ 1 ] : 1.4.1

Historia

El desarrollo comenzó en noviembre de 2008 específicamente para producir formas HTML de manuales habilitadas para CSS en respuesta a las limitaciones de groff . mandoc obtuvo la salida inicial en modo texto en febrero de 2009. [ 5 ] Luego se presentó en AsiaBSDCon-2009. [ 6 ] [ 7 ] [ 8 ] En el verano de 2010, mandoc fue el tema de un proyecto de Google Summer of Code con tutoría de NetBSD [ 9 ] para producir salida PostScript y PDF junto con las salidas de texto, HTML y XHTML existentes . Este trabajo se completó en agosto de 2010. [ 10 ] mandoc se convirtió en el formateador predeterminado de manuales para OpenBSD 4.8, lanzado en noviembre de 2010. [ 11 ] [ 12 ] Posteriormente se convirtió en el formateador predeterminado en NetBSD , FreeBSD , illumos , Void Linux , Alpine Linux y macOS , y también está incluido en DragonFlyBSD , MINIX 3 , Debian , Ubuntu , Gentoo y Fedora . [ 13 ] Sus ventajas se mencionaron como alta velocidad, [ 14 ] licencia y reimplementación limpia.

Ejemplo de uso

A continuación se muestra cómo se ejecuta mandocde forma independiente. Normalmente, se llamaría mediante la utilidad man . En este ejemplo, foo.1es el nombre de un manual UNIX mdoc . [ 15 ]

$ # Página manual en la terminal. $ mandoc -l foo.1 $ # Salida HTML con una hoja de estilos. $ mandoc -Thtml -Ostyle = style.css >foo.1.html 

Los manuales multibyte (localizados) también pueden renderizarse sin preprocesamiento. En este ejemplo, foo.jp.1se trata de un manual en japonés codificado en UTF-8 . mandoc detectará automáticamente la codificación. [ 15 ]

$ # Página del manual de caracteres anchos en la terminal. $ mandoc -l foo.jp.1 

La implementación apropos incluida puede utilizar información semántica en la búsqueda: [ 16 ]

$ # Buscar todas las funciones que comiencen con 'str' y tengan un tipo de retorno size_t: $ apropos -s 3 Ft = size_t -a Nm~^str 

Otras características

  • mandocAdmite salida HTML 5, PostScript y PDF a través del -Tparámetro. [ 15 ]
  • man.cgies un programa CGI diseñado para mostrar páginas de manual en la web. OpenBSD lo utiliza para dar formato a todas sus páginas de manual. [ 17 ]

Referencias

  1. 1 2 3 "Notas de la versión" . 23 de septiembre de 2021.
  2. 1 2Manual de información miscelánea de OpenBSDroff(7)  
  3. "Cursiva y color en las páginas del manual en una terminal virtual de espacio de usuario de nosh" . jdebp.eu .
  4. Manual de comandos generales de FreeBSD . "Los estilos de fuente se aplican mediante codificación con retroceso..."mandoc(1)  
  5. "Historial de origen" . Mdocml.bsd.lv . Consultado el 18 de diciembre de 2010 .
  6. "AsiaBSDCon 2009: Se desaconseja el uso de groff para la visualización manual de BSD" . 2009.asiabsdcon.org. 15 de marzo de 2009. Consultado el 18 de diciembre de 2010 .
  7. "Descontinuación de groff para la visualización manual de BSD" (PDF) . Consultado el 18 de diciembre de 2010 .
  8. "Vídeo de la presentación de AsiaBSDCon" . Youtube.com . Consultado el 18 de diciembre de 2010 .
  9. "Google Summer of Code: mandoc_ps" . Netbsd-soc.sourceforge.net . Consultado el 18 de diciembre de 2010 .
  10. "NetBSD Blog" . Blog.netbsd.org. 11 de agosto de 2010. Consultado el 18 de diciembre de 2010 .
  11. "OpenBSD 4.8" . Openbsd.org. 1 de noviembre de 2010. Consultado el 18 de diciembre de 2010 .
  12. "groff eliminado del árbol" .
  13. "Disponibilidad del conjunto de herramientas mandoc" . Mdocml.bsd.lv.
  14. Unangst, Ted. "Comparativas de velocidad de Mandoc" .
  15. 1 2 3Manual de comandos generales de OpenBSDmandoc(1)  
  16. Manual de comandos generales de OpenBSDapropos(1)  
  17. Manual del administrador del sistema OpenBSDman.cgi(8)  
  • repositorio de código fuente de mandoc
  • Páginas de manual en línea de OpenBSD , generadas por el programa man.cgi de mandoc.
  • Artículo sobre los no muertos en Mandoc
  • Sitio del proyecto mandoc_ps de Google Summer of Code : trabajo en la compatibilidad con PostScript.
  • Página de código gratuito para mandoc - utilizada hasta la versión 1.12.2
Obtenido de " https://en.wikipedia.org/w/index.php?title=Mandoc&oldid=1360282190 "