1.. include:: ../disclaimer-ita.rst
2
3:Original: :doc:`../../../process/email-clients`
4:Translator: Alessia Mantegazza <amantegazza@vaga.pv.it>
5
6Informazioni sui programmi di posta elettronica per Linux
7=========================================================
8
9Git
10---
11
12Oggigiorno, la maggior parte degli sviluppatori utilizza ``git send-email``
13al posto dei classici programmi di posta elettronica.  Le pagine man sono
14abbastanza buone. Dal lato del ricevente, i manutentori utilizzano ``git am``
15per applicare le patch.
16
17Se siete dei novelli utilizzatori di ``git`` allora inviate la patch a voi
18stessi. Salvatela come testo includendo tutte le intestazioni. Poi eseguite
19il comando ``git am messaggio-formato-testo.txt`` e revisionatene il risultato
20con ``git log``. Quando tutto funziona correttamente, allora potete inviare
21la patch alla lista di discussione più appropriata.
22
23Panoramica delle opzioni
24------------------------
25
26Le patch per il kernel vengono inviate per posta elettronica, preferibilmente
27come testo integrante del messaggio.  Alcuni manutentori accettano gli
28allegati, ma in questo caso gli allegati devono avere il *content-type*
29impostato come ``text/plain``.  Tuttavia, generalmente gli allegati non sono
30ben apprezzati perché rende più difficile citare porzioni di patch durante il
31processo di revisione.
32
33I programmi di posta elettronica che vengono usati per inviare le patch per il
34kernel Linux dovrebbero inviarle senza alterazioni.  Per esempio, non
35dovrebbero modificare o rimuovere tabulazioni o spazi, nemmeno all'inizio o
36alla fine delle righe.
37
38Non inviate patch con ``format=flowed``.  Questo potrebbe introdurre
39interruzioni di riga inaspettate e indesiderate.
40
41Non lasciate che il vostro programma di posta vada a capo automaticamente.
42Questo può corrompere le patch.
43
44I programmi di posta non dovrebbero modificare la codifica dei caratteri nel
45testo.  Le patch inviate per posta elettronica dovrebbero essere codificate in
46ASCII o UTF-8.
47Se configurate il vostro programma per inviare messaggi codificati con UTF-8
48eviterete possibili problemi di codifica.
49
50I programmi di posta dovrebbero generare e mantenere le intestazioni
51"References" o "In-Reply-To:" cosicché la discussione non venga interrotta.
52
53Di solito, il copia-e-incolla (o taglia-e-incolla) non funziona con le patch
54perché le tabulazioni vengono convertite in spazi.  Usando xclipboard, xclip
55e/o xcutsel potrebbe funzionare, ma è meglio che lo verifichiate o meglio
56ancora: non usate il copia-e-incolla.
57
58Non usate firme PGP/GPG nei messaggi che contengono delle patch.  Questo
59impedisce il corretto funzionamento di alcuni script per leggere o applicare
60patch (questo si dovrebbe poter correggere).
61
62Prima di inviare le patch sulle liste di discussione Linux, può essere una
63buona idea quella di inviare la patch a voi stessi, salvare il messaggio
64ricevuto, e applicarlo ai sorgenti con successo.
65
66
67Alcuni suggerimenti per i programmi di posta elettronica (MUA)
68--------------------------------------------------------------
69
70Qui troverete alcuni suggerimenti per configurare i vostri MUA allo scopo
71di modificare ed inviare patch per il kernel Linux.  Tuttavia, questi
72suggerimenti non sono da considerarsi come un riassunto di una configurazione
73completa.
74
75Legenda:
76
77- TUI = interfaccia utente testuale (*text-based user interface*)
78- GUI = interfaccia utente grafica (*graphical user interface*)
79
80Alpine (TUI)
81************
82
83Opzioni per la configurazione:
84
85Nella sezione :menuselection:`Sending Preferences`:
86
87- :menuselection:`Do Not Send Flowed Text` deve essere ``enabled``
88- :menuselection:`Strip Whitespace Before Sending` deve essere ``disabled``
89
90Quando state scrivendo un messaggio, il cursore dev'essere posizionato
91dove volete che la patch inizi, poi premendo :kbd:`CTRL-R` vi verrà chiesto
92di selezionare il file patch da inserire nel messaggio.
93
94Claws Mail (GUI)
95****************
96
97Funziona. Alcune persone riescono ad usarlo con successo per inviare le patch.
98
99Per inserire una patch usate :menuselection:`Messaggio-->Inserisci file`
100(:kbd:`CTRL-I`) oppure un editor esterno.
101
102Se la patch che avete inserito dev'essere modificata usato la finestra di
103scrittura di Claws, allora assicuratevi che l'"auto-interruzione" sia
104disabilitata :menuselection:`Configurazione-->Preferenze-->Composizione-->Interruzione riga`.
105
106Evolution (GUI)
107***************
108
109Alcune persone riescono ad usarlo con successo per inviare le patch.
110
111Quando state scrivendo una lettera selezionate: Preformattato
112  da :menuselection:`Formato-->Stile del paragrafo-->Preformattato`
113  (:kbd:`CTRL-7`) o dalla barra degli strumenti
114
115Poi per inserire la patch usate:
116:menuselection:`Inserisci--> File di testo...` (:kbd:`ALT-N x`)
117
118Potete anche eseguire ``diff -Nru old.c new.c | xclip``, selezionare
119:menuselection:`Preformattato`, e poi usare il tasto centrale del mouse.
120
121Kmail (GUI)
122***********
123
124Alcune persone riescono ad usarlo con successo per inviare le patch.
125
126La configurazione base che disabilita la composizione di messaggi HTML è
127corretta; non abilitatela.
128
129Quando state scrivendo un messaggio, nel menu opzioni, togliete la selezione a
130"A capo automatico". L'unico svantaggio sarà che qualsiasi altra cosa scriviate
131nel messaggio non verrà mandata a capo in automatico ma dovrete farlo voi.
132Il modo più semplice per ovviare a questo problema è quello di scrivere il
133messaggio con l'opzione abilitata e poi di salvarlo nelle bozze. Riaprendo ora
134il messaggio dalle bozze le andate a capo saranno parte integrante del
135messaggio, per cui togliendo l'opzione "A capo automatico" non perderete nulla.
136
137Alla fine del vostro messaggio, appena prima di inserire la vostra patch,
138aggiungete il delimitatore di patch: tre trattini (``---``).
139
140Ora, dal menu :menuselection:`Messaggio`, selezionate :menuselection:`Inserisci file di testo...`
141quindi scegliete la vostra patch.
142Come soluzione aggiuntiva potreste personalizzare la vostra barra degli
143strumenti aggiungendo un'icona per :menuselection:`Inserisci file di testo...`.
144
145Allargate la finestra di scrittura abbastanza da evitare andate a capo.
146Questo perché in Kmail 1.13.5 (KDE 4.5.4), Kmail aggiunge andate a capo
147automaticamente al momento dell'invio per tutte quelle righe che graficamente,
148nella vostra finestra di composizione, si sono estete su una riga successiva.
149Disabilitare l'andata a capo automatica non è sufficiente. Dunque, se la vostra
150patch contiene delle righe molto lunghe, allora dovrete allargare la finestra
151di composizione per evitare che quelle righe vadano a capo. Vedere:
152https://bugs.kde.org/show_bug.cgi?id=174034
153
154Potete firmare gli allegati con GPG, ma per le patch si preferisce aggiungerle
155al testo del messaggio per cui non usate la firma GPG.  Firmare le patch
156inserite come testo del messaggio le rende più difficili da estrarre dalla loro
157codifica a 7-bit.
158
159Se dovete assolutamente inviare delle patch come allegati invece di integrarle
160nel testo del messaggio, allora premete il tasto destro sull'allegato e
161selezionate :menuselection:`Proprietà`, e poi attivate
162:menuselection:`Suggerisci visualizzazione automatica` per far si che
163l'allegato sia più leggibile venendo visualizzato come parte del messaggio.
164
165Per salvare le patch inviate come parte di un messaggio, selezionate il
166messaggio che la contiene, premete il tasto destro e selezionate
167:menuselection:`Salva come`. Se il messaggio fu ben preparato, allora potrete
168usarlo interamente senza alcuna modifica.
169I messaggi vengono salvati con permessi di lettura-scrittura solo per l'utente,
170nel caso in cui vogliate copiarli altrove per renderli disponibili ad altri
171gruppi o al mondo, ricordatevi di usare ``chmod`` per cambiare i permessi.
172
173Lotus Notes (GUI)
174*****************
175
176Scappate finché potete.
177
178IBM Verse (Web GUI)
179*******************
180
181Vedi il commento per Lotus Notes.
182
183Mutt (TUI)
184**********
185
186Un sacco di sviluppatori Linux usano ``mutt``, per cui deve funzionare
187abbastanza bene.
188
189Mutt non ha un proprio editor, quindi qualunque sia il vostro editor dovrete
190configurarlo per non aggiungere automaticamente le andate a capo.  Molti
191editor hanno un'opzione :menuselection:`Inserisci file` che inserisce il
192contenuto di un file senza alterarlo.
193
194Per usare ``vim`` come editor per mutt::
195
196  set editor="vi"
197
198Se per inserire la patch nel messaggio usate xclip, scrivete il comando::
199
200  :set paste
201
202prima di premere il tasto centrale o shift-insert. Oppure usate il
203comando::
204
205  :r filename
206
207(a)llega funziona bene senza ``set paste``
208
209Potete generare le patch con ``git format-patch`` e usare Mutt per inviarle::
210
211    $ mutt -H 0001-some-bug-fix.patch
212
213Opzioni per la configurazione:
214
215Tutto dovrebbe funzionare già nella configurazione base.
216Tuttavia, è una buona idea quella di impostare ``send_charset``::
217
218   set send_charset="us-ascii:utf-8"
219
220Mutt è molto personalizzabile. Qui di seguito trovate la configurazione minima
221per iniziare ad usare Mutt per inviare patch usando Gmail::
222
223  # .muttrc
224  # ================  IMAP ====================
225  set imap_user = 'yourusername@gmail.com'
226  set imap_pass = 'yourpassword'
227  set spoolfile = imaps://imap.gmail.com/INBOX
228  set folder = imaps://imap.gmail.com/
229  set record="imaps://imap.gmail.com/[Gmail]/Sent Mail"
230  set postponed="imaps://imap.gmail.com/[Gmail]/Drafts"
231  set mbox="imaps://imap.gmail.com/[Gmail]/All Mail"
232
233  # ================  SMTP  ====================
234  set smtp_url = "smtp://username@smtp.gmail.com:587/"
235  set smtp_pass = $imap_pass
236  set ssl_force_tls = yes # Require encrypted connection
237
238  # ================  Composition  ====================
239  set editor = `echo \$EDITOR`
240  set edit_headers = yes  # See the headers when editing
241  set charset = UTF-8     # value of $LANG; also fallback for send_charset
242  # Sender, email address, and sign-off line must match
243  unset use_domain        # because joe@localhost is just embarrassing
244  set realname = "YOUR NAME"
245  set from = "username@gmail.com"
246  set use_from = yes
247
248La documentazione di Mutt contiene molte più informazioni:
249
250    https://gitlab.com/muttmua/mutt/-/wikis/UseCases/Gmail
251
252    http://www.mutt.org/doc/manual/
253
254Pine (TUI)
255**********
256
257Pine aveva alcuni problemi con gli spazi vuoti, ma questi dovrebbero essere
258stati risolti.
259
260Se potete usate alpine (il successore di pine).
261
262Opzioni di configurazione:
263
264- Nelle versioni più recenti è necessario avere ``quell-flowed-text``
265- l'opzione ``no-strip-whitespace-before-send`` è necessaria
266
267Sylpheed (GUI)
268**************
269
270- funziona bene per aggiungere testo in linea (o usando allegati)
271- permette di utilizzare editor esterni
272- è lento su cartelle grandi
273- non farà l'autenticazione TSL SMTP su una connessione non SSL
274- ha un utile righello nella finestra di scrittura
275- la rubrica non comprende correttamente il nome da visualizzare e
276  l'indirizzo associato
277
278Thunderbird (GUI)
279*****************
280
281Thunderbird è un clone di Outlook a cui piace maciullare il testo, ma esistono
282modi per impedirglielo.
283
284- permettere l'uso di editor esterni:
285  La cosa più semplice da fare con Thunderbird e le patch è quello di usare
286  l'estensione "external editor" e di usare il vostro ``$EDITOR`` preferito per
287  leggere/includere patch nel vostro messaggio.  Per farlo, scaricate ed
288  installate l'estensione e aggiungete un bottone per chiamarla rapidamente
289  usando :menuselection:`Visualizza-->Barra degli strumenti-->Personalizza...`;
290  una volta fatto potrete richiamarlo premendo sul bottone mentre siete nella
291  finestra :menuselection:`Scrivi`
292
293  Tenete presente che "external editor" richiede che il vostro editor non
294  faccia alcun fork, in altre parole, l'editor non deve ritornare prima di
295  essere stato chiuso.  Potreste dover passare dei parametri aggiuntivi al
296  vostro editor oppure cambiargli la configurazione.  Per esempio, usando
297  gvim dovrete aggiungere l'opzione -f ``/usr/bin/gvim -f`` (Se il binario
298  si trova in ``/usr/bin``) nell'apposito campo nell'interfaccia di
299  configurazione di  :menuselection:`external editor`.  Se usate altri editor
300  consultate il loro  manuale per sapere come configurarli.
301
302Per rendere l'editor interno un po' più sensato, fate così:
303
304- Modificate le impostazioni di Thunderbird per far si che non usi
305  ``format=flowed``. Andate in :menuselection:`Modifica-->Preferenze-->Avanzate-->Editor di configurazione`
306  per invocare il registro delle impostazioni.
307
308- impostate ``mailnews.send_plaintext_flowed`` a ``false``
309
310- impostate ``mailnews.wraplength`` da ``72`` a ``0``
311
312- :menuselection:`Visualizza-->Corpo del messaggio come-->Testo semplice`
313
314- :menuselection:`Visualizza-->Codifica del testo-->Unicode`
315
316
317TkRat (GUI)
318***********
319
320Funziona. Usare "Inserisci file..." o un editor esterno.
321
322Gmail (Web GUI)
323***************
324
325Non funziona per inviare le patch.
326
327Il programma web Gmail converte automaticamente i tab in spazi.
328
329Allo stesso tempo aggiunge andata a capo ogni 78 caratteri. Comunque
330il problema della conversione fra spazi e tab può essere risolto usando
331un editor esterno.
332
333Un altro problema è che Gmail usa la codifica base64 per tutti quei messaggi
334che contengono caratteri non ASCII. Questo include cose tipo i nomi europei.
335