gawk-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[SCM] gawk branch, feature/docit, updated. gawk-4.1.0-4262-gebb1fd6


From: Antonio Giovanni Colombo
Subject: [SCM] gawk branch, feature/docit, updated. gawk-4.1.0-4262-gebb1fd6
Date: Thu, 1 Apr 2021 11:30:10 -0400 (EDT)

This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "gawk".

The branch, feature/docit has been updated
       via  ebb1fd66e4ca2949591872cd70d4cb8c5d580a07 (commit)
      from  a930acddf5416afee15f3582f52fd3aa8855fb22 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
http://git.sv.gnu.org/cgit/gawk.git/commit/?id=ebb1fd66e4ca2949591872cd70d4cb8c5d580a07

commit ebb1fd66e4ca2949591872cd70d4cb8c5d580a07
Author: Antonio Giovanni Colombo <azc100@gmail.com>
Date:   Thu Apr 1 17:28:40 2021 +0200

    Modifications to gawktexi.in 3 new modules

diff --git a/doc/it/ChangeLog b/doc/it/ChangeLog
index 142c810..8d7f627 100644
--- a/doc/it/ChangeLog
+++ b/doc/it/ChangeLog
@@ -1,3 +1,11 @@
+2021-04-01         Antonio Giovanni Colombo   <azc100@gmail.com>
+                   Marco Curreli              <marcocurreli@tiscali.it>
+
+       * gawktexi.in: Updated.
+       * gendocs.sh: Added.
+       * gendocs_template: Added.
+       * genera_formati.sh: Added.
+
 2021-03-21         Antonio Giovanni Colombo   <azc100@gmail.com>
 
        * gawktexi.in: Updated.
diff --git a/doc/it/gawktexi.in b/doc/it/gawktexi.in
index f047aa4..e35f1bf 100755
--- a/doc/it/gawktexi.in
+++ b/doc/it/gawktexi.in
@@ -1040,7 +1040,7 @@ Copyright dell'edizione italiana @copyright{} 2016 -- 
Free Software Foundation,
 * Controllo dei breakpoint::            Controllo dei punti d'interruzione.
 * Controllo esecuzione debugger::       Controllo di esecuzione.
 * Vedere e modificare dati::            Vedere e modificare dati.
-* Stack di esecuzione::                 Lavorare con lo @dfn{stack}.
+* Stack di esecuzione::                 Lavorare con lo @dfn{Stack}.
 * Informazioni sul debugger::           Ottenere informazioni sullo stato
                                         del programma e del debugger.
 * Comandi vari del debugger::           Comandi vari del debugger.
@@ -3698,7 +3698,7 @@ anno).
 
 Come gi@`a visto sopra, l'output di @w{@samp{ls -l}} elenca la lista
 dei file contenuti in una directory, compresa la lunghezza di ogni
-file la data in cui il file @`e stato modificato per l'ultima volta.
+file e la data in cui il file @`e stato modificato per l'ultima volta.
 Il primo campo contiene le autorizzazioni di lettura-scrittura,
 il secondo campo contiene il numero di @dfn{link} di quel file
 e il terzo campo identifica il proprietario del file.
@@ -3707,7 +3707,7 @@ Il quinto campo contiene la dimensione del file, in byte.
 Il sesto, settimo e ottavo campo contengono il mese, il giorno e
 l'ora, rispettivamente, in cui il file @`e stato modificato l'ultima
 volta.
-Finalmente il nono campo contiene il valore @value{FN}.
+Infine, il nono campo contiene il valore @value{FN}.
 
 @c @cindex automatic initialization
 @cindex inizializzazione @subentry automatica
@@ -3946,7 +3946,7 @@ e buttati via.  Poich@'e i programmi @command{awk} sono 
interpretati, si pu@`o
 evitare la (normalmente laboriosa) parte di compilazione nel ciclo tipico
 dello sviluppo software, ossia edita-compila-prova-correggi.
 
-@cindex BWK @command{awk} @seeentry{Brian Kernighan @subentry @command{awk} di}
+@cindex BWK @command{awk} @seeentry{Brian Kernighan, @command{awk} di}
 @cindex Brian Kernighan @subentry @command{awk} di
 In @command{awk} sono stati scritti programmi complessi, compreso un assembler
 completo, pluri-piattaforma per
@@ -4438,7 +4438,7 @@ informazioni.
 @cindex codice-byte interno @subentry tracciatura del
 Stampa i nomi del codice-byte generato internamente, nell'ordine
 in cui sono incontrati durante l'esecuzione del programma.
-Questa trace @`e stampata sullo standard error.
+Questa tracciatura @`e stampata sullo standard error.
 Ogni ``codice operativo'' @`e preceduto da un segno @code{+}
 nell'output.
 
@@ -6327,6 +6327,47 @@ nella @dfn{regexp}.  Per esempio, @code{/+/} individua 
un semplice segno
 pi@`u.  Tuttavia, molte altre versioni di @command{awk} trattano una
 tale notazione come un errore di sintassi.
 
+@sidebar E se la @dfn{regexp} è vuota?
+@cindex vuote @subentry @dfn{regexps}
+@cindex @dfn{regexp} @subentry vuote
+Viene qui descritto un uso avanzato delle @dfn{regexp}.
+Pu@`o essere saltato in una prima lettura.
+
+Si può specificare una costante @dfn{regexp} vuota (@samp{//}) in ogni
+posto in cui ci si aspetta di trova una @dfn{regexp}.
+Può servire a qualcosa farlo?  A cosa corrisponde?
+
+Ha senso farlo.  Corrisponde alla stringa vuota (invisibile),
+all'inizio e alla fine di una stringa di caratteri, come pure
+alla stringa vuota tra un carattere e l'altro.  Lo si vede bene
+con la funzione @code{gsub()}, che si usa per fare delle sostituzioni
+globali (@pxref{Funzioni per stringhe}).  L'uso normale di @code{gsub()}
+è del tipo:
+
+@example
+$ @kbd{awk '}
+> @kbd{BEGIN @{}
+> @kbd{    x = "ABC_CBA"}
+> @kbd{    gsub(/B/, "bb", x)}
+> @kbd{    print x}
+> @kbd{@}'}
+@print{} AbbC_CbbA
+@end example
+
+Possiamo usare @code{gsub()} per verificare dove sono situate le stringhe
+vuote che corrispondono alla @dfn{regexp} vuote:
+
+@example
+$ @kbd{awk '}
+> @kbd{BEGIN @{}
+> @kbd{    x = "ABC"}
+> @kbd{    gsub(//, "x", x)}
+> @kbd{    print x}
+> @kbd{@}'}
+@print{} xAxBxCx
+@end example
+@end sidebar
+
 @node Espressioni di intervallo
 @subsection Alcune note sulle espressioni di intervallo
 
@@ -7393,10 +7434,10 @@ in cui possono essere presenti dei caratteri di ritorno 
a capo.
 @`E meglio perci@`o evitare metacaratteri di ancoraggio nel valore di 
@code{RS}.
 
 La suddivisione in campi usando espressioni regolari funziona in maniera
-differente di quando la si usa con le funzioni @code{sub()}, @code{gsub()}, e
+differente rispetto a quando la si usa con le funzioni @code{sub()}, 
@code{gsub()}, e
 @code{gensub()} (@pxref{Funzioni per stringhe}). Tali funzioni consentono
 che un'espressione regolare sia soddisfatta da una stringa nulla;
-La suddivisione in campi non lo consente.  Quindi, per esempio,
+la suddivisione in campi non lo consente.  Quindi, per esempio,
 @samp{RS = "()"} @emph{non} divide un record in campi di un carattere
 ciascuno.
 @end sidebar
@@ -8040,7 +8081,7 @@ $ @kbd{echo 'xxAA  xxBxx  C' |}
 
 Inoltre,
 la suddivisione in campi usando espressioni regolari funziona in maniera
-differente di quando la si usa con le funzioni @code{sub()}, @code{gsub()}, e
+differente rispetto a quando la si usa con le funzioni @code{sub()}, 
@code{gsub()}, e
 @code{gensub()} (@pxref{Funzioni per stringhe}). Tali funzioni consentono
 che un'espressione regolare sia soddisfatta da una stringa nulla;
 La suddivisione in campi non lo consente.  Quindi, per esempio,
@@ -15159,11 +15200,11 @@ I codici delle regole @code{BEGINFILE} sono eseguiti 
subito prima che
 @`e impostata al nome del file corrente e @code{FNR} @`e impostata a zero.
 
 Prima della @value{PVERSION} 5.1.1 di @command{gawk}, per un difetto di
-implementazione, @code{$0} e i campi del record mantenevano, nelle regole
+implementazione, @code{$0} e i campi del record mantenevano nelle regole
 @code{BEGINFILE} il valore che avevano in precedenza.
 A partire dalla @value{PVERSION} 5.1.1, sia @code{$0} che i campi del
 record sono impostati alla stringa nulla, poich@'e nessun record @`e
-ancora stato letto dal file in procinto di essere elaborato.
+ancora stato letto dal file che sta per essere di essere elaborato.
 
 La regola @code{BEGINFILE} d@`a la possibilit@`a di eseguire due compiti
 che sarebbe difficile o impossibile effettuare altrimenti:
@@ -15226,7 +15267,7 @@ modalit@`a compatibile (@pxref{Opzioni}), non sono 
regole speciali.
 @node Vuoto
 @subsection Il criterio di ricerca vuoto
 
-@cindex vuoto @subentry criterio di ricerca
+@cindex vuoti @subentry criteri di ricerca
 @cindex criteri di ricerca @subentry vuoti
 Un criterio di ricerca vuoto (cio@`e omesso) corrisponde a
 @emph{ogni} record in input.  Per esempio, il programma:
@@ -26354,7 +26395,7 @@ un semplice spazio (@code{@w{" "}}) come valore per 
@code{FS} @`e
 sbagliato: @command{awk} separerebbe i campi con serie di spazi,
 TAB, e/o ritorni a capo, mentre devono essere separati solo da uno spazio.
 Per far questo, salviamo il carattere di spazio originale nella variabile
-@code{fs} per un uso futuro; dopo aver impostato @code{FS} a @code{@w"[ ]"} non
+@code{fs} per un uso futuro; dopo aver impostato @code{FS} a @code{@w{"[ ]"}} 
non
 @`e possibile usarlo direttamente per vedere se il carattere delimitatore di
 campo @`e nella stringa.
 
@@ -26634,11 +26675,11 @@ da implementare con @command{gawk}; basta usare la 
variabile predefinita
 #    -e    l'argomento @`e un'espressione regolare
 #    -i    ignora maiuscolo/minuscolo
 #    -l    stampa solo nomi file
-#    -n    aggiungi numeri linea in output
+#    -n    aggiungi numeri riga in output
 #    -q    quieto - usa solo il codice di ritorno
 #    -s    silenzioso - non stampa messaggi di errore
-#    -v    inverte test, successo se espression non trovata
-#    -x    l'intera linea deve corrispondere
+#    -v    inverte test, successo se espressione non viene trovata
+#    -x    l'intera riga deve corrispondere
 #
 # Richiede la funzione getopt()
 # Usa IGNORECASE, BEGINFILE ed ENDFILE
@@ -26673,7 +26714,7 @@ BEGIN @{
 @noindent
 Si noti il commento relativo alla chiamata del programma:
 Poich@'e parecchie opzioni possono essere specificate anche per
-@command{gawk}, occorre immettere @option{--} per far s@`@{dotless{i}} che
+@command{gawk}, occorre immettere @option{--} per far s@`{@dotless{i}} che
 @command{gawk} non prosegua nell'analisi delle opzioni.
 
 Nel seguito c'@`e il codice che gestisce il comportamento specifico di
@@ -26736,12 +26777,12 @@ BEGINFILE @{
 
 La regola @code{ENDFILE} viene eseguita alla fine dell'elaborazione
 di ogni file.  Genera dell'output solo quando l'utente richiede un
-contatore del numero di righe che sono state trovate corrispondere.
+contatore del numero di righe corrispondenti che sono state trovate.
 
 La variabile @code{non_stampare} @`e vera qualora si chieda di
 impostare solo il codice di ritorno.
 La variabile @code{conta_e_basta} @`e vera qualora si chieda solo
-il numero delle righe che sono state trovare corrispondere.
+il numero delle righe corrispondenti che sono state trovate.
 @command{egrep} quindi stampa il contatore delle corrispondenze
 trovate solo se sia la stampa che il conteggio righe sono richieste.
 Il formato dell'output dev'essere adattato, a seconda del numero di
@@ -26897,14 +26938,14 @@ Usa la funzione di libreria @code{getopt()}
 (@pxref{Funzione getopt}),
 le funzioni di libreria del database che descrive gli utenti
 (@pxref{Funzioni Passwd}),
-Usa le funzioni di libreria che riguardano il database degli utenti
+le funzioni di libreria che riguardano il database degli utenti
 (@pxref{Funzioni Passwd})
 e le funzioni di libreria che riguardano il database dei gruppi
 (@pxref{Funzioni Group}).
 
 Il programma @`e abbastanza semplice.  Tutto il lavoro @`e svolto nella regola
 @code{BEGIN}.
-Inizia com dei commenti di spiegazioni, una lista di opzioni e infine
+Inizia con dei commenti di spiegazione, una lista di opzioni e infine
 una funzione @code{sintassi()} function:
 
 @cindex @code{id.awk} (programma)
@@ -26981,7 +27022,7 @@ BEGIN @{
 @end example
 
 Il passo successivo @`e quello di controllare che non siano state
-specificate opzioni mutualmente esclusive.
+specificate opzioni mutuamente esclusive.
 Le opzioni @option{-G} e @option{-r} sono di questo tipo.
 Inoltre, non @`e possibile specificare pi@`u di un nome utente
 sulla riga di comando:
@@ -27000,7 +27041,7 @@ dal vettore @code{PROCINFO} dell'utente corrente, oppure
 dal database degli utenti e delle password, per un
 utente il cui nome sia stato specificato nella riga di
 comando.
-In quest'ultimo caos, viene impostato il flag @code{real_ids_only},
+In quest'ultimo caso, viene impostato il flag @code{real_ids_only},
 poich@'e non @`e possibile stampare informazioni riguardo agli
 ID di utente e di gruppo effettivi:
 
@@ -27117,9 +27158,9 @@ Una logica simile viene seguita per l'opzione 
@option{-u}
 @end example
 
 A questo punto non abbiamo ancora finito, e quindi stampiamo
-l'output normale, di default, a riguardo dell'utente corrente
-o dell'utente che era stato specificato sulla riga di comando.
-Iniziamo a stmpare l'user ID reale:
+l'output normale, di default, relative all'utente corrente
+o all'utente che era stato specificato sulla riga di comando.
+Iniziamo a stampare l'user ID reale:
 
 @example
 @c file eg/prog/id.awk
@@ -27298,7 +27339,7 @@ ogni file dovrebbe essere lungo (al massimo) @var{N} 
byte.
 Se si specifica la lettera @samp{k}, il numero @var{N} viene
 moltiplicato per 1.024, ossia diviene il numero di kilobyte.
 Se si specifica la lettera @samp{m}, il numero @var{N} viene
-moltiplicato per 1.048.576 (@math{1.024 @value{PER} 1.024})
+moltiplicato per 1.048.576 (@math{1.024 @value{VOLTE} 1.024})
 ossia diviene il numero di megabyte.
 (Quest'opzione @`e mutuamente esclusiva con l'opzione @option{-l}).
 
@@ -27447,7 +27488,7 @@ passare da @samp{abz} ad @samp{aca}.
 
 @item
 Si deve poter determinare se abbiamo utilizzato tutti i prefissi,
-in modo che, nel caso ci siano ulteriori dati (da suddividere) si
+in modo che, nel caso ci siano ulteriori dati (da suddividere), si
 possa stampare un messaggio di errore e terminare il programma.
 Il trucco @`e di gestire una tale situazione @emph{dopo} aver usato
 l'ultimo suffisso disponibile, e non quando viene generato l'ultimo
@@ -28116,7 +28157,7 @@ non dei byte.  Per questo motivo, in @command{gawk}, le 
funzioni
 @code{length()}, @code{substr()}, @code{split()}, @code{match()} e
 le altre funzioni di manipolazione di stringhe
 (@pxref{Funzioni per stringhe}) funzionano tutte elaborando dei caratteri,
-come definiti dall'insieme di caratteri locale [a una determinata lingua]
+come definiti dall'insieme di caratteri localizzati [a una determinata lingua]
 e non elaborando dei byte.  (Incidentalmente, non tutte le implementazioni
 di @command{awk} si comportano cos@`{@dotless{i}}).
 
@@ -28136,7 +28177,7 @@ possono anche essere dei codici scritti nei linguaggi C 
o C++.
 Per quanto riguarda
 @file{wc.awk}, @`e sufficiente sapere che l'estensione viene caricata
 con la direttiva @code{@@load}, e la funzione ulteriore che dovr@`a essere
-usata si chiama @code{mbs_length()}.  Questa funzione restiuisce il numero
+usata si chiama @code{mbs_length()}.  Questa funzione restituisce il numero
 di byte in una stringa, non il numero di caratteri.
 
 L'estensione @code{"mbs"} fa parte del progetto @code{gawkextlib}.
@@ -29411,7 +29452,7 @@ La riga @`e poi stampata nel file di output:
         gsub("@@`o","ò",riga)
         gsub("@@`u","ù",riga)
         # riga contiene ancora caratteri @@?
-        if (index(riga, "@@") == 0) {
+        if (index(riga, "@@") == 0) @{
             print riga > file_corrente
             continue
         @}
@@ -32015,12 +32056,12 @@ formato con cui sono stati inseriti.
 @node Filosofia delle estensioni
 @section Funzionalit@`a incluse @dfn{versus} estensioni
 
-Come descritto in questo e nei successivi @value{CHAPTERS},
+Come descritto sin qui e nei successivi @value{CHAPTERS},
 @command{gawk} ha numerose estensioni ulteriori,
 rispetto a quelle presenti nel comando @command{awk} standard.
 Queste sono state sviluppate col passare del tempo.
-Pi@`u recentemente, l'attenzione si @`e spostata sull'utilizzo
-del meccanismo delle estensioni (@pxref{Estensioni dinamiche}),
+Pi@`u recentemente, l'attenzione si @`e spostata sull'uso
+del meccanismo delle estensioni (@pxref{Estensioni dinamiche})
 per aggiungere ulteriori funzionalit@`a.
 @ifnotinfo
 Questa @value{SECTION}
@@ -32038,7 +32079,7 @@ Ci sono parecchi obiettivi:
 @enumerate 1
 @item
 Conservare il comando @command{awk}; non dovrebbe divenire irriconoscibile
-anche se i programmi scritti per esso verranno eseguito solo usando
+anche se i programmi scritti per esso verranno eseguito usando solo
 @command{gawk}.
 
 @item
@@ -32052,14 +32093,14 @@ o in un'estensione caricabile scritta in C o C++
 (opzione @option{-l}, direttiva @code{@@load}).
 
 @item
-Estendere il nucleo dell'interpretatore solo se qualche funzionalit@`a @`e:
+Estendere il nucleo dell'interpretatore solo se qualche funzionalit@`a:
 
 @c sublist
 @enumerate A
 @item
-Veramente desiderabile.
+@`E veramente desiderabile.
 @item
-Non si pu@`o fare tramite dei file di libreria o estensioni caricabili.
+Non si pu@`o ottenere tramite dei file di libreria o estensioni caricabili.
 @item
 Pu@`o essere aggiunta al nucleo senza troppe difficolt@`a.
 @end enumerate
@@ -33691,7 +33732,7 @@ argomenti.
 * Controllo dei breakpoint::       Controllo dei punti d'interruzione.
 * Controllo esecuzione debugger::  Controllo di esecuzione.
 * Vedere e modificare dati::       Vedere e modificare dati.
-* Stack di esecuzione::            Lavorare con lo @dfn{stack}.
+* Stack di esecuzione::            Lavorare con lo @dfn{Stack}.
 * Informazioni sul debugger::      Ottenere informazioni sullo stato del
                                    programma e del debugger.
 * Comandi vari del debugger::      Comandi vari del debugger.
@@ -34128,8 +34169,8 @@ argomenti) dalla lista dei punti d'osservazione.
 
 @end table
 
-@node @dfn{Stack} di esecuzione
-@subsection Lavorare con lo @dfn{stack}
+@node Stack di esecuzione
+@subsection Lavorare con lo @dfn{Stack}
 
 Ogni volta che si esegue un programma che contiene chiamate di funzione,
 @command{gawk} mantiene una pila contenente la lista delle chiamate di funzione
@@ -35633,7 +35674,8 @@ ottenere ulteriori informazioni, e non basarsi solo su 
quanto qui detto.
 * Ottenere la precisione::        Ottenere pi@`u precisione richiede qualche
                                   sforzo.
 * Tentare di arrotondare::        Aggiungere cifre di precisione e arrotondare.
-* Valori strani::                 Un cenno riguardo ai valori infiniti e a NaN 
[``non @`e un numero''].
+* Impostare la precisione::       Impostare la precisione.
+* Impostare modo di arrotondare:: Impostare la modalit@`a di arrotondamento.
 @end menu
 
 @node Inesattezza nei calcoli
@@ -35654,6 +35696,7 @@ il numero di cifre decimali esatte nel risultato finale.
 * Rappresentazioni inesatte::   I numeri non sono rappresentati esattamente.
 * Confronti tra valori in VM::  Come confrontare valori in virgola mobile.
 * Gli errori si sommano::       Gli errori diventano sempre maggiori.
+* Valori strani::               Valori in virgola mobile non spiegati a scuola.
 @end menu
 
 @node Rappresentazioni inesatte
@@ -37718,8 +37761,8 @@ restituiti sono di tipo @code{mpfr_ptr} e 
@code{mpz_ptr} rispettivamente,
 e si dovrebbero assegnare in maniera appropriata questi codici di ritorno
 prima di assegnare i risultati a variabili del tipo corretto.
 
-La memoria allocata da queste funzioni dovrebbe essere liberata a fine
-utilizzo, richiamando @code{gawk_free()}.
+La memoria allocata da queste funzioni dovrebbe essere liberata dopo il
+loro uso, richiamando @code{gawk_free()}.
 
 @node Funzioni di costruzione
 @subsection Funzioni per creare valori
@@ -43454,7 +43497,7 @@ La funzione @code{getline} ridiretta @`e stata resa 
possibile all'interno di
 
 @item
 Il comando @code{where} @`e stato aggiunto al debugger
-(@pxref{@dfn{Stack} di esecuzione}).
+(@pxref{Stack di esecuzione}).
 
 @item
 Il supporto per Ultrix @`e stato rimosso.
diff --git a/doc/it/gendocs.sh b/doc/it/gendocs.sh
new file mode 100755
index 0000000..1872de9
--- /dev/null
+++ b/doc/it/gendocs.sh
@@ -0,0 +1,510 @@
+#!/bin/sh -e
+# gendocs.sh -- generate a GNU manual in many formats.  This script is
+#   mentioned in maintain.texi.  See the help message below for usage details.
+
+scriptversion=2021-01-01.00
+
+# Copyright 2003-2021 Free Software Foundation, Inc.
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program.  If not, see <https://www.gnu.org/licenses/>.
+#
+# Original author: Mohit Agarwal.
+# Send bug reports and any other correspondence to bug-gnulib@gnu.org.
+#
+# The latest version of this script, and the companion template, is
+# available from the Gnulib repository:
+#
+# https://git.savannah.gnu.org/cgit/gnulib.git/tree/build-aux/gendocs.sh
+# https://git.savannah.gnu.org/cgit/gnulib.git/tree/doc/gendocs_template
+
+# TODO:
+# - image importing was only implemented for HTML generated by
+#   makeinfo.  But it should be simple enough to adjust.
+# - images are not imported in the source tarball.  All the needed
+#   formats (PDF, PNG, etc.) should be included.
+
+prog=`basename "$0"`
+srcdir=`pwd`
+
+scripturl="https://git.savannah.gnu.org/cgit/gnulib.git/plain/build-aux/gendocs.sh";
+templateurl="https://git.savannah.gnu.org/cgit/gnulib.git/plain/doc/gendocs_template";
+
+: ${SETLANG="env LANG= LC_MESSAGES= LC_ALL= LANGUAGE="}
+: ${MAKEINFO="makeinfo"}
+: ${TEXI2DVI="texi2dvi"}
+: ${DOCBOOK2HTML="docbook2html"}
+: ${DOCBOOK2PDF="docbook2pdf"}
+: ${DOCBOOK2TXT="docbook2txt"}
+: ${GENDOCS_TEMPLATE_DIR="."}
+: ${PERL='perl'}
+: ${TEXI2HTML="texi2html"}
+unset CDPATH
+unset use_texi2html
+
+MANUAL_TITLE=
+PACKAGE=
+EMAIL=webmasters@gnu.org  # please override with --email
+commonarg= # passed to all makeinfo/texi2html invcations.
+dirargs=   # passed to all tools (-I dir).
+dirs=      # -I directories.
+htmlarg="--css-ref=/software/gnulib/manual.css -c TOP_NODE_UP_URL=/manual"
+default_htmlarg=true
+infoarg=--no-split
+generate_ascii=true
+generate_html=true
+generate_info=true
+generate_tex=true
+outdir=manual
+source_extra=
+split=node
+srcfile=
+texarg="-t @finalout"
+
+version="gendocs.sh $scriptversion
+
+Copyright 2021 Free Software Foundation, Inc.
+There is NO warranty.  You may redistribute this software
+under the terms of the GNU General Public License.
+For more information about these matters, see the files named COPYING."
+
+usage="Usage: $prog [OPTION]... PACKAGE MANUAL-TITLE
+
+Generate output in various formats from PACKAGE.texinfo (or .texi or
+.txi) source.  See the GNU Maintainers document for a more extensive
+discussion:
+  https://www.gnu.org/prep/maintain_toc.html
+
+Options:
+  --email ADR use ADR as contact in generated web pages; always give this.
+
+  -s SRCFILE   read Texinfo from SRCFILE, instead of PACKAGE.{texinfo|texi|txi}
+  -o OUTDIR    write files into OUTDIR, instead of manual/.
+  -I DIR       append DIR to the Texinfo search path.
+  --common ARG pass ARG in all invocations.
+  --html ARG   pass ARG to makeinfo or texi2html for HTML targets,
+                 instead of '$htmlarg'.
+  --info ARG   pass ARG to makeinfo for Info, instead of --no-split.
+  --no-ascii   skip generating the plain text output.
+  --no-html    skip generating the html output.
+  --no-info    skip generating the info output.
+  --no-tex     skip generating the dvi and pdf output.
+  --source ARG include ARG in tar archive of sources.
+  --split HOW  make split HTML by node, section, chapter; default node.
+  --tex ARG    pass ARG to texi2dvi for DVI and PDF, instead of -t @finalout.
+
+  --texi2html  use texi2html to make HTML target, with all split versions.
+  --docbook    convert through DocBook too (xml, txt, html, pdf).
+
+  --help       display this help and exit successfully.
+  --version    display version information and exit successfully.
+
+Simple example: $prog --email bug-gnu-emacs@gnu.org emacs \"GNU Emacs Manual\"
+
+Typical sequence:
+  cd PACKAGESOURCE/doc
+  wget \"$scripturl\"
+  wget \"$templateurl\"
+  $prog --email BUGLIST MANUAL \"GNU MANUAL - One-line description\"
+
+Output will be in a new subdirectory \"manual\" (by default;
+use -o OUTDIR to override).  Move all the new files into your web CVS
+tree, as explained in the Web Pages node of maintain.texi.
+
+Please use the --email ADDRESS option so your own bug-reporting
+address will be used in the generated HTML pages.
+
+MANUAL-TITLE is included as part of the HTML <title> of the overall
+manual/index.html file.  It should include the name of the package being
+documented.  manual/index.html is created by substitution from the file
+$GENDOCS_TEMPLATE_DIR/gendocs_template.  (Feel free to modify the
+generic template for your own purposes.)
+
+If you have several manuals, you'll need to run this script several
+times with different MANUAL values, specifying a different output
+directory with -o each time.  Then write (by hand) an overall index.html
+with links to them all.
+
+If a manual's Texinfo sources are spread across several directories,
+first copy or symlink all Texinfo sources into a single directory.
+(Part of the script's work is to make a tar.gz of the sources.)
+
+As implied above, by default monolithic Info files are generated.
+If you want split Info, or other Info options, use --info to override.
+
+You can set the environment variables MAKEINFO, TEXI2DVI, TEXI2HTML,
+and PERL to control the programs that get executed, and
+GENDOCS_TEMPLATE_DIR to control where the gendocs_template file is
+looked for.  With --docbook, the environment variables DOCBOOK2HTML,
+DOCBOOK2PDF, and DOCBOOK2TXT are also consulted.
+
+By default, makeinfo and texi2dvi are run in the default (English)
+locale, since that's the language of most Texinfo manuals.  If you
+happen to have a non-English manual and non-English web site, see the
+SETLANG setting in the source.
+
+Email bug reports or enhancement requests to bug-gnulib@gnu.org.
+"
+
+while test $# -gt 0; do
+  case $1 in
+    -s)          shift; srcfile=$1;;
+    -o)          shift; outdir=$1;;
+    -I)          shift; dirargs="$dirargs -I '$1'"; dirs="$dirs $1";;
+    --common)    shift; commonarg=$1;;
+    --docbook)   docbook=yes;;
+    --email)     shift; EMAIL=$1;;
+    --html)      shift; default_htmlarg=false; htmlarg=$1;;
+    --info)      shift; infoarg=$1;;
+    --no-ascii)  generate_ascii=false;;
+    --no-html)   generate_ascii=false;;
+    --no-info)   generate_info=false;;
+    --no-tex)    generate_tex=false;;
+    --source)    shift; source_extra=$1;;
+    --split)     shift; split=$1;;
+    --tex)       shift; texarg=$1;;
+    --texi2html) use_texi2html=1;;
+
+    --help)      echo "$usage"; exit 0;;
+    --version)   echo "$version"; exit 0;;
+    -*)
+      echo "$0: Unknown option \`$1'." >&2
+      echo "$0: Try \`--help' for more information." >&2
+      exit 1;;
+    *)
+      if test -z "$PACKAGE"; then
+        PACKAGE=$1
+      elif test -z "$MANUAL_TITLE"; then
+        MANUAL_TITLE=$1
+      else
+        echo "$0: extra non-option argument \`$1'." >&2
+        exit 1
+      fi;;
+  esac
+  shift
+done
+
+# makeinfo uses the dirargs, but texi2dvi doesn't.
+commonarg=" $dirargs $commonarg"
+
+# For most of the following, the base name is just $PACKAGE
+base=$PACKAGE
+
+if $default_htmlarg && test -n "$use_texi2html"; then
+  # The legacy texi2html doesn't support TOP_NODE_UP_URL
+  htmlarg="--css-ref=/software/gnulib/manual.css"
+fi
+
+if test -n "$srcfile"; then
+  # but here, we use the basename of $srcfile
+  base=`basename "$srcfile"`
+  case $base in
+    *.txi|*.texi|*.texinfo) base=`echo "$base"|sed 's/\.[texinfo]*$//'`;;
+  esac
+  PACKAGE=$base
+elif test -s "$srcdir/$PACKAGE.texinfo"; then
+  srcfile=$srcdir/$PACKAGE.texinfo
+elif test -s "$srcdir/$PACKAGE.texi"; then
+  srcfile=$srcdir/$PACKAGE.texi
+elif test -s "$srcdir/$PACKAGE.txi"; then
+  srcfile=$srcdir/$PACKAGE.txi
+else
+  echo "$0: cannot find .texinfo or .texi or .txi for $PACKAGE in $srcdir." >&2
+  exit 1
+fi
+
+if test ! -r $GENDOCS_TEMPLATE_DIR/gendocs_template; then
+  echo "$0: cannot read $GENDOCS_TEMPLATE_DIR/gendocs_template." >&2
+  echo "$0: it is available from $templateurl." >&2
+  exit 1
+fi
+
+# Function to return size of $1 in something resembling kilobytes.
+calcsize()
+{
+  size=`ls -ksl $1 | awk '{print $1}'`
+  echo $size
+}
+
+# copy_images OUTDIR HTML-FILE...
+# -------------------------------
+# Copy all the images needed by the HTML-FILEs into OUTDIR.
+# Look for them in . and the -I directories; this is simpler than what
+# makeinfo supports with -I, but hopefully it will suffice.
+copy_images()
+{
+  local odir
+  odir=$1
+  shift
+  $PERL -n -e "
+BEGIN {
+  \$me = '$prog';
+  \$odir = '$odir';
+  @dirs = qw(. $dirs);
+}
+" -e '
+/<img src="(.*?)"/g && ++$need{$1};
+
+END {
+  #print "$me: @{[keys %need]}\n";  # for debugging, show images found.
+  FILE: for my $f (keys %need) {
+    for my $d (@dirs) {
+      if (-f "$d/$f") {
+        use File::Basename;
+        my $dest = dirname ("$odir/$f");
+        #
+        use File::Path;
+        -d $dest || mkpath ($dest)
+          || die "$me: cannot mkdir $dest: $!\n";
+        #
+        use File::Copy;
+        copy ("$d/$f", $dest)
+          || die "$me: cannot copy $d/$f to $dest: $!\n";
+        next FILE;
+      }
+    }
+    die "$me: $ARGV: cannot find image $f\n";
+  }
+}
+' -- "$@" || exit 1
+}
+
+case $outdir in
+  /*) abs_outdir=$outdir;;
+  *)  abs_outdir=$srcdir/$outdir;;
+esac
+
+echo "Making output for $srcfile"
+echo " in `pwd`"
+mkdir -p "$outdir/"
+
+# 
+if $generate_info; then
+  cmd="$SETLANG $MAKEINFO -o $PACKAGE.info $commonarg $infoarg \"$srcfile\""
+  echo "Generating info... ($cmd)"
+  rm -f $PACKAGE.info* # get rid of any strays
+  eval "$cmd"
+  tar czf "$outdir/$PACKAGE.info.tar.gz" $PACKAGE.info*
+  ls -l "$outdir/$PACKAGE.info.tar.gz"
+  info_tgz_size=`calcsize "$outdir/$PACKAGE.info.tar.gz"`
+  # do not mv the info files, there's no point in having them available
+  # separately on the web.
+fi  # end info
+
+# 
+if $generate_tex; then
+  cmd="$SETLANG $TEXI2DVI $dirargs $texarg \"$srcfile\""
+  printf "\nGenerating dvi... ($cmd)\n"
+  eval "$cmd"
+  # compress/finish dvi:
+  gzip -f -9 $PACKAGE.dvi
+  dvi_gz_size=`calcsize $PACKAGE.dvi.gz`
+  mv $PACKAGE.dvi.gz "$outdir/"
+  ls -l "$outdir/$PACKAGE.dvi.gz"
+
+  cmd="$SETLANG $TEXI2DVI --pdf $dirargs $texarg \"$srcfile\""
+  printf "\nGenerating pdf... ($cmd)\n"
+  eval "$cmd"
+  pdf_size=`calcsize $PACKAGE.pdf`
+  mv $PACKAGE.pdf "$outdir/"
+  ls -l "$outdir/$PACKAGE.pdf"
+fi # end tex (dvi + pdf)
+
+# 
+if $generate_ascii; then
+  opt="-o $PACKAGE.txt --no-split --no-headers $commonarg"
+  cmd="$SETLANG $MAKEINFO $opt \"$srcfile\""
+  printf "\nGenerating ascii... ($cmd)\n"
+  eval "$cmd"
+  ascii_size=`calcsize $PACKAGE.txt`
+  gzip -f -9 -c $PACKAGE.txt >"$outdir/$PACKAGE.txt.gz"
+  ascii_gz_size=`calcsize "$outdir/$PACKAGE.txt.gz"`
+  mv $PACKAGE.txt "$outdir/"
+  ls -l "$outdir/$PACKAGE.txt" "$outdir/$PACKAGE.txt.gz"
+fi
+
+# 
+
+if $generate_html; then
+# Split HTML at level $1.  Used for texi2html.
+html_split()
+{
+  opt="--split=$1 --node-files $commonarg $htmlarg"
+  cmd="$SETLANG $TEXI2HTML --output $PACKAGE.html $opt \"$srcfile\""
+  printf "\nGenerating html by $1... ($cmd)\n"
+  eval "$cmd"
+  split_html_dir=$PACKAGE.html
+  (
+    cd ${split_html_dir} || exit 1
+    ln -sf ${PACKAGE}.html index.html
+    tar -czf "$abs_outdir/${PACKAGE}.html_$1.tar.gz" -- *.html
+  )
+  eval html_$1_tgz_size=`calcsize "$outdir/${PACKAGE}.html_$1.tar.gz"`
+  rm -f "$outdir"/html_$1/*.html
+  mkdir -p "$outdir/html_$1/"
+  mv ${split_html_dir}/*.html "$outdir/html_$1/"
+  rmdir ${split_html_dir}
+}
+
+if test -z "$use_texi2html"; then
+  opt="--no-split --html -o $PACKAGE.html $commonarg $htmlarg"
+  cmd="$SETLANG $MAKEINFO $opt \"$srcfile\""
+  printf "\nGenerating monolithic html... ($cmd)\n"
+  rm -rf $PACKAGE.html  # in case a directory is left over
+  eval "$cmd"
+  html_mono_size=`calcsize $PACKAGE.html`
+  gzip -f -9 -c $PACKAGE.html >"$outdir/$PACKAGE.html.gz"
+  html_mono_gz_size=`calcsize "$outdir/$PACKAGE.html.gz"`
+  copy_images "$outdir/" $PACKAGE.html
+  mv $PACKAGE.html "$outdir/"
+  ls -l "$outdir/$PACKAGE.html" "$outdir/$PACKAGE.html.gz"
+
+  # Before Texinfo 5.0, makeinfo did not accept a --split=HOW option,
+  # it just always split by node.  So if we're splitting by node anyway,
+  # leave it out.
+  if test "x$split" = xnode; then
+    split_arg=
+  else
+    split_arg=--split=$split
+  fi
+  #
+  opt="--html -o $PACKAGE.html $split_arg $commonarg $htmlarg"
+  cmd="$SETLANG $MAKEINFO $opt \"$srcfile\""
+  printf "\nGenerating html by $split... ($cmd)\n"
+  eval "$cmd"
+  split_html_dir=$PACKAGE.html
+  copy_images $split_html_dir/ $split_html_dir/*.html
+  (
+    cd $split_html_dir || exit 1
+    tar -czf "$abs_outdir/$PACKAGE.html_$split.tar.gz" -- *
+  )
+  eval \
+    html_${split}_tgz_size=`calcsize "$outdir/$PACKAGE.html_$split.tar.gz"`
+  rm -rf "$outdir/html_$split/"
+  mv $split_html_dir "$outdir/html_$split/"
+  du -s "$outdir/html_$split/"
+  ls -l "$outdir/$PACKAGE.html_$split.tar.gz"
+
+else # use texi2html:
+  opt="--output $PACKAGE.html $commonarg $htmlarg"
+  cmd="$SETLANG $TEXI2HTML $opt \"$srcfile\""
+  printf "\nGenerating monolithic html with texi2html... ($cmd)\n"
+  rm -rf $PACKAGE.html  # in case a directory is left over
+  eval "$cmd"
+  html_mono_size=`calcsize $PACKAGE.html`
+  gzip -f -9 -c $PACKAGE.html >"$outdir/$PACKAGE.html.gz"
+  html_mono_gz_size=`calcsize "$outdir/$PACKAGE.html.gz"`
+  mv $PACKAGE.html "$outdir/"
+
+  html_split node
+  html_split chapter
+  html_split section
+fi
+fi # end html
+
+# 
+printf "\nMaking .tar.gz for sources...\n"
+d=`dirname $srcfile`
+(
+  cd "$d"
+  srcfiles=`ls -d *.texinfo *.texi *.txi *.eps $source_extra 2>/dev/null` || 
true
+  tar czfh "$abs_outdir/$PACKAGE.texi.tar.gz" $srcfiles
+  ls -l "$abs_outdir/$PACKAGE.texi.tar.gz"
+)
+texi_tgz_size=`calcsize "$outdir/$PACKAGE.texi.tar.gz"`
+
+# 
+# Do everything again through docbook.
+if test -n "$docbook"; then
+  opt="-o - --docbook $commonarg"
+  cmd="$SETLANG $MAKEINFO $opt \"$srcfile\" >${srcdir}/$PACKAGE-db.xml"
+  printf "\nGenerating docbook XML... ($cmd)\n"
+  eval "$cmd"
+  docbook_xml_size=`calcsize $PACKAGE-db.xml`
+  gzip -f -9 -c $PACKAGE-db.xml >"$outdir/$PACKAGE-db.xml.gz"
+  docbook_xml_gz_size=`calcsize "$outdir/$PACKAGE-db.xml.gz"`
+  mv $PACKAGE-db.xml "$outdir/"
+
+  split_html_db_dir=html_node_db
+  opt="$commonarg -o $split_html_db_dir"
+  cmd="$DOCBOOK2HTML $opt \"${outdir}/$PACKAGE-db.xml\""
+  printf "\nGenerating docbook HTML... ($cmd)\n"
+  eval "$cmd"
+  (
+    cd ${split_html_db_dir} || exit 1
+    tar -czf "$abs_outdir/${PACKAGE}.html_node_db.tar.gz" -- *.html
+  )
+  html_node_db_tgz_size=`calcsize "$outdir/${PACKAGE}.html_node_db.tar.gz"`
+  rm -f "$outdir"/html_node_db/*.html
+  mkdir -p "$outdir/html_node_db"
+  mv ${split_html_db_dir}/*.html "$outdir/html_node_db/"
+  rmdir ${split_html_db_dir}
+
+  cmd="$DOCBOOK2TXT \"${outdir}/$PACKAGE-db.xml\""
+  printf "\nGenerating docbook ASCII... ($cmd)\n"
+  eval "$cmd"
+  docbook_ascii_size=`calcsize $PACKAGE-db.txt`
+  mv $PACKAGE-db.txt "$outdir/"
+
+  cmd="$DOCBOOK2PDF \"${outdir}/$PACKAGE-db.xml\""
+  printf "\nGenerating docbook PDF... ($cmd)\n"
+  eval "$cmd"
+  docbook_pdf_size=`calcsize $PACKAGE-db.pdf`
+  mv $PACKAGE-db.pdf "$outdir/"
+fi
+
+# 
+printf "\nMaking index.html for $PACKAGE...\n"
+if test -z "$use_texi2html"; then
+  CONDS="/%%IF  *HTML_SECTION%%/,/%%ENDIF  *HTML_SECTION%%/d;\
+         /%%IF  *HTML_CHAPTER%%/,/%%ENDIF  *HTML_CHAPTER%%/d"
+else
+  # should take account of --split here.
+  CONDS="/%%ENDIF.*%%/d;/%%IF  *HTML_SECTION%%/d;/%%IF  *HTML_CHAPTER%%/d"
+fi
+
+curdate=`$SETLANG date '+%B %d, %Y'`
+sed \
+   -e "s!%%TITLE%%!$MANUAL_TITLE!g" \
+   -e "s!%%EMAIL%%!$EMAIL!g" \
+   -e "s!%%PACKAGE%%!$PACKAGE!g" \
+   -e "s!%%DATE%%!$curdate!g" \
+   -e "s!%%HTML_MONO_SIZE%%!$html_mono_size!g" \
+   -e "s!%%HTML_MONO_GZ_SIZE%%!$html_mono_gz_size!g" \
+   -e "s!%%HTML_NODE_TGZ_SIZE%%!$html_node_tgz_size!g" \
+   -e "s!%%HTML_SECTION_TGZ_SIZE%%!$html_section_tgz_size!g" \
+   -e "s!%%HTML_CHAPTER_TGZ_SIZE%%!$html_chapter_tgz_size!g" \
+   -e "s!%%INFO_TGZ_SIZE%%!$info_tgz_size!g" \
+   -e "s!%%DVI_GZ_SIZE%%!$dvi_gz_size!g" \
+   -e "s!%%PDF_SIZE%%!$pdf_size!g" \
+   -e "s!%%ASCII_SIZE%%!$ascii_size!g" \
+   -e "s!%%ASCII_GZ_SIZE%%!$ascii_gz_size!g" \
+   -e "s!%%TEXI_TGZ_SIZE%%!$texi_tgz_size!g" \
+   -e "s!%%DOCBOOK_HTML_NODE_TGZ_SIZE%%!$html_node_db_tgz_size!g" \
+   -e "s!%%DOCBOOK_ASCII_SIZE%%!$docbook_ascii_size!g" \
+   -e "s!%%DOCBOOK_PDF_SIZE%%!$docbook_pdf_size!g" \
+   -e "s!%%DOCBOOK_XML_SIZE%%!$docbook_xml_size!g" \
+   -e "s!%%DOCBOOK_XML_GZ_SIZE%%!$docbook_xml_gz_size!g" \
+   -e "s,%%SCRIPTURL%%,$scripturl,g" \
+   -e "s!%%SCRIPTNAME%%!$prog!g" \
+   -e "$CONDS" \
+$GENDOCS_TEMPLATE_DIR/gendocs_template >"$outdir/index.html"
+
+echo "Done, see $outdir/ subdirectory for new files."
+
+# Local variables:
+# eval: (add-hook 'before-save-hook 'time-stamp)
+# time-stamp-start: "scriptversion="
+# time-stamp-format: "%:y-%02m-%02d.%02H"
+# time-stamp-end: "$"
+# End:
diff --git a/doc/it/gendocs_template b/doc/it/gendocs_template
new file mode 100755
index 0000000..cd9ac38
--- /dev/null
+++ b/doc/it/gendocs_template
@@ -0,0 +1,101 @@
+<!--#include virtual="/server/header.html" -->
+<!-- Parent-Version: 1.78 -->
+
+<!--
+Copyright (C) 2006-2021 Free Software Foundation, Inc.
+
+Copying and distribution of this file, with or without modification,
+are permitted in any medium without royalty provided the copyright
+notice and this notice are preserved.  This file is offered as-is,
+without any warranty.
+-->
+
+<title>%%TITLE%% - GNU Project - Free Software Foundation</title>
+<!--#include virtual="/server/banner.html" -->
+<h2>%%TITLE%%</h2>
+
+<address>Free Software Foundation</address>
+<address>last updated %%DATE%%</address>
+
+<p>This manual (%%PACKAGE%%) is available in the following formats:</p>
+
+<ul>
+<li><a href="%%PACKAGE%%.html">HTML
+    (%%HTML_MONO_SIZE%%K bytes)</a> - entirely on one web page.</li>
+<li><a href="html_node/index.html">HTML</a> - with one web page per
+    node.</li>
+%%IF HTML_SECTION%%
+<li><a href="html_section/index.html">HTML</a> - with one web page per
+    section.</li>
+%%ENDIF HTML_SECTION%%
+%%IF HTML_CHAPTER%%
+<li><a href="html_chapter/index.html">HTML</a> - with one web page per
+    chapter.</li>
+%%ENDIF HTML_CHAPTER%%
+<li><a href="%%PACKAGE%%.html.gz">HTML compressed
+    (%%HTML_MONO_GZ_SIZE%%K gzipped characters)</a> - entirely on
+    one web page.</li>
+<li><a href="%%PACKAGE%%.html_node.tar.gz">HTML compressed
+    (%%HTML_NODE_TGZ_SIZE%%K gzipped tar file)</a> -
+    with one web page per node.</li>
+%%IF HTML_SECTION%%
+<li><a href="%%PACKAGE%%.html_section.tar.gz">HTML compressed
+    (%%HTML_SECTION_TGZ_SIZE%%K gzipped tar file)</a> -
+    with one web page per section.</li>
+%%ENDIF HTML_SECTION%%
+%%IF HTML_CHAPTER%%
+<li><a href="%%PACKAGE%%.html_chapter.tar.gz">HTML compressed
+    (%%HTML_CHAPTER_TGZ_SIZE%%K gzipped tar file)</a> -
+    with one web page per chapter.</li>
+%%ENDIF HTML_CHAPTER%%
+<li><a href="%%PACKAGE%%.info.tar.gz">Info document
+    (%%INFO_TGZ_SIZE%%K bytes gzipped tar file)</a>.</li>
+<li><a href="%%PACKAGE%%.txt">ASCII text
+    (%%ASCII_SIZE%%K bytes)</a>.</li>
+<li><a href="%%PACKAGE%%.txt.gz">ASCII text compressed
+    (%%ASCII_GZ_SIZE%%K bytes gzipped)</a>.</li>
+<li><a href="%%PACKAGE%%.dvi.gz">TeX dvi file
+    (%%DVI_GZ_SIZE%%K bytes gzipped)</a>.</li>
+<li><a href="%%PACKAGE%%.pdf">PDF file
+    (%%PDF_SIZE%%K bytes)</a>.</li>
+<li><a href="%%PACKAGE%%.texi.tar.gz">Texinfo source
+    (%%TEXI_TGZ_SIZE%%K bytes gzipped tar file).</a></li>
+</ul>
+
+<p>You can <a href="https://shop.fsf.org/";>buy printed copies of
+some manuals</a> (among other items) from the Free Software Foundation;
+this helps support FSF activities.</p>
+
+<p>(This page generated by the <a href="%%SCRIPTURL%%">%%SCRIPTNAME%%
+script</a>.)</p>
+
+<!-- If needed, change the copyright block at the bottom. In general,
+     all pages on the GNU web server should have the section about
+     verbatim copying.  Please do NOT remove this without talking
+     with the webmasters first.
+     Please make sure the copyright date is consistent with the document
+     and that it is like this: "2001, 2002", not this: "2001-2002". -->
+</div><!-- for id="content", starts in the include above -->
+<!--#include virtual="/server/footer.html" -->
+<div id="footer">
+<div class="unprintable">
+
+<p>Please send general FSF &amp; GNU inquiries to
+<a href="mailto:gnu@gnu.org";>&lt;gnu@gnu.org&gt;</a>.
+There are also <a href="/contact/">other ways to contact</a>
+the FSF.  Broken links and other corrections or suggestions can be sent
+to <a href="mailto:%%EMAIL%%";>&lt;%%EMAIL%%&gt;</a>.</p>
+</div>
+
+<p>Copyright &copy; 2020 Free Software Foundation, Inc.</p>
+
+<p>This page is licensed under a <a rel="license"
+href="https://creativecommons.org/licenses/by-nd/3.0/us/";>Creative
+Commons Attribution-NoDerivs 3.0 United States License</a>.</p>
+
+<!--#include virtual="/server/bottom-notes.html" -->
+
+</div>
+</div>
+</body>
+</html>
diff --git a/doc/it/genera_formati.sh b/doc/it/genera_formati.sh
new file mode 100755
index 0000000..66540f2
--- /dev/null
+++ b/doc/it/genera_formati.sh
@@ -0,0 +1,13 @@
+:
+# questo script, eseguito in questa directory
+# genera tutti i formati della documentazione gawk
+# che si possono ricavare a partire
+# da gawktexi.in, nella directory ./manual
+#
+# dapprima si prepara il file di input (gawk.texi)
+#
+awk -f sidebar.awk < gawktexi.in > gawk.texi
+#
+# poi si invoca lo script che genera i vari formati
+#
+./gendocs.sh gawk gawk

-----------------------------------------------------------------------

Summary of changes:
 doc/it/ChangeLog         |   8 +
 doc/it/gawktexi.in       | 131 ++++++++----
 doc/it/gendocs.sh        | 510 +++++++++++++++++++++++++++++++++++++++++++++++
 doc/it/gendocs_template  | 101 ++++++++++
 doc/it/genera_formati.sh |  13 ++
 5 files changed, 719 insertions(+), 44 deletions(-)
 create mode 100755 doc/it/gendocs.sh
 create mode 100755 doc/it/gendocs_template
 create mode 100755 doc/it/genera_formati.sh


hooks/post-receive
-- 
gawk



reply via email to

[Prev in Thread] Current Thread [Next in Thread]