Pregunta

Estoy tratando de encontrar una buena herramienta de programación alfabetizada. Digamos que no es una decisión fácil. (Los genéricos son demasiado genéricos y los específicos son demasiado específicos :) )

Entre otros, tengo noweb en funcionamiento pero tengo problemas para obtener resultados como esperaba. La noweb página de wikipedia tiene un ejemplo mínimo que se construye correctamente con

noweave -index -latex hello.noweb > hello.tex && pdflatex hello && pdflatex hello

pero no hay referencias cruzadas al final de cada fragmento. Por ejemplo, CWEB tiene punteros como "Este código se usa en la sección 12." y "Ver también las secciones 5 y 7." ¿Esta característica simplemente falta en noweb o me falta un paso en la compilación?

¿Fue útil?

Solución

  

¿Esta característica simplemente falta en noweb o me falta un paso en la compilación?

Ninguno de los dos: noweb usa marcadores mucho más sutiles de los que estás acostumbrado a ver desde CWEB. En el caso del ejemplo de Wikipedia, el tercer fragmento (1c) aparece en los fragmentos 1a y 1b. Esta información se condensa en un solo '1', que aparece entre paréntesis en el lado derecho de la definición.

Para obtener referencias cruzadas largas en el estilo CWEB, use

\noweboptions{longxref}

Otros consejos

Usted debería obtener, para ese ejemplo de WP, una referencia a la sección de licencia de cada uno de los dos fragmentos en la sección Hello World. No obtendrá ninguna lista de fragmentos o identificadores al final a menos que le informe sobre el látex.

Para obtener una lista de fragmentos web, intente colocar \ nowebchunks cerca del final del documento (es decir, después de que aparezca el último fragmento) y agregue un -x cambiar a la invocación de noweb.

Para obtener una lista de identificadores, intente colocar \ nowebindex en un lugar similar.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top