9

我经常通过我的前景向同事和合作伙伴发送小的代码片段和 xml 片段。在我将它们粘贴到电子邮件中之前,有没有人有一个好主意或工具可以用来突出显示我的粘贴语法。

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

编辑更多信息:

我从 VMWare 虚拟机中的窗口粘贴,它可能是 eclipse、xmlspy、日志文件和其他程序

更多信息:

我已经看到这个链接如何从 Vim 中做到这一点。不幸的是,它很少来自 vim im 复制代码,而且我的电子邮件机器没有任何 vim。vmware 机器有 gvim,但我希望有一种更简单的方法,可以粘贴到 vim,保存到文件,在 internetexplorer 中打开,然后复制/粘贴

4

10 回答 10

5

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

  1. 油灰
  2. 访问某些 Unix 服务器(使用 vim)

在腻子选项中,在窗口→选择下,打开复选框

Paste in to clipboard in RTF as well as plain text.

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

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

于 2010-02-24T16:04:11.087 回答
4

5 年太晚了,对不起,但我有一个比公认的答案更简单的解决方案。

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

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

于 2014-09-05T13:49:04.860 回答
2

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

于 2008-10-22T14:05:21.407 回答
2

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

于 2011-12-15T20:39:07.613 回答
1

如果您只想要加载项,那就是.

如果您想知道它是如何完成的,这里有一篇关于如何编写 Add-In 的文章

于 2008-10-22T14:03:52.300 回答
1

这个链接把我带到了SciTE

看起来SciTE具有 Copy to RTF 功能:

赛特

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

也许是一个带有语法突出显示的粘贴站点?

于 2008-10-22T14:33:47.073 回答
1

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

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

于 2010-05-28T17:57:37.203 回答
0

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

于 2008-10-22T14:07:31.323 回答
0

HeidiSQL为 sql 查询执行此操作,并且他们所做的语法高亮选择非常易读。但是,这仅适用于 sql 查询,不适用于其他代码。我喜欢基于 Windows 的系统的Notepad++ ,这里有一些关于 Notepad++ 的说明。有几个人提到了用于 unix/shell 环境的VIM 。

于 2013-06-27T17:16:52.253 回答
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>
于 2021-01-30T13:45:52.810 回答