粘贴到电子邮件时语法突出显示

时间:2008-10-22 13:56:19

标签: html email syntax-highlighting paste

我处于这种情况,我经常通过我的展望向同事和合作伙伴发送小代码片段和xml-snippets。 有没有人有一个好主意或工具,我可以使用它来粘贴我的粘贴语法,然后再粘贴到电子邮件中。

我在考虑使用“$ fancytool”的中间粘贴,然后我会复制一些可以复制的内容,以便将其粘贴到“撰写电子邮件”窗口中。

编辑-更多-信息:

我从VMWare虚拟机中的Windows粘贴,它可能是eclipse,xmlspy,logfiles和其他程序

偶更信息:

我已经看过this link如何从Vim做到这一点。不幸的是,很少从vim im复制Code,我的电子邮件机器没有任何vim。 vmware机器有gvim,但我希望有一个更容易的方法,粘贴到vim,保存到文件,在internetexplorer中打开然后复制/粘贴

10 个答案:

答案 0 :(得分:5)

迟到但我可以给出一个有效的答案。 你需要两件事

  1. 腻子
  2. 访问某些Unix服务器(使用vim)
  3. 在putty选项中,在窗口→选择下,打开

    复选框

    Paste in to clipboard in RTF as well as plain text

    使用putty登录服务器。 通过键入vim启动vim 将文本(例如XML)粘贴到vim中。 进入命令模式(通过按 ESC 进入vim)并键入 :set syn=xml

    突出显示语法突然显示。 使用鼠标复制文本并将其粘贴到您的电子邮箱中。

答案 1 :(得分:3)

5年太晚了,抱歉,但我的解决方案比接受的答案简单得多。

使用此在线工具:http://tohtml.com/

从浏览器窗口复制预览,然后粘贴到Word或Outlook中。

答案 2 :(得分:2)

Vim(或GVim)会将您的代码输出为格式化的HTML。然后,只要您的电子邮件使用HTML格式,您就可以将其复制并粘贴到其中。

答案 3 :(得分:2)

只是关于这个问题的更新,如果你在Windows上,你可以安装Notepad ++(无论如何都是最好的Windows编辑器之一),它开箱即用,带有一个插件:“使用语法复制文本突出显示“,当您选择一些文本并右键单击它时。

答案 4 :(得分:1)

如果您只想要Add-In here it is

如果你想知道它是如何完成的,here is an article on how to write the Add-In

答案 5 :(得分:1)

link让我SciTE

看起来SciTE有一个复制到RTF功能:

SciTE

编辑(vmware升级): 但是当我使用vmware时,看起来我几乎丢失了,因为我无法将rtf剪贴板项目传输到vmware主机。我无法在vmware主机上安装软件。

也许是一个带语法高亮显示的粘贴网站?

答案 6 :(得分:1)

评论:svrist提到了一个带语法高亮的代码粘贴网站。试试http://codepad.org/

(没有足够的魔力发表评论)

答案 7 :(得分:0)

如果您使用的是Windows,Visual Studio会自动执行此操作。至少它对我来说,在XP上使用Visual Studio 2005并复制/粘贴到MS Word和Lotus Notes

答案 8 :(得分:0)

HeidiSQL 为sql查询执行此操作,并且突出显示他们所做出的选择的语法非常易读。但是,这只适用于sql查询,而不适用于其他代码。我喜欢基于Windows的系统的 Notepad ++ ,以及here are some instructions for Notepad++。有几个人提到了unix / shell环境的 VIM

答案 9 :(得分:0)

对于 gVim (Windows),我定义了这个函数和一个方便的映射:

function! HlCopy() range
    exec a:firstline.','.a:lastline.'TOhtml'
    normal yG
    q!
    !start /min powershell "Get-Clipboard | Set-Clipboard -AsHtml"
    redraw
endfun
vmap Y :call HlCopy()<CR>

如何使用?

  • 使用 v 或使用鼠标左键选择文本进入可视模式。然后使用 y 将当前选择复制为原始文本或使用 Y 突出显示的文本。
  • 直接通过范围(无视觉模式)::1,3call HlCopy()

如果你和我一样懒惰,你可以在该函数中为 TOhtml 设置额外的选项。我的 vimrc 中有这个:

function! HlCopy() range
    let g:html_font = "Consolas"
    let g:html_number_lines = 0
    exec a:firstline.','.a:lastline.'TOhtml'
    normal yG
    q!
    !start /min powershell "Get-Clipboard | Set-Clipboard -AsHtml"
    redraw
endfun
vmap Y :call HlCopy()<CR>