我应该如何使用Outlook发送代码片段?

作为一家大公司的程序员,我经常发送包含代码示例的Outlook电子邮件。

我会直接在邮件里输入代码。这不可避免地会导致问题,因为Outlook确实喜欢以讨人喜欢但无益的方式格式化文本。我的代码需要复制出电子邮件和直接到代码,所以我不希望Outlook通过添加特殊字符或什么的混乱它。

所以我总是需要调整如下选项:

  • 不要将每个句子的第一个字母大写(否则我所有的函数都是public而不是public)
  • 禁用智能引号(花哨的引号不能很好地从电子邮件中复制粘贴)
  • 不要使用拼写检查器(因为它很烦人)

我还希望我的代码采用等宽字体,黑色,缩进,并且比其他文本小。我试图为此制作一个样式,但出于某种原因,样式从未保存。:-([编辑:原来我没有告诉它在“基于此模板的新文档”上工作]

有没有办法把代码放在<pre>块或其他告诉Outlook忽略所有这些规则并按我想要的方式格式化代码的东西?如果没有,你有什么方法可以在Outlook邮件中发送代码片段而不让它变得超级讨厌?

302676 次浏览

如果你以文本文件的形式附上你的代码,而你的收件人(s)有“显示附件内联”选项设置(我相信这是默认设置),Outlook应该不会破坏你的代码,但它将直接从电子邮件复制/粘贴。

如果你不想在文件中附加代码(这是一个很好的提示,ChssPly76,我需要检查它),你可以尝试将默认消息格式改为富文本 (工具—选项—邮件格式—消息格式)而不是HTML。我了解到Outlook的HTML格式会破坏代码布局(顺便说一下,Outlook使用MS Word的HTML渲染引擎,这很糟糕),但富文本工作得很好。所以如果我从Visual Studio复制代码并粘贴到Outlook message中,当使用富文本时,它看起来很好,但当在HTML模式时,它是一场灾难。要禁用智能引号、自动更正和其他工件,请通过工具-选项-拼写-拼写和自动更正设置适当的选项;你可能还想使用复制粘贴设置(工具-选项-邮件格式-编辑器选项-剪切、复制和粘贴)。

以纯文本的方式发送邮件会对这个进行分类吗?

“如何在Outlook中发送纯文本消息”:

  • 在Outlook的菜单中选择“操作|使用|纯文本的新邮件消息”。
  • 像往常一样创建你的邮件。
  • 单击Send发送。

作为纯文本,它不应该搞砸你的代码,“智能”引号,自动大写等等。

另一个可能的选择是,如果这是公司内部的一个常见问题,也许你可以设置一个内部代码粘贴网站,周围有很多开源网站,比如打开Pastebin

多年以后,我有了一个回应。

  1. 使用在线代码高亮显示工具,如http://tohtml.com/来高亮显示你的代码,这样你就可以将标记好的代码从IDE粘贴到Word中。根据您的IDE,您可以跳过此步骤。

  2. 在Word 2010中,点击insert->object->openDocument Text。步骤2-3被记录在你如何在MS Word中显示代码片段保持格式和语法高亮显示?

  3. 将突出显示的代码粘贴到对象中。

  4. 复制整个对象。

  5. 右击->粘贴特殊对象到Outlook。

这将为您提供一个高亮显示的包含在Outlook 2010中的电子邮件中的代码框。

如果您使用的是Outlook 2010,您可以定义自己的样式并选择您想要的格式,在格式选项中有一个语言选项,在这里您可以指定语言并指定是否希望拼写检查器忽略此样式的文本。

使用此样式,您现在可以将代码作为文本粘贴并选择新样式。Outlook将不会更正文本,也不会对其执行拼写检查。

下面是我为电子邮件代码段定义的风格的摘要。

Do not check spelling or grammar, Border:
Box: (Single solid line, Orange,  0.5 pt Line width)
Pattern: Clear (Custom Color(RGB(253,253,217))), Style: Linked, Automatically update, Quick Style
Based on: HTML Preformatted

以下是对我有效的方法,最快,造成的痛苦/烦恼最少:

1)粘贴你的代码片段到崇高;确保你的语法看起来不错。

2)右键选择“复制为RTF”

3)粘贴到你的电子邮件

4)完成

如果你在电脑上安装了notepad++,那么你可以将文本复制为RTF(富文本格式)并粘贴到outlook邮件中。

  1. 将您的代码片段粘贴到notepad++

  2. 从菜单栏导航到“插件”->NppExport→复制RTF到剪贴板”;

  3. 粘贴到你的邮件

  4. < p >完成

我在给同事写电子邮件时遇到了这个问题。我最终发现,如果你从Visual Studio Code(免费)复制,它会保留格式,高亮和其他一切。这个编辑器可以处理所有的东西,它有我遇到过的每种编程语言的模块。

在邮件里看起来很漂亮。

当我将代码粘贴到Outlook中,或者有包含代码或技术语法的句子时,我被所有识别拼写错误的红色波浪线所困扰。如果你想让Outlook清除所有的红色拼写检查潦草,你可以在快速访问工具栏中添加一个按钮,调用VBA宏并删除当前文档中的所有潦草。

我更喜欢将这个宏与我的样式选择分开运行,因为我经常在包含混合内容的文本选择上使用它。

对于语法高亮,我使用@srujanreddy已经列出的notepad++技术,尽管我发现< em >右键单击< / em >上下文菜单选项比导航Plugins菜单更方便。

图像显示您可以右键单击所选文本,并选择复制具有语法高亮显示的文本

如果你在准备电子邮件时被拼写检查惹恼了,你可以在你的快速访问工具栏上添加一个按钮,可以删除邮件正文中的红色乱写乱画 参见本文:https://stackoverflow.com/a/49865743/1898524

Remove spelling Check sciggles

.

对我来说VS Code效果最好。

  1. 复制vscode空文件中的代码片段
  2. 保存所需扩展名为.cpp,.js等的文件
  3. 将代码片段复制到剪贴板
  4. 粘贴到outlook。

好吧,这是一个晚的答案,但如果你不是绝对需要它在文本格式,那么为什么只是简单地复制/粘贴截图采取了一些工具,如Windows内置剪辑工具?

下面是崇高的文本的另一个方法:

  1. 复制到崇高的文本
  2. 格式
  3. 编辑——比;复制为HTML
  4. 在Outlook中插入邮件

用Outlook 2202和Sublime Text 4126测试。