18c2ecf20Sopenharmony_ci.. _cn_email_clients:
28c2ecf20Sopenharmony_ci
38c2ecf20Sopenharmony_ci.. include:: ../disclaimer-zh_CN.rst
48c2ecf20Sopenharmony_ci
58c2ecf20Sopenharmony_ci:Original: :ref:`Documentation/process/email-clients.rst <email_clients>`
68c2ecf20Sopenharmony_ci
78c2ecf20Sopenharmony_ci译者::
88c2ecf20Sopenharmony_ci
98c2ecf20Sopenharmony_ci        中文版维护者: 贾威威  Harry Wei <harryxiyou@gmail.com>
108c2ecf20Sopenharmony_ci        中文版翻译者: 贾威威  Harry Wei <harryxiyou@gmail.com>
118c2ecf20Sopenharmony_ci                       时奎亮  Alex Shi <alex.shi@linux.alibaba.com>
128c2ecf20Sopenharmony_ci        中文版校译者: Yinglin Luan <synmyth@gmail.com>
138c2ecf20Sopenharmony_ci        	       Xiaochen Wang <wangxiaochen0@gmail.com>
148c2ecf20Sopenharmony_ci                       yaxinsn <yaxinsn@163.com>
158c2ecf20Sopenharmony_ci
168c2ecf20Sopenharmony_ciLinux邮件客户端配置信息
178c2ecf20Sopenharmony_ci=======================
188c2ecf20Sopenharmony_ci
198c2ecf20Sopenharmony_ciGit
208c2ecf20Sopenharmony_ci---
218c2ecf20Sopenharmony_ci
228c2ecf20Sopenharmony_ci现在大多数开发人员使用 ``git send-email`` 而不是常规的电子邮件客户端。这方面
238c2ecf20Sopenharmony_ci的手册非常好。在接收端,维护人员使用 ``git am`` 加载补丁。
248c2ecf20Sopenharmony_ci
258c2ecf20Sopenharmony_ci如果你是 ``git`` 新手,那么把你的第一个补丁发送给你自己。将其保存为包含所有
268c2ecf20Sopenharmony_ci标题的原始文本。运行 ``git am raw_email.txt`` ,然后使用 ``git log`` 查看更
278c2ecf20Sopenharmony_ci改日志。如果工作正常,再将补丁发送到相应的邮件列表。
288c2ecf20Sopenharmony_ci
298c2ecf20Sopenharmony_ci
308c2ecf20Sopenharmony_ci普通配置
318c2ecf20Sopenharmony_ci--------
328c2ecf20Sopenharmony_ciLinux内核补丁是通过邮件被提交的,最好把补丁作为邮件体的内嵌文本。有些维护者
338c2ecf20Sopenharmony_ci接收附件,但是附件的内容格式应该是"text/plain"。然而,附件一般是不赞成的,
348c2ecf20Sopenharmony_ci因为这会使补丁的引用部分在评论过程中变的很困难。
358c2ecf20Sopenharmony_ci
368c2ecf20Sopenharmony_ci用来发送Linux内核补丁的邮件客户端在发送补丁时应该处于文本的原始状态。例如,
378c2ecf20Sopenharmony_ci他们不能改变或者删除制表符或者空格,甚至是在每一行的开头或者结尾。
388c2ecf20Sopenharmony_ci
398c2ecf20Sopenharmony_ci不要通过"format=flowed"模式发送补丁。这样会引起不可预期以及有害的断行。
408c2ecf20Sopenharmony_ci
418c2ecf20Sopenharmony_ci不要让你的邮件客户端进行自动换行。这样也会破坏你的补丁。
428c2ecf20Sopenharmony_ci
438c2ecf20Sopenharmony_ci邮件客户端不能改变文本的字符集编码方式。要发送的补丁只能是ASCII或者UTF-8编码方式,
448c2ecf20Sopenharmony_ci如果你使用UTF-8编码方式发送邮件,那么你将会避免一些可能发生的字符集问题。
458c2ecf20Sopenharmony_ci
468c2ecf20Sopenharmony_ci邮件客户端应该形成并且保持 References: 或者 In-Reply-To: 标题,那么
478c2ecf20Sopenharmony_ci邮件话题就不会中断。
488c2ecf20Sopenharmony_ci
498c2ecf20Sopenharmony_ci复制粘帖(或者剪贴粘帖)通常不能用于补丁,因为制表符会转换为空格。使用xclipboard, xclip
508c2ecf20Sopenharmony_ci或者xcutsel也许可以,但是最好测试一下或者避免使用复制粘帖。
518c2ecf20Sopenharmony_ci
528c2ecf20Sopenharmony_ci不要在使用PGP/GPG署名的邮件中包含补丁。这样会使得很多脚本不能读取和适用于你的补丁。
538c2ecf20Sopenharmony_ci(这个问题应该是可以修复的)
548c2ecf20Sopenharmony_ci
558c2ecf20Sopenharmony_ci在给内核邮件列表发送补丁之前,给自己发送一个补丁是个不错的主意,保存接收到的
568c2ecf20Sopenharmony_ci邮件,将补丁用'patch'命令打上,如果成功了,再给内核邮件列表发送。
578c2ecf20Sopenharmony_ci
588c2ecf20Sopenharmony_ci
598c2ecf20Sopenharmony_ci一些邮件客户端提示
608c2ecf20Sopenharmony_ci------------------
618c2ecf20Sopenharmony_ci这里给出一些详细的MUA配置提示,可以用于给Linux内核发送补丁。这些并不意味是
628c2ecf20Sopenharmony_ci所有的软件包配置总结。
638c2ecf20Sopenharmony_ci
648c2ecf20Sopenharmony_ci说明:
658c2ecf20Sopenharmony_ciTUI = 以文本为基础的用户接口
668c2ecf20Sopenharmony_ciGUI = 图形界面用户接口
678c2ecf20Sopenharmony_ci
688c2ecf20Sopenharmony_ciAlpine (TUI)
698c2ecf20Sopenharmony_ci~~~~~~~~~~~~
708c2ecf20Sopenharmony_ci
718c2ecf20Sopenharmony_ci配置选项:
728c2ecf20Sopenharmony_ci在"Sending Preferences"部分:
738c2ecf20Sopenharmony_ci
748c2ecf20Sopenharmony_ci- "Do Not Send Flowed Text"必须开启
758c2ecf20Sopenharmony_ci- "Strip Whitespace Before Sending"必须关闭
768c2ecf20Sopenharmony_ci
778c2ecf20Sopenharmony_ci当写邮件时,光标应该放在补丁会出现的地方,然后按下CTRL-R组合键,使指定的
788c2ecf20Sopenharmony_ci补丁文件嵌入到邮件中。
798c2ecf20Sopenharmony_ci
808c2ecf20Sopenharmony_ciEvolution (GUI)
818c2ecf20Sopenharmony_ci~~~~~~~~~~~~~~~
828c2ecf20Sopenharmony_ci
838c2ecf20Sopenharmony_ci一些开发者成功的使用它发送补丁
848c2ecf20Sopenharmony_ci
858c2ecf20Sopenharmony_ci当选择邮件选项:Preformat
868c2ecf20Sopenharmony_ci  从Format->Heading->Preformatted (Ctrl-7)或者工具栏
878c2ecf20Sopenharmony_ci
888c2ecf20Sopenharmony_ci然后使用:
898c2ecf20Sopenharmony_ci  Insert->Text File... (Alt-n x)插入补丁文件。
908c2ecf20Sopenharmony_ci
918c2ecf20Sopenharmony_ci你还可以"diff -Nru old.c new.c | xclip",选择Preformat,然后使用中间键进行粘帖。
928c2ecf20Sopenharmony_ci
938c2ecf20Sopenharmony_ciKmail (GUI)
948c2ecf20Sopenharmony_ci~~~~~~~~~~~
958c2ecf20Sopenharmony_ci
968c2ecf20Sopenharmony_ci一些开发者成功的使用它发送补丁。
978c2ecf20Sopenharmony_ci
988c2ecf20Sopenharmony_ci默认设置不为HTML格式是合适的;不要启用它。
998c2ecf20Sopenharmony_ci
1008c2ecf20Sopenharmony_ci当书写一封邮件的时候,在选项下面不要选择自动换行。唯一的缺点就是你在邮件中输入的任何文本
1018c2ecf20Sopenharmony_ci都不会被自动换行,因此你必须在发送补丁之前手动换行。最简单的方法就是启用自动换行来书写邮件,
1028c2ecf20Sopenharmony_ci然后把它保存为草稿。一旦你在草稿中再次打开它,它已经全部自动换行了,那么你的邮件虽然没有
1038c2ecf20Sopenharmony_ci选择自动换行,但是还不会失去已有的自动换行。
1048c2ecf20Sopenharmony_ci
1058c2ecf20Sopenharmony_ci在邮件的底部,插入补丁之前,放上常用的补丁定界符:三个连字号(---)。
1068c2ecf20Sopenharmony_ci
1078c2ecf20Sopenharmony_ci然后在"Message"菜单条目,选择插入文件,接着选取你的补丁文件。还有一个额外的选项,你可以
1088c2ecf20Sopenharmony_ci通过它配置你的邮件建立工具栏菜单,还可以带上"insert file"图标。
1098c2ecf20Sopenharmony_ci
1108c2ecf20Sopenharmony_ci你可以安全地通过GPG标记附件,但是内嵌补丁最好不要使用GPG标记它们。作为内嵌文本的签发补丁,
1118c2ecf20Sopenharmony_ci当从GPG中提取7位编码时会使他们变的更加复杂。
1128c2ecf20Sopenharmony_ci
1138c2ecf20Sopenharmony_ci如果你非要以附件的形式发送补丁,那么就右键点击附件,然后选中属性,突出"Suggest automatic
1148c2ecf20Sopenharmony_cidisplay",这样内嵌附件更容易让读者看到。
1158c2ecf20Sopenharmony_ci
1168c2ecf20Sopenharmony_ci当你要保存将要发送的内嵌文本补丁,你可以从消息列表窗格选择包含补丁的邮件,然后右击选择
1178c2ecf20Sopenharmony_ci"save as"。你可以使用一个没有更改的包含补丁的邮件,如果它是以正确的形式组成。当你正真在它
1188c2ecf20Sopenharmony_ci自己的窗口之下察看,那时没有选项可以保存邮件--已经有一个这样的bug被汇报到了kmail的bugzilla
1198c2ecf20Sopenharmony_ci并且希望这将会被处理。邮件是以只针对某个用户可读写的权限被保存的,所以如果你想把邮件复制到其他地方,
1208c2ecf20Sopenharmony_ci你不得不把他们的权限改为组或者整体可读。
1218c2ecf20Sopenharmony_ci
1228c2ecf20Sopenharmony_ciLotus Notes (GUI)
1238c2ecf20Sopenharmony_ci~~~~~~~~~~~~~~~~~
1248c2ecf20Sopenharmony_ci
1258c2ecf20Sopenharmony_ci不要使用它。
1268c2ecf20Sopenharmony_ci
1278c2ecf20Sopenharmony_ciMutt (TUI)
1288c2ecf20Sopenharmony_ci~~~~~~~~~~
1298c2ecf20Sopenharmony_ci
1308c2ecf20Sopenharmony_ci很多Linux开发人员使用mutt客户端,所以证明它肯定工作的非常漂亮。
1318c2ecf20Sopenharmony_ci
1328c2ecf20Sopenharmony_ciMutt不自带编辑器,所以不管你使用什么编辑器都不应该带有自动断行。大多数编辑器都带有
1338c2ecf20Sopenharmony_ci一个"insert file"选项,它可以通过不改变文件内容的方式插入文件。
1348c2ecf20Sopenharmony_ci
1358c2ecf20Sopenharmony_ci'vim'作为mutt的编辑器:
1368c2ecf20Sopenharmony_ci  set editor="vi"
1378c2ecf20Sopenharmony_ci
1388c2ecf20Sopenharmony_ci  如果使用xclip,敲入以下命令
1398c2ecf20Sopenharmony_ci  :set paste
1408c2ecf20Sopenharmony_ci  按中键之前或者shift-insert或者使用
1418c2ecf20Sopenharmony_ci  :r filename
1428c2ecf20Sopenharmony_ci
1438c2ecf20Sopenharmony_ci如果想要把补丁作为内嵌文本。
1448c2ecf20Sopenharmony_ci(a)ttach工作的很好,不带有"set paste"。
1458c2ecf20Sopenharmony_ci
1468c2ecf20Sopenharmony_ci你可以通过 ``git format-patch`` 生成补丁,然后用 Mutt发送它们::
1478c2ecf20Sopenharmony_ci
1488c2ecf20Sopenharmony_ci        $ mutt -H 0001-some-bug-fix.patch
1498c2ecf20Sopenharmony_ci
1508c2ecf20Sopenharmony_ci配置选项:
1518c2ecf20Sopenharmony_ci它应该以默认设置的形式工作。
1528c2ecf20Sopenharmony_ci然而,把"send_charset"设置为"us-ascii::utf-8"也是一个不错的主意。
1538c2ecf20Sopenharmony_ci
1548c2ecf20Sopenharmony_ciMutt 是高度可配置的。 这里是个使用mutt通过 Gmail 发送的补丁的最小配置::
1558c2ecf20Sopenharmony_ci
1568c2ecf20Sopenharmony_ci  # .muttrc
1578c2ecf20Sopenharmony_ci  # ================  IMAP ====================
1588c2ecf20Sopenharmony_ci  set imap_user = 'yourusername@gmail.com'
1598c2ecf20Sopenharmony_ci  set imap_pass = 'yourpassword'
1608c2ecf20Sopenharmony_ci  set spoolfile = imaps://imap.gmail.com/INBOX
1618c2ecf20Sopenharmony_ci  set folder = imaps://imap.gmail.com/
1628c2ecf20Sopenharmony_ci  set record="imaps://imap.gmail.com/[Gmail]/Sent Mail"
1638c2ecf20Sopenharmony_ci  set postponed="imaps://imap.gmail.com/[Gmail]/Drafts"
1648c2ecf20Sopenharmony_ci  set mbox="imaps://imap.gmail.com/[Gmail]/All Mail"
1658c2ecf20Sopenharmony_ci
1668c2ecf20Sopenharmony_ci  # ================  SMTP  ====================
1678c2ecf20Sopenharmony_ci  set smtp_url = "smtp://username@smtp.gmail.com:587/"
1688c2ecf20Sopenharmony_ci  set smtp_pass = $imap_pass
1698c2ecf20Sopenharmony_ci  set ssl_force_tls = yes # Require encrypted connection
1708c2ecf20Sopenharmony_ci
1718c2ecf20Sopenharmony_ci  # ================  Composition  ====================
1728c2ecf20Sopenharmony_ci  set editor = `echo \$EDITOR`
1738c2ecf20Sopenharmony_ci  set edit_headers = yes  # See the headers when editing
1748c2ecf20Sopenharmony_ci  set charset = UTF-8     # value of $LANG; also fallback for send_charset
1758c2ecf20Sopenharmony_ci  # Sender, email address, and sign-off line must match
1768c2ecf20Sopenharmony_ci  unset use_domain        # because joe@localhost is just embarrassing
1778c2ecf20Sopenharmony_ci  set realname = "YOUR NAME"
1788c2ecf20Sopenharmony_ci  set from = "username@gmail.com"
1798c2ecf20Sopenharmony_ci  set use_from = yes
1808c2ecf20Sopenharmony_ci
1818c2ecf20Sopenharmony_ciMutt文档含有更多信息:
1828c2ecf20Sopenharmony_ci
1838c2ecf20Sopenharmony_ci    http://dev.mutt.org/trac/wiki/UseCases/Gmail
1848c2ecf20Sopenharmony_ci
1858c2ecf20Sopenharmony_ci    http://dev.mutt.org/doc/manual.html
1868c2ecf20Sopenharmony_ci
1878c2ecf20Sopenharmony_ciPine (TUI)
1888c2ecf20Sopenharmony_ci~~~~~~~~~~
1898c2ecf20Sopenharmony_ci
1908c2ecf20Sopenharmony_ciPine过去有一些空格删减问题,但是这些现在应该都被修复了。
1918c2ecf20Sopenharmony_ci
1928c2ecf20Sopenharmony_ci如果可以,请使用alpine(pine的继承者)
1938c2ecf20Sopenharmony_ci
1948c2ecf20Sopenharmony_ci配置选项:
1958c2ecf20Sopenharmony_ci- 最近的版本需要消除流程文本
1968c2ecf20Sopenharmony_ci- "no-strip-whitespace-before-send"选项也是需要的。
1978c2ecf20Sopenharmony_ci
1988c2ecf20Sopenharmony_ci
1998c2ecf20Sopenharmony_ciSylpheed (GUI)
2008c2ecf20Sopenharmony_ci~~~~~~~~~~~~~~
2018c2ecf20Sopenharmony_ci
2028c2ecf20Sopenharmony_ci- 内嵌文本可以很好的工作(或者使用附件)。
2038c2ecf20Sopenharmony_ci- 允许使用外部的编辑器。
2048c2ecf20Sopenharmony_ci- 对于目录较多时非常慢。
2058c2ecf20Sopenharmony_ci- 如果通过non-SSL连接,无法使用TLS SMTP授权。
2068c2ecf20Sopenharmony_ci- 在组成窗口中有一个很有用的ruler bar。
2078c2ecf20Sopenharmony_ci- 给地址本中添加地址就不会正确的了解显示名。
2088c2ecf20Sopenharmony_ci
2098c2ecf20Sopenharmony_ciThunderbird (GUI)
2108c2ecf20Sopenharmony_ci~~~~~~~~~~~~~~~~~
2118c2ecf20Sopenharmony_ci
2128c2ecf20Sopenharmony_ci默认情况下,thunderbird很容易损坏文本,但是还有一些方法可以强制它变得更好。
2138c2ecf20Sopenharmony_ci
2148c2ecf20Sopenharmony_ci- 在用户帐号设置里,组成和寻址,不要选择"Compose messages in HTML format"。
2158c2ecf20Sopenharmony_ci
2168c2ecf20Sopenharmony_ci- 编辑你的Thunderbird配置设置来使它不要拆行使用:user_pref("mailnews.wraplength", 0);
2178c2ecf20Sopenharmony_ci
2188c2ecf20Sopenharmony_ci- 编辑你的Thunderbird配置设置,使它不要使用"format=flowed"格式:user_pref("mailnews.
2198c2ecf20Sopenharmony_ci  send_plaintext_flowed", false);
2208c2ecf20Sopenharmony_ci
2218c2ecf20Sopenharmony_ci- 你需要使Thunderbird变为预先格式方式:
2228c2ecf20Sopenharmony_ci  如果默认情况下你书写的是HTML格式,那不是很难。仅仅从标题栏的下拉框中选择"Preformat"格式。
2238c2ecf20Sopenharmony_ci  如果默认情况下你书写的是文本格式,你不得把它改为HTML格式(仅仅作为一次性的)来书写新的消息,
2248c2ecf20Sopenharmony_ci  然后强制使它回到文本格式,否则它就会拆行。要实现它,在写信的图标上使用shift键来使它变为HTML
2258c2ecf20Sopenharmony_ci  格式,然后标题栏的下拉框中选择"Preformat"格式。
2268c2ecf20Sopenharmony_ci
2278c2ecf20Sopenharmony_ci- 允许使用外部的编辑器:
2288c2ecf20Sopenharmony_ci  针对Thunderbird打补丁最简单的方法就是使用一个"external editor"扩展,然后使用你最喜欢的
2298c2ecf20Sopenharmony_ci  $EDITOR来读取或者合并补丁到文本中。要实现它,可以下载并且安装这个扩展,然后添加一个使用它的
2308c2ecf20Sopenharmony_ci  按键View->Toolbars->Customize...最后当你书写信息的时候仅仅点击它就可以了。
2318c2ecf20Sopenharmony_ci
2328c2ecf20Sopenharmony_ciTkRat (GUI)
2338c2ecf20Sopenharmony_ci~~~~~~~~~~~
2348c2ecf20Sopenharmony_ci
2358c2ecf20Sopenharmony_ci可以使用它。使用"Insert file..."或者外部的编辑器。
2368c2ecf20Sopenharmony_ci
2378c2ecf20Sopenharmony_ciGmail (Web GUI)
2388c2ecf20Sopenharmony_ci~~~~~~~~~~~~~~~
2398c2ecf20Sopenharmony_ci
2408c2ecf20Sopenharmony_ci不要使用它发送补丁。
2418c2ecf20Sopenharmony_ci
2428c2ecf20Sopenharmony_ciGmail网页客户端自动地把制表符转换为空格。
2438c2ecf20Sopenharmony_ci
2448c2ecf20Sopenharmony_ci虽然制表符转换为空格问题可以被外部编辑器解决,同时它还会使用回车换行把每行拆分为78个字符。
2458c2ecf20Sopenharmony_ci
2468c2ecf20Sopenharmony_ci另一个问题是Gmail还会把任何不是ASCII的字符的信息改为base64编码。它把东西变的像欧洲人的名字。
2478c2ecf20Sopenharmony_ci
2488c2ecf20Sopenharmony_ci                                ###
249