Este es el nombre de comando que se puede ejecutar en el proveedor de alojamiento gratuito de OnWorks utilizando una de nuestras múltiples estaciones de trabajo en línea gratuitas, como Ubuntu Online, Fedora Online, emulador en línea de Windows o emulador en línea de MAC OS.
PROGRAMA:
NOMBRE
notangle, noweave, nountangle - noweb, una herramienta de programación alfabetizada
SINOPSIS
notángulo [-Rnombre raíz ...] [-filtrar comando] [-L[formato]] [archivo] ...
sustantivo [-ml|-m3|-c|-c ++|-awk|-Texas|-f77|-f90|-ceceo|-matlab] [-Rnombre raíz ...] [-filtrar
comando] [-wancho] [archivo] ...
no tejer [opciones] [archivo] ...
DESCRIPCIÓN
Noweb es una herramienta de programación alfabetizada como la de Knuth WEB, solo que más simple. A sin web presentar
contiene el código fuente del programa intercalado con la documentación. Cuando notángulo se le da un
sin web archivo, escribe el programa en salida estándar. Cuando no tejer se le da un sin web archivo,
lee el sin web fuente y produce, en salida estándar, Látex, Texas, troff o HTML
fuente de documentación tipográfica. sustantivo convierte un programa alfabetizado en un ordinario
programa convirtiendo la documentación intercalada en comentarios. El nombre de archivo `- 'se refiere a
entrada estándar.
FORMATO OF NOWEB ARCHIVOS
A sin web el archivo es una secuencia de trozos, que puede aparecer en cualquier orden. Un trozo puede contener
código o documentación. Los fragmentos de documentación comienzan con una línea que comienza con un signo arroba
(@) seguido de un espacio o una nueva línea. No tienen nombres. Los fragmentos de código comienzan con
<<pedazo nombre >> =
en una línea por sí mismo. El corchete de doble ángulo izquierdo (<<) debe estar en la primera columna.
Los fragmentos terminan al principio de otro fragmento o al final del archivo. Si el primero
línea en el archivo no marca el comienzo de un fragmento, se supone que es la primera
línea de un fragmento de documentación.
Los fragmentos de documentación contienen texto que ignora notángulo y copiado literalmente a
salida estándar por no tejer (excepto el código citado). no tejer puede trabajar con Látex, llanura
Texas, troff or HTML. Con llano Texas, inserta una referencia a un Texas paquete de macros, nwmac,
que define comandos como \capítulo y \sección.
Los fragmentos de código contienen el código fuente del programa y referencias a otros fragmentos de código. Varios códigos
los trozos pueden tener el mismo nombre; notángulo concatena sus definiciones para producir un solo
trozo, al igual que lo hace maraña(1). Las definiciones de fragmentos de código son como definiciones de macros;
notángulo extrae un programa expandiendo un fragmento (por defecto, el fragmento llamado <<*>>).
La definición de ese fragmento contiene referencias a otros fragmentos, que a su vez son
expandido, etc. notángulola salida es legible; conserva la sangría de
trozos expandidos con respecto a los trozos en los que aparecen.
El código se puede citar dentro de los fragmentos de documentación colocando corchetes dobles ([[...]])
alrededor. Estos corchetes dobles son ignorados por notangle pero pueden ser utilizados por
no tejer dar al código un tratamiento tipográfico especial, por ejemplo, enlaces de hipertexto. Si cotiza
el código termina con tres o más corchetes, no tejer elige el par más a la derecha, de modo que,
por ejemplo, [[ai]]] se analiza correctamente. Los nombres de los fragmentos de código pueden aparecer dentro
código entre comillas a menos que el código entre comillas sea en sí mismo parte del nombre de un fragmento de código.
En el código, noweb trata los corchetes de ángulo derecho o izquierdo dobles no emparejados como literal << y >>.
Para forzar que tales corchetes, incluso paréntesis o corchetes emparejados en la documentación, sean
tratado como literal, use un signo arroba precedente (p. ej. @ <).
Algunos lenguajes de programación o formateo pueden requerir un solo @ firmar en la primera columna.
Los usuarios de Noweb pueden lograr este efecto poniendo un doble @@ en la primera columna; en esto
posición solamente, representa una @ firmar.
ENREDO
notángulo y sustantivo aceptar el mismo conjunto de opciones, aunque algunas opciones tienen efectos
solo en uno u otro. Las opciones son:
-Rnombre Ampliar la opción <<nombre >> fragmento de código. los -R La opción se puede repetir, en cuyo caso cada
chunk se escribe en la salida. Si no -R se da la opción, expanda el fragmento llamado
<<*>>.
-Lformato
Emite indicaciones de número de línea en los límites de los fragmentos. Una indicación de número de línea
identifica el origen de la línea que lo sigue. En formato, %F indica el
nombre del archivo fuente, %L indica el número de línea del archivo fuente, %N
indica una nueva línea y %% indica un signo de porcentaje. Un signo y un dígito pueden ser
insertado entre el signo de porcentaje y el 'L', en cuyo caso el número de línea
ser ajustado por esa cantidad. Si formato se omite, el formato predeterminado es que
aceptado por el preprocesador de C: `#línea %L "% F"% N'. Al usar el -Lformato opción,
notángulo asegura que todo el texto aparezca en la misma columna en entrada y salida.
sustantivo ignora esta opción.
Las cadenas de formato común incluyen:
C -L '# línea %L "% F"% N '
Sol FORTRAN -L '\ # %L "% F"% N '
Ícono -L '# línea % -1L "% F"% N '
Modula-xnumx -L '<* LÍNEA %L "%F" *>% N '
SML / NJ -L '(* # línea %L "%F"*)'
Para resolver el problema inverso, es decir, conseguir que ninguna red haga algo sensato con
#línea en su entrada, ver el afilada filtro en el directorio de ejemplos.
-tk Copie las pestañas intactas de la entrada a la salida y use las pestañas para la sangría, asumiendo
detiene cada k columnas. De forma predeterminada, las pestañas se expanden a espacios con paradas cada 8
columnas
-filtrar cmd
Filtrar el sin web fuente a través de cmd después de convertirlo a forma de herramienta y antes
enredo. notángulo busca cmd primero en el usuario TRAYECTORIA, A continuación, en / usr / lib / noweb.
Estos filtros se pueden utilizar para agregar funciones a notángulo; para ver un ejemplo
/ usr / lib / noweb / emptydefn. Solo para expertos.
-margen analizador
Utilice analizador para analizar el archivo de entrada. Permite el uso de herramientas noweb en archivos de otros
formatos; por ejemplo, el marca numérica el analizador comprende nuweb(1) formato. Ver
sin filtros web(7) para obtener más información. Solo para expertos.
-awk | -c | -icn | -icono | -ml | -m3 | -pascal | -f77 | -f90 | -Texas
¿Cuándo? sustantivo transforma fragmentos de documentación en comentarios, use el comentario
formato del idioma nombrado. -c es el predeterminado. notángulo ignora estas opciones.
-wn ¿Cuándo? sustantivo transforma fragmentos de documentación en comentarios, crea comentarios en
lineas de ancho n. notángulo ignora esta opción.
COSTURA
Salida de no tejer puede ser utilizado en Texas documentos que \aporte nwmac, in Látex documentos
que usan el sin web paquete (ver nowebstyle(1)), y en HTML documentos para navegar
Mosaico(1). Ahora trata los fragmentos de código como Látex lista . Si el ''@
'' que termina un fragmento de código es seguido inmediatamente por texto, ese texto sigue al
fragmento de código sin un salto de párrafo. Si el resto de la línea está en blanco, no tejer pone Texas
en `` modo vertical '' y el texto posterior comienza un párrafo nuevo con sangría.
No se producen saltos de página en medio de fragmentos de código a menos que sea necesario para evitar un exceso de
vbox. El fragmento de documentación que precede inmediatamente al fragmento de código aparece en la misma página
como ese fragmento de código a menos que hacerlo infringiría la regla anterior.
Ahora no inserta nuevas líneas adicionales en su Texas salida, por lo que los números de línea dados en Texas
Los mensajes de error son los mismos que los del archivo de entrada.
no tejer tiene opciones que dictan la elección del formateador y que admiten diferentes formatos
modismos y herramientas. Las opciones básicas se describen aquí; opciones relacionadas con index y cross-
La información de referencia se describe en la sección INDEXACIÓN Y REFERENCIA CRUZADA.
-látex Emitir LaTeX, incluida la envoltura en artículo estilo con el sin web paquete y página
estilo. (Defecto)
-Texas Emite TeX simple, incluida la envoltura con nwmac macros
-html Emite HTML, usando el contenedor HTML. La salida no es interesante sin -índice or -x.
Las etiquetas y , en líneas por sí mismos, producen una lista de
fragmentos y un índice de identificadores, respectivamente. Si estas etiquetas no están presentes,
la lista y el índice se colocan al final del archivo.
-latex + html
Suponga que los fragmentos de documentación son LaTeX, pero generan HTML para fragmentos de código, de manera adecuada
marcado así conversión con látex2html(1) produce una producción razonable. Una envoltura de LaTeX
está implícito, pero se puede desactivar con -n. Utilice of este vídeo opción is obsoleto; use
-html con -filtrar l2h preferiblemente.
-troff Emitir troff(1) marcado (sin envoltorio). El resultado debe procesarse con
noroff(1). Informes de errores para -troff a Aharon Robbins <[email protected]>.
-n No use ningún envoltorio (encabezado o tráiler). Esta opción es útil cuando no tejer's
la salida será parte de un documento más grande. Ver también -demora.
-filtrar cmd
Filtra el sin web fuente a través de cmd después de convertirlo a forma de herramienta y antes
convirtiendo a Texas. no tejer busca cmd primero en el usuario CAMINO, luego en
/ usr / lib / noweb. Estos filtros se pueden utilizar para agregar funciones a ahora tejer; para ver la
ejemplo, ver /usr/lib/noweb/noxref.krom. Ahora admite hasta cuatro filtros; uno
puede obtener más mediante el engaño de la concha, por ejemplo, -filtrar "icon.filter | noidx ".
-autodefs, -x, -índice y -índice de las opciones se implementan como filtros. Filtros
se ejecutan con el shell eval comando, entonces cmd debe citarse en consecuencia.
-margen analizador
Utilice analizador para analizar el archivo de entrada. Permite el uso de herramientas noweb en archivos de otros
formatos; por ejemplo, el marca numérica el analizador comprende nuweb(1) formato. Ver
sin filtros web(7) para obtener más información. Solo para expertos.
-Opción optar
Añade \ noweboptions {optar} En el correo electrónico “Su Cuenta de Usuario en su Nuevo Sistema XNUMXCX”. Látex encabezamiento. Ver nowebstyle(1) para valores de opt.
Normalmente útil solo con el -látex opción, pero -Opción largoxref funciona magia negra
con -html.
-demora Por defecto, no tejer pone el nombre del archivo y otra información en la salida antes de la
primer fragmento del programa. -demora retrasa esa información hasta después de la primera
trozo de documentación, lo que hace que actúe un poco como el SERVICIOS `` limbo ''. La opción es
normalmente se utiliza para permitir a un usuario poner un Látex \ documentclass comando
y otro material de preámbulo en el primer fragmento de documentación (es decir, antes el
primer signo). Esta opción también fuerza la información de referencia cruzada final a
emitirse justo antes del fragmento final, en lugar de al final del documento; los
Se espera que el fragmento final contenga \ end {documento}. La característica -demora opción implica la
-n .
-tk Expandir pestañas con paradas cada k columnas. (El valor predeterminado es expandir cada 8 columnas).
-t Copie pestañas a la salida.
-v Imprima la información de la canalización y RCS en caso de error estándar.
INDEXACIÓN Y REFERENCIA CRUZADA
Cuando se usa con Látex, troff o HTML, no tejer puede proporcionar indexación y referencias cruzadas
información para fragmentos y para identificadores de lenguaje de programación. Definiciones de identificadores
se puede marcar a mano con comillas invertidas (`); los -filtrar btdefn La opción reconoce estos
marcas. Para algunos idiomas, las definiciones se pueden encontrar automáticamente usando el -autodefs
opción. Esta sección describe las opciones de indexación y referencia cruzada; bien podría ser
omitido en la primera lectura.
-x Para los ensayos clínicos de CRISPR, Látex, agregue un número de página a cada nombre de fragmento que identifique la ubicación de ese
definición del fragmento, y emiten información de referencia cruzada relativa a definiciones y
usos. Para HTML, crear vínculos de hipertexto entre usos y definiciones de fragmentos.
¿Cuándo? no tejer -x se usa con Látex, la secuencia de control \ nowebchunks se expande a un
lista ordenada de todos los fragmentos de código.
-índice Cree información de referencia cruzada (o enlaces de hipertexto) para identificadores definidos.
Las definiciones son las que se encuentran en los archivos de entrada por -autodefs idioma o por
-filtrarbtdefn. Requiere Látex or HTML -índice implica -X; incluyendo a ambos
generar una salida de aspecto extraño. no tejer no genera referencias cruzadas a
identificadores que aparecen en el código entre comillas (@ [[...@]]), pero genera hipertexto
Enlaces. Cuando no tejer -índice se usa con Látex, la secuencia de control \ nowebindex
se expande a un índice de identificadores.
-índice de índice
Como -índice, pero los identificadores que se van a indexar se toman del archivo índice. Vea
sin índice(1).
-autodefs lang
Descubra las definiciones de identificadores automáticamente. El código en fragmentos debe estar en el idioma
lang. Permisible langs varían pero pueden incluir Texas or . Inútil sin -índice,
que debe preceder.
-showautodefs
Mostrar valores de lang utilizable con -autodefs.
ERROR MENSAJES
If notángulo or no tejer encuentra un nombre de fragmento dentro de la documentación, se asume que este
indica un error, generalmente una falta de ortografía `` < > = ''. Otros mensajes de error deben ser
Autoexplicativo.
Es incorrecto hacer referencia a un fragmento que nunca se define, pero está bien que los fragmentos sean
definido y no utilizado.
EJEMPLOS
Si tiene problemas para digerir esta página de manual, no está solo. Aquí hay algunos ejemplos para
empezar. Asumiré que tienes un foo.nw archivo con un programa C en fragmento < >
y un archivo de encabezado en trozos < >y que su documentación está marcada con
látex(1). Te mostraré cómo construir cosas usando las opciones más comunes.
Para reconstruir su fuente C, intente
notángulo -L -Rfoo.c foo.nw > foo.c
Para reconstruir su archivo de encabezado, intente
notángulo -Rfoo.h foo.nw | cpif foo.h
Aquí hay dos compromisos. Omitiendo -L mantiene #línea fuera de su archivo de encabezado, y
usando cpif evita que el comando se vuelva a escribir foo.h a menos que el contenido haya cambiado.
Por lo tanto, este es un buen código para poner en una regla Makefile.
Para crear un documento impreso, ejecute
no tejer -autodefs c -índice foo.nw > foo.tex
Si tiene su propio preámbulo, que contenga \ documentclass y todo, también necesitarás el
-demora .
Para crear una página web, ejecute
no tejer -filtrar l2h -autodefs c -índice -html foo.nw | htmltoc > foo.html
¡Que se diviertan!
Use nountangle en línea usando los servicios de onworks.net