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

问题描述 投票:110回答:9

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

我实际上会直接在电子邮件中输入代码。这不可避免地导致问题,因为Outlook真的喜欢以令人愉快但无益的方式格式化文本。我的代码需要可以从电子邮件中复制出来并直接复制到代码中,所以我不希望Outlook通过添加特殊字符或其他东西来搞乱它。

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

  • 不要将每个句子的第一个字母大写(否则我的所有功能都是公开的而不是公开的)
  • 禁用智能引号(花哨的引号不能复制+粘贴好的电子邮件)
  • 永远不要使用拼写检查(因为它只是让人讨厌)

我也喜欢我的代码是等宽字体,黑色,缩进,比其他文本小。我试图为此制作一个Style,但由于某种原因,Style永远不会保存。 :-( [编辑:结果我没有告诉它工作“基于这个模板的新文件”]

有没有办法将代码放在<pre>块或者某些东西中,告诉Outlook忽略所有这些规则并按照我想要的方式格式化代码?如果没有,你有什么方法可以在Outlook电子邮件中发送代码片段,而不会让它变得非常烦人?

outlook outlook-2007
9个回答
36
投票

如果您使用的是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

78
投票

多年以后我得到了答复。

  1. 使用像http://tohtml.com/这样的在线代码荧光笔突出显示您的代码,以便将标记的代码从IDE粘贴到Word中。根据您的IDE,您可以跳过此步骤。
  2. 在Word 2010中,转到insert-> object-> openDocument Text。 How do you display code snippets in MS Word preserving format and syntax highlighting?记录了步骤2-3。
  3. 将突出显示的代码粘贴到对象中。
  4. 复制整个对象。
  5. 右键单击 - >将特殊对象粘贴到Outlook中。

这为您提供了一个突出显示的包含的代码框,用于Outlook 2010中的电子邮件。


51
投票

如果您的电脑中安装了notepad ++,那么您可以将测试复制为RTF(富文本格式)并将其粘贴到Outlook邮件中。

1)将代码片段粘贴到记事本++中;

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

3)粘贴到您的电子邮件中

4)完成


11
投票

这对我有用,并且是最快的并且导致最少的痛苦/烦恼:

1)将代码段粘贴到sublime中;确保你的语法看起来很好。

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

3)粘贴到您的电子邮件中

4)完成


7
投票

我想到了一种方法,可以通过电子邮件向同事更好地格式化。我最终发现,如果你从Visual Studio代码(免费)复制它,它保留格式,突出显示和其他一切。这个编辑器适用于所有内容,并且具有我遇到的每种编程语言的模块。

在电子邮件中看起来漂亮。


6
投票

如果您将代码作为文本文件附加,并且您的收件人设置了“显示附件内联”选项(我相信它默认设置),Outlook不应该破坏您的代码,但它可以直接从电子邮件复制/粘贴。


1
投票

当我将代码粘贴到Outlook或包含代码或技术语法的句子时,我会被识别拼写错误的所有红色曲线所困扰。如果您希望Outlook清除所有红色拼写检查曲线,您可以向快速访问工具栏添加一个按钮,该按钮调用VBA macro并从当前文档中删除所有曲线。

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

对于语法高亮,我使用@srujanreddy已经列出的Notepad ++技术,虽然我发现右键单击上下文菜单选项比导航插件菜单有点方便。

Image showing you can right-click on selected text and choose to copy text with syntax highlighting

如果您在准备电子邮件时因拼写检查而烦恼,可以在快速访问工具栏中添加一个按钮,该按钮将从邮件正文中删除红色曲线。 看到这篇文章:https://stackoverflow.com/a/49865743/1898524

Remove Spell Check Squiggles


0
投票

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


0
投票

将邮件发送为纯文本排序吗?

"How to Send a Plain Text Message in Outlook"

  • 选择“操作”|新邮件使用| Outlook中菜单中的纯文本。
  • 像往常一样创建您的消息。
  • 单击“发送”以进行传递。

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

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

© www.soinside.com 2019 - 2024. All rights reserved.