xref: /linux/Documentation/translations/it_IT/doc-guide/contributing.rst (revision 72fdff1416e280e2baaa3cca69574defb998437e)
1*1e6c6d69SFederico Vaga.. SPDX-License-Identifier: GPL-2.0
2*1e6c6d69SFederico Vaga
3*1e6c6d69SFederico Vaga.. include:: ../disclaimer-ita.rst
4*1e6c6d69SFederico Vaga
5*1e6c6d69SFederico VagaCome contribuire al miglioramento della documentazione del kernel
6*1e6c6d69SFederico Vaga=================================================================
7*1e6c6d69SFederico Vaga
8*1e6c6d69SFederico VagaLa documentazione è una parte importante di ogni progetto di sviluppo
9*1e6c6d69SFederico Vagasoftware. Una buona documentazione aiuta ad attirare nuovi sviluppatori e
10*1e6c6d69SFederico Vagapermette a quelli già presenti di lavorare in modo più efficace. Senza una
11*1e6c6d69SFederico Vagadocumentazione di qualità, si spreca molto tempo nel decifrare il codice a
12*1e6c6d69SFederico Vagaritroso e si commettono errori altrimenti evitabili.
13*1e6c6d69SFederico Vaga
14*1e6c6d69SFederico VagaSfortunatamente, al momento la documentazione del kernel è ben lontana da
15*1e6c6d69SFederico Vagaquello che dovrebbe essere per sostenere un progetto di queste dimensioni e
16*1e6c6d69SFederico Vagaimportanza.
17*1e6c6d69SFederico Vaga
18*1e6c6d69SFederico VagaQuesta guida è per chi vuole contribuire a migliorare questa situazione. I
19*1e6c6d69SFederico Vagamiglioramenti alla documentazione del kernel possono essere fatti da
20*1e6c6d69SFederico Vagasviluppatori con diversi livelli di esperienza; sono un modo relativamente
21*1e6c6d69SFederico Vagasemplice per imparare il processo di sviluppo del kernel in generale e
22*1e6c6d69SFederico Vagatrovare il proprio posto nella comunità. Quello che segue è, per la maggior
23*1e6c6d69SFederico Vagaparte, l'elenco dei compiti che il manutentore della documentazione ritiene
24*1e6c6d69SFederico Vagapiù urgenti.
25*1e6c6d69SFederico Vaga
26*1e6c6d69SFederico VagaLe cose da fare nella documentazione
27*1e6c6d69SFederico Vaga------------------------------------
28*1e6c6d69SFederico Vaga
29*1e6c6d69SFederico VagaC'è un elenco infinito di compiti da svolgere per portare la nostra
30*1e6c6d69SFederico Vagadocumentazione al livello in cui dovrebbe essere. Questo elenco contiene
31*1e6c6d69SFederico Vagaalcuni punti importanti, ma è lungi dall'essere esaustivo; se trovate un
32*1e6c6d69SFederico Vagamodo diverso per migliorare la documentazione, non esitate!
33*1e6c6d69SFederico Vaga
34*1e6c6d69SFederico VagaCorrezione degli avvisi
35*1e6c6d69SFederico Vaga~~~~~~~~~~~~~~~~~~~~~~~
36*1e6c6d69SFederico Vaga
37*1e6c6d69SFederico VagaAl momento, la generazione della documentazione produce un numero
38*1e6c6d69SFederico Vagaincredibile di avvisi. Quando ce ne sono così tanti, è come se non ce ne
39*1e6c6d69SFederico Vagafosse nessuno: le persone li ignorano e non si accorgeranno mai quando il
40*1e6c6d69SFederico Vagaloro lavoro ne aggiunge di nuovi. Per questo motivo, eliminare gli avvisi è
41*1e6c6d69SFederico Vagauno dei compiti a più alta priorità nell'elenco delle cose da fare per la
42*1e6c6d69SFederico Vagadocumentazione. Il compito in sé è ragionevolmente semplice, ma va
43*1e6c6d69SFederico Vagaaffrontato nel modo giusto per avere successo.
44*1e6c6d69SFederico Vaga
45*1e6c6d69SFederico VagaGli avvisi emessi da un compilatore per il codice C possono spesso essere
46*1e6c6d69SFederico Vagascartati come falsi positivi, portando a patch il cui unico scopo è zittire
47*1e6c6d69SFederico Vagail compilatore. Gli avvisi generati dalla documentazione, invece, indicano
48*1e6c6d69SFederico Vagaquasi sempre un problema reale; farli sparire richiede di comprendere il
49*1e6c6d69SFederico Vagaproblema e correggerlo alla radice. Per questo motivo, le patch che
50*1e6c6d69SFederico Vagacorreggono avvisi nella documentazione non dovrebbero limitarsi a dire "fix
51*1e6c6d69SFederico Vagaa warning" nel titolo del changelog; dovrebbero invece indicare il problema
52*1e6c6d69SFederico Vagareale che è stato corretto.
53*1e6c6d69SFederico Vaga
54*1e6c6d69SFederico VagaUn altro punto importante è che gli avvisi nella documentazione sono spesso
55*1e6c6d69SFederico Vagagenerati da problemi nei commenti kerneldoc all'interno del codice C. Anche se
56*1e6c6d69SFederico Vagail manutentore della documentazione apprezza l'essere messo in copia sulle
57*1e6c6d69SFederico Vagacorrezioni di questo tipo, in realtà spesso rivolgersi al sottosistema di
58*1e6c6d69SFederico Vagadocumentazione non è il modo migliore di apportare queste modifiche; queste
59*1e6c6d69SFederico Vagadovrebbero invece essere inviate al manutentore del sottosistema in questione.
60*1e6c6d69SFederico Vaga
61*1e6c6d69SFederico VagaPer esempio, in una generazione della documentazione ho preso, quasi a
62*1e6c6d69SFederico Vagacaso, un paio di avvisi::
63*1e6c6d69SFederico Vaga
64*1e6c6d69SFederico Vaga  ./drivers/devfreq/devfreq.c:1818: warning: bad line:
65*1e6c6d69SFederico Vaga  	- Resource-managed devfreq_register_notifier()
66*1e6c6d69SFederico Vaga  ./drivers/devfreq/devfreq.c:1854: warning: bad line:
67*1e6c6d69SFederico Vaga	- Resource-managed devfreq_unregister_notifier()
68*1e6c6d69SFederico Vaga
69*1e6c6d69SFederico Vaga(Le righe sono state divise per essere più leggibili).
70*1e6c6d69SFederico Vaga
71*1e6c6d69SFederico VagaUna rapida occhiata al file sorgente indicato sopra ha rivelato un paio di
72*1e6c6d69SFederico Vagacommenti kerneldoc con questo aspetto::
73*1e6c6d69SFederico Vaga
74*1e6c6d69SFederico Vaga  /**
75*1e6c6d69SFederico Vaga   * devm_devfreq_register_notifier()
76*1e6c6d69SFederico Vaga	  - Resource-managed devfreq_register_notifier()
77*1e6c6d69SFederico Vaga   * @dev:	The devfreq user device. (parent of devfreq)
78*1e6c6d69SFederico Vaga   * @devfreq:	The devfreq object.
79*1e6c6d69SFederico Vaga   * @nb:		The notifier block to be unregistered.
80*1e6c6d69SFederico Vaga   * @list:	DEVFREQ_TRANSITION_NOTIFIER.
81*1e6c6d69SFederico Vaga   */
82*1e6c6d69SFederico Vaga
83*1e6c6d69SFederico VagaIl problema è l'asterisco mancante, che confonde l'idea semplicistica che il
84*1e6c6d69SFederico Vagasistema di generazione abbia idea di come debba essere fatto un blocco di
85*1e6c6d69SFederico Vagacommento C. Questo problema era presente fin da quando quel commento venne
86*1e6c6d69SFederico Vagaaggiunto nel 2016, quindi da diversi anni. Correggerlo è stata solo questione di
87*1e6c6d69SFederico Vagaaggiungere gli asterischi mancanti. Una rapida occhiata alla cronologia di quel
88*1e6c6d69SFederico Vagafile ha mostrato quale fosse il formato usuale per la riga dell'oggetto, e
89*1e6c6d69SFederico Vaga``scripts/get_maintainer.pl`` mi ha detto chi dovesse riceverla (basta passare
90*1e6c6d69SFederico Vagail percorso delle vostre patch come argomento a scripts/get_maintainer.pl). La
91*1e6c6d69SFederico Vagapatch risultante era questa::
92*1e6c6d69SFederico Vaga
93*1e6c6d69SFederico Vaga  [PATCH] PM / devfreq: Fix two malformed kerneldoc comments
94*1e6c6d69SFederico Vaga
95*1e6c6d69SFederico Vaga  Two kerneldoc comments in devfreq.c fail to adhere to the required format,
96*1e6c6d69SFederico Vaga  resulting in these doc-build warnings:
97*1e6c6d69SFederico Vaga
98*1e6c6d69SFederico Vaga    ./drivers/devfreq/devfreq.c:1818: warning: bad line:
99*1e6c6d69SFederico Vaga  	  - Resource-managed devfreq_register_notifier()
100*1e6c6d69SFederico Vaga    ./drivers/devfreq/devfreq.c:1854: warning: bad line:
101*1e6c6d69SFederico Vaga	  - Resource-managed devfreq_unregister_notifier()
102*1e6c6d69SFederico Vaga
103*1e6c6d69SFederico Vaga  Add a couple of missing asterisks and make kerneldoc a little happier.
104*1e6c6d69SFederico Vaga
105*1e6c6d69SFederico Vaga  Signed-off-by: Jonathan Corbet <corbet@lwn.net>
106*1e6c6d69SFederico Vaga  ---
107*1e6c6d69SFederico Vaga   drivers/devfreq/devfreq.c | 4 ++--
108*1e6c6d69SFederico Vaga   1 file changed, 2 insertions(+), 2 deletions(-)
109*1e6c6d69SFederico Vaga
110*1e6c6d69SFederico Vaga  diff --git a/drivers/devfreq/devfreq.c b/drivers/devfreq/devfreq.c
111*1e6c6d69SFederico Vaga  index 57f6944d65a6..00c9b80b3d33 100644
112*1e6c6d69SFederico Vaga  --- a/drivers/devfreq/devfreq.c
113*1e6c6d69SFederico Vaga  +++ b/drivers/devfreq/devfreq.c
114*1e6c6d69SFederico Vaga  @@ -1814,7 +1814,7 @@ static void devm_devfreq_notifier_release(struct device *dev, void *res)
115*1e6c6d69SFederico Vaga
116*1e6c6d69SFederico Vaga   /**
117*1e6c6d69SFederico Vaga    * devm_devfreq_register_notifier()
118*1e6c6d69SFederico Vaga  -	- Resource-managed devfreq_register_notifier()
119*1e6c6d69SFederico Vaga  + *	- Resource-managed devfreq_register_notifier()
120*1e6c6d69SFederico Vaga    * @dev:	The devfreq user device. (parent of devfreq)
121*1e6c6d69SFederico Vaga    * @devfreq:	The devfreq object.
122*1e6c6d69SFederico Vaga    * @nb:		The notifier block to be unregistered.
123*1e6c6d69SFederico Vaga  @@ -1850,7 +1850,7 @@ EXPORT_SYMBOL(devm_devfreq_register_notifier);
124*1e6c6d69SFederico Vaga
125*1e6c6d69SFederico Vaga   /**
126*1e6c6d69SFederico Vaga    * devm_devfreq_unregister_notifier()
127*1e6c6d69SFederico Vaga  -	- Resource-managed devfreq_unregister_notifier()
128*1e6c6d69SFederico Vaga  + *	- Resource-managed devfreq_unregister_notifier()
129*1e6c6d69SFederico Vaga    * @dev:	The devfreq user device. (parent of devfreq)
130*1e6c6d69SFederico Vaga    * @devfreq:	The devfreq object.
131*1e6c6d69SFederico Vaga    * @nb:		The notifier block to be unregistered.
132*1e6c6d69SFederico Vaga  --
133*1e6c6d69SFederico Vaga  2.24.1
134*1e6c6d69SFederico Vaga
135*1e6c6d69SFederico VagaL'intero procedimento ha richiesto solo pochi minuti. Naturalmente, ho poi
136*1e6c6d69SFederico Vagascoperto che qualcun altro l'aveva già corretto in un altro albero,
137*1e6c6d69SFederico Vagamettendo in luce un'altra lezione: controllate sempre linux-next per
138*1e6c6d69SFederico Vagavedere se un problema è già stato risolto prima di mettervici sopra.
139*1e6c6d69SFederico Vaga
140*1e6c6d69SFederico VagaAltre correzioni richiederanno più tempo, specialmente quelle relative ai
141*1e6c6d69SFederico Vagacampi di una struttura o ai parametri di una funzione privi di
142*1e6c6d69SFederico Vagadocumentazione. In questi casi, è necessario capire quale sia il ruolo di
143*1e6c6d69SFederico Vagaquesti campi o parametri e descriverli correttamente. Nel complesso, questo
144*1e6c6d69SFederico Vagacompito diventa un po' tedioso a volte, ma è molto importante. Se riusciamo
145*1e6c6d69SFederico Vagadavvero ad eliminare gli avvisi dalla generazione della documentazione,
146*1e6c6d69SFederico Vagaallora potremo iniziare a pretendere che gli sviluppatori evitino di
147*1e6c6d69SFederico Vagaaggiungerne di nuovi.
148*1e6c6d69SFederico Vaga
149*1e6c6d69SFederico VagaOltre ai normali avvisi durante la generazione della documentazione, potete
150*1e6c6d69SFederico Vagaottenerne di più eseguendo ``make refcheckdocs`` per trovare riferimenti a file
151*1e6c6d69SFederico Vagadi documentazione inesistenti.
152*1e6c6d69SFederico Vaga
153*1e6c6d69SFederico VagaCommenti kerneldoc dimenticati
154*1e6c6d69SFederico Vaga~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
155*1e6c6d69SFederico Vaga
156*1e6c6d69SFederico VagaGli sviluppatori sono incoraggiati a scrivere commenti kerneldoc per il
157*1e6c6d69SFederico Vagaloro codice, ma molti di questi commenti non vengono mai inclusi nella
158*1e6c6d69SFederico Vagagenerazione della documentazione. Questo rende tale informazione più
159*1e6c6d69SFederico Vagadifficile da trovare e, per esempio, impedisce a Sphinx di generare
160*1e6c6d69SFederico Vagacollegamenti verso quella documentazione. Aggiungere le direttive
161*1e6c6d69SFederico Vaga``kernel-doc`` alla documentazione per includere quei commenti può aiutare
162*1e6c6d69SFederico Vagala comunità a ottenere il pieno valore del lavoro speso per crearli.
163*1e6c6d69SFederico Vaga
164*1e6c6d69SFederico VagaLo strumento ``tools/docs/find-unused-docs.sh`` può essere usato per
165*1e6c6d69SFederico Vagatrovare questi commenti dimenticati.
166*1e6c6d69SFederico Vaga
167*1e6c6d69SFederico VagaDa notare che il valore maggiore deriva dall'includere la documentazione
168*1e6c6d69SFederico Vagaper le funzioni e le strutture dati esportate. Molti sottosistemi hanno
169*1e6c6d69SFederico Vagaanche commenti kerneldoc per uso interno; questi non dovrebbero essere
170*1e6c6d69SFederico Vagainclusi nella generazione della documentazione a meno che non vengano
171*1e6c6d69SFederico Vagaposti in un documento specificamente rivolto agli sviluppatori che
172*1e6c6d69SFederico Vagalavorano all'interno del sottosistema in questione.
173*1e6c6d69SFederico Vaga
174*1e6c6d69SFederico Vaga
175*1e6c6d69SFederico VagaCorrezione dei refusi
176*1e6c6d69SFederico Vaga~~~~~~~~~~~~~~~~~~~~~
177*1e6c6d69SFederico Vaga
178*1e6c6d69SFederico VagaCorreggere errori di battitura o di formattazione nella documentazione è
179*1e6c6d69SFederico Vagaun modo rapido per imparare come creare e inviare patch, ed è un servizio
180*1e6c6d69SFederico Vagautile. Sono sempre disposto ad accettare questo tipo di patch. Detto
181*1e6c6d69SFederico Vagaquesto, una volta che ne avete corretti alcuni, considerate di passare a
182*1e6c6d69SFederico Vagacompiti più avanzati, lasciando qualche refuso per il prossimo principiante
183*1e6c6d69SFederico Vagache vorrà occuparsene.
184*1e6c6d69SFederico Vaga
185*1e6c6d69SFederico VagaDa notare che alcune cose *non* sono refusi e non dovrebbero essere
186*1e6c6d69SFederico Vaga"corrette":
187*1e6c6d69SFederico Vaga
188*1e6c6d69SFederico Vaga - Sia la grafia americana che quella britannica dell'inglese sono
189*1e6c6d69SFederico Vaga   ammesse nella documentazione del kernel. Non c'è bisogno di sostituire
190*1e6c6d69SFederico Vaga   l'una con l'altra.
191*1e6c6d69SFederico Vaga
192*1e6c6d69SFederico Vaga - La questione se un punto debba essere seguito da uno o due spazi non
193*1e6c6d69SFederico Vaga   va dibattuta nel contesto della documentazione del kernel. Anche
194*1e6c6d69SFederico Vaga   altri argomenti di legittimo disaccordo, come la "virgola di Oxford",
195*1e6c6d69SFederico Vaga   non sono pertinenti qui.
196*1e6c6d69SFederico Vaga
197*1e6c6d69SFederico VagaCome per qualsiasi patch a qualsiasi progetto, considerate se la vostra
198*1e6c6d69SFederico Vagamodifica sta davvero migliorando le cose.
199*1e6c6d69SFederico Vaga
200*1e6c6d69SFederico VagaDocumentazione datata
201*1e6c6d69SFederico Vaga~~~~~~~~~~~~~~~~~~~~~
202*1e6c6d69SFederico Vaga
203*1e6c6d69SFederico VagaParte della documentazione del kernel è attuale, mantenuta e utile.
204*1e6c6d69SFederico VagaUn'altra parte... non lo è. Documentazione impolverata, vecchia e
205*1e6c6d69SFederico Vagaimprecisa può fuorviare i lettori e gettare discredito sulla nostra
206*1e6c6d69SFederico Vagadocumentazione nel suo complesso. Qualsiasi cosa si possa fare per
207*1e6c6d69SFederico Vagaaffrontare questi problemi è più che benvenuta.
208*1e6c6d69SFederico Vaga
209*1e6c6d69SFederico VagaOgni volta che lavorate su un documento, considerate se è attuale, se ha
210*1e6c6d69SFederico Vagabisogno di essere aggiornato, o se forse dovrebbe essere rimosso del
211*1e6c6d69SFederico Vagatutto. Ci sono alcuni segnali d'allarme a cui potete prestare attenzione:
212*1e6c6d69SFederico Vaga
213*1e6c6d69SFederico Vaga - Riferimenti a kernel della serie 2.x
214*1e6c6d69SFederico Vaga - Rimandi a repositori su SourceForge
215*1e6c6d69SFederico Vaga - Nella cronologia, negli ultimi anni, solo correzioni di refusi
216*1e6c6d69SFederico Vaga - Discussioni su modi di lavorare precedenti a Git
217*1e6c6d69SFederico Vaga
218*1e6c6d69SFederico VagaLa cosa migliore da fare, ovviamente, sarebbe portare la documentazione a
219*1e6c6d69SFederico Vagaessere attuale, aggiungendo qualsiasi informazione necessaria. Un lavoro
220*1e6c6d69SFederico Vagasimile spesso richiede la collaborazione di sviluppatori che conoscono bene
221*1e6c6d69SFederico Vagail sottosistema in questione. Gli sviluppatori, quando viene chiesto loro
222*1e6c6d69SFederico Vagagentilmente, e quando le loro risposte vengono ascoltate e messe in
223*1e6c6d69SFederico Vagapratica, sono spesso più che disposti a collaborare con chi lavora per
224*1e6c6d69SFederico Vagamigliorare la documentazione.
225*1e6c6d69SFederico Vaga
226*1e6c6d69SFederico VagaAlcuni documenti sono senza speranza; a volte troviamo documenti che fanno
227*1e6c6d69SFederico Vagariferimento a codice rimosso dal kernel molto tempo fa, per esempio. C'è
228*1e6c6d69SFederico Vagauna sorprendente resistenza a rimuovere la documentazione obsoleta, ma
229*1e6c6d69SFederico Vagadovremmo farlo comunque. Il materiale superfluo nella nostra documentazione
230*1e6c6d69SFederico Vaganon è d'aiuto a nessuno.
231*1e6c6d69SFederico Vaga
232*1e6c6d69SFederico VagaNei casi in cui, forse, ci sono informazioni utili in un documento
233*1e6c6d69SFederico Vagagravemente datato, e non siete in grado di aggiornarlo, la cosa migliore
234*1e6c6d69SFederico Vagada fare potrebbe essere aggiungere un avviso all'inizio. Si raccomanda il
235*1e6c6d69SFederico Vagaseguente testo::
236*1e6c6d69SFederico Vaga
237*1e6c6d69SFederico Vaga  .. warning ::
238*1e6c6d69SFederico Vaga  	This document is outdated and in need of attention.  Please use
239*1e6c6d69SFederico Vaga	this information with caution, and please consider sending patches
240*1e6c6d69SFederico Vaga	to update it.
241*1e6c6d69SFederico Vaga
242*1e6c6d69SFederico VagaIn questo modo, almeno i nostri pazientissimi lettori sono stati avvisati
243*1e6c6d69SFederico Vagache il documento potrebbe portarli fuori strada.
244*1e6c6d69SFederico Vaga
245*1e6c6d69SFederico VagaCoerenza della documentazione
246*1e6c6d69SFederico Vaga~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
247*1e6c6d69SFederico Vaga
248*1e6c6d69SFederico VagaI veterani di qui ricorderanno i libri su Linux che comparvero sugli
249*1e6c6d69SFederico Vagascaffali negli anni '90. Erano semplicemente raccolte di file di
250*1e6c6d69SFederico Vagadocumentazione racimolati da varie fonti in rete. I libri sono (per lo
251*1e6c6d69SFederico Vagapiù) migliorati da allora, ma la documentazione del kernel è ancora per lo
252*1e6c6d69SFederico Vagapiù costruita su quel modello. Sono migliaia di file, quasi ognuno dei
253*1e6c6d69SFederico Vagaquali è stato scritto in isolamento da tutti gli altri. Non abbiamo un
254*1e6c6d69SFederico Vagacorpo coerente di documentazione del kernel; abbiamo migliaia di documenti
255*1e6c6d69SFederico Vagaindividuali.
256*1e6c6d69SFederico Vaga
257*1e6c6d69SFederico VagaAbbiamo cercato di migliorare la situazione creando un insieme di "libri"
258*1e6c6d69SFederico Vagache raggruppano la documentazione per specifici lettori. Questi
259*1e6c6d69SFederico Vagaincludono:
260*1e6c6d69SFederico Vaga
261*1e6c6d69SFederico Vaga - Documentation/admin-guide/index.rst
262*1e6c6d69SFederico Vaga - Documentation/core-api/index.rst
263*1e6c6d69SFederico Vaga - Documentation/driver-api/index.rst
264*1e6c6d69SFederico Vaga - Documentation/userspace-api/index.rst
265*1e6c6d69SFederico Vaga
266*1e6c6d69SFederico VagaCosì come questo libro sulla documentazione stessa.
267*1e6c6d69SFederico Vaga
268*1e6c6d69SFederico VagaSpostare i documenti nei libri appropriati è un compito importante e deve
269*1e6c6d69SFederico Vagacontinuare. Ci sono, tuttavia, un paio di sfide associate a questo lavoro.
270*1e6c6d69SFederico VagaSpostare i file della documentazione, nel breve termine, infastidisce chi vi
271*1e6c6d69SFederico Vagalavora; comprensibilmente, non sono entusiasti di questi cambiamenti. Di solito
272*1e6c6d69SFederico Vagali si può convincere a spostarli una volta; tuttavia, non vogliamo continuare a
273*1e6c6d69SFederico Vagaspostarli in giro.
274*1e6c6d69SFederico Vaga
275*1e6c6d69SFederico VagaAnche quando tutti i documenti sono al posto giusto, però, siamo solo
276*1e6c6d69SFederico Vagariusciti a trasformare un grande cumulo in un gruppo di cumuli più
277*1e6c6d69SFederico Vagapiccoli. Il lavoro di cercare di tessere insieme tutti quei documenti in
278*1e6c6d69SFederico Vagaun unico insieme non è ancora iniziato. Se avete idee brillanti su come
279*1e6c6d69SFederico Vagapotremmo procedere su questo fronte, saremmo più che felici di sentirle.
280*1e6c6d69SFederico Vaga
281*1e6c6d69SFederico VagaMiglioramenti al foglio di stile
282*1e6c6d69SFederico Vaga~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
283*1e6c6d69SFederico Vaga
284*1e6c6d69SFederico VagaCon l'adozione di Sphinx abbiamo un output HTML dall'aspetto molto più gradevole
285*1e6c6d69SFederico Vagadi quanto avessimo un tempo. Ma è ancora migliorabile; Donald Knuth e Edward
286*1e6c6d69SFederico VagaTufte non ne sarebbero impressionati. Questo richiede di modificare i nostri
287*1e6c6d69SFederico Vagafogli di stile per creare un output tipograficamente più solido, accessibile e
288*1e6c6d69SFederico Vagaleggibile.
289*1e6c6d69SFederico Vaga
290*1e6c6d69SFederico VagaAttenzione: se vi assumete questo compito, vi state addentrando nel
291*1e6c6d69SFederico Vagaclassico territorio del "bikeshed". Aspettatevi molte opinioni e
292*1e6c6d69SFederico Vagadiscussioni anche per cambiamenti relativamente ovvi. Questa è, ahimè, la
293*1e6c6d69SFederico Vaganatura del mondo in cui viviamo.
294*1e6c6d69SFederico Vaga
295*1e6c6d69SFederico VagaGenerazione di PDF senza LaTeX
296*1e6c6d69SFederico Vaga~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
297*1e6c6d69SFederico Vaga
298*1e6c6d69SFederico VagaQuesto è un compito decisamente non banale per qualcuno con molto tempo a
299*1e6c6d69SFederico Vagadisposizione e competenze in Python. La catena di strumenti di Sphinx è
300*1e6c6d69SFederico Vagarelativamente piccola e ben contenuta; è facile da aggiungere a un sistema
301*1e6c6d69SFederico Vagadi sviluppo. Ma generare output in PDF o EPUB richiede l'installazione di
302*1e6c6d69SFederico VagaLaTeX, che non è affatto piccolo o ben contenuto. Sarebbe una bella cosa
303*1e6c6d69SFederico Vagada eliminare.
304*1e6c6d69SFederico Vaga
305*1e6c6d69SFederico VagaLa speranza originale era di usare lo strumento rst2pdf (https://rst2pdf.org/)
306*1e6c6d69SFederico Vagaper la generazione dei PDF, ma si è scoperto che non era all'altezza del
307*1e6c6d69SFederico Vagacompito. Il lavoro di sviluppo su rst2pdf sembra però essere ripreso di recente,
308*1e6c6d69SFederico Vagail che è un segno di speranza. Se uno sviluppatore adeguatamente motivato lo
309*1e6c6d69SFederico Vagamigliorasse per far funzionare rst2pdf con la documentazione del kernel, il
310*1e6c6d69SFederico Vagamondo gli sarebbe eternamente grato.
311*1e6c6d69SFederico Vaga
312*1e6c6d69SFederico VagaScrivere più documentazione
313*1e6c6d69SFederico Vaga~~~~~~~~~~~~~~~~~~~~~~~~~~~
314*1e6c6d69SFederico Vaga
315*1e6c6d69SFederico VagaNaturalmente, ci sono vaste parti del kernel che sono gravemente prive di
316*1e6c6d69SFederico Vagadocumentazione. Se avete la conoscenza per documentare uno specifico
317*1e6c6d69SFederico Vagasottosistema del kernel e il desiderio di farlo, non esitate a scrivere e
318*1e6c6d69SFederico Vagainviare il lavoro al kernel. Un numero incalcolabile di
319*1e6c6d69SFederico Vagasviluppatori e utenti del kernel vi ringrazierà.
320