word中插入漂亮的代码

有时写文档时需要将代码粘贴到word中,但直接粘贴到word中的代码虽能保持换行与缩进等格式,但在一般代码编辑工具中的关键字高亮功能却无法实现。该方法无需任何插件,只需要制作一个宏即可实现类似sublime的显示效果

操作方法

  • 01

    准备:首先完成当前所有内容,建议把代码放入单独的文本框中,方便处理,也有较好的视觉效果。记得一定要拷贝一份副本!因为很可能因为代码量比较多,处理宏的时候卡死,只能强制退出WORD了。

  • 02

    当前文档新定义一个样式,命名为"code",专门用来对代码进行格式化。由于是代码,所以推荐中文使用黑体(注释等),而英文使用等宽字体(courier new)。步骤如图。

  • 03

    选中代码,单击样式库 ccode,将代码应用该样式

  • 04

    新建宏,步骤如图

  • 05

    将VBA代码(在下一步中)拷贝进去,保存后关闭 (有VBA或相关程序经验者可根据自己需要进行相关修改,如关键词和高亮颜色等)

  • 06

    'script to high light code In document Private Function isKeyword(w) As Boolean Dim keys As New Collection With keys .Add "if": .Add "else": .Add "elseif": .Add "case": .Add "switch": .Add "break" .Add "for": .Add "continue": .Add "do": .Add "while": .Add "foreach": .Add "echo" .Add "define": .Add "array": .Add "NULL": .Add "function": .Add "include": .Add "return" .Add "global": .Add "as": .Add "die": .Add "header": .Add "this": .Add "empty" .Add "isset": .Add "mysql_fetch_assoc": .Add "class": .Add "style" .Add "name": .Add "value": .Add "type": .Add "width": .Add "_POST": .Add "_GET" End With isKeyword = isSpecial(w, keys) End Function Private Function isSpecial(ByVal w As String, ByRef col As Collection) As Boolean For Each i In col If w = i Then isSpecial = True Exit Function End If Next isspeical = False End Function Private Function isOperator(w) As Boolean Dim ops As New Collection With ops .Add "+": .Add "-": .Add "*": .Add "/": .Add "&": .Add "^": .Add ";" .Add "%": .Add "#": .Add "!": .Add ":": .Add ",": .Add "." .Add "||": .Add "&&": .Add "|": .Add "=": .Add "++": .Add "--" .Add "'": .Add """" End With isOperator = isSpecial(w, ops) End Function Private Function isType(ByVal w As String) As Boolean Dim types As New Collection With types .Add "SELECT": .Add "FROM": .Add "WHERE": .Add "INSERT": .Add "INTO": .Add "VALUES": .Add "ORDER" .Add "BY": .Add "LIMIT": .Add "ASC": .Add "DESC": .Add "UPDATE": .Add "DELETE": .Add "COUNT" .Add "html": .Add "head": .Add "title": .Add "body": .Add "p": .Add "h1": .Add " h2" .Add "h3": .Add "center": .Add "ul": .Add "ol": .Add "li": .Add "a" .Add "input": .Add "form": .Add "b" End With isType = isSpecial(w, types) End Function Sub SyntaxHighlight() Dim wordCount As Integer Dim d As Integer ' set the style of selection Selection.Style = "ccode" d = 0 wordCount = Selection.Words.Count Selection.StartOf wdWord While d < wordCount d = d + Selection.MoveRight(wdWord, 1, wdExtend) w = Selection.Text If isKeyword(Trim(w)) = True Then Selection.Font.Color = wdColorBlue ElseIf isType(Trim(w)) = True Then Selection.Font.Color = wdColorDarkRed Selection.Font.Bold = True ElseIf isOperator(Trim(w)) = True Then Selection.Font.Color = wdColorBrown ElseIf Trim(w) = "//" Then 'lIne comment Selection.MoveEnd wdLine, 1 commentWords = Selection.Words.Count d = d + commentWords Selection.Font.Color = wdColorGreen Selection.MoveStart wdWord, commentWords ElseIf Trim(w) = "/*" Then 'block comment While Selection.Characters.Last <> "/" Selection.MoveLeft wdCharacter, 1, wdExtend Selection.MoveEndUntil ("*") Selection.MoveRight wdCharacter, 2, wdExtend Wend commentWords = Selection.Words.Count d = d + commentWords Selection.Font.Color = wdColorGreen Selection.MoveStart wdWord, commentWords End If 'move the start of selection to next word Selection.MoveStart wdWord Wend ' prepare For set lIne number Selection.MoveLeft wdWord, wordCount, wdExtend SetLIneNumber End Sub Private Sub SetLIneNumber() Dim lines As Integer lines = Selection.Paragraphs.Count Selection.StartOf wdParagraph For l = 1 To lines lIneNum = l & " " If l < 10 Then lIneNum = lIneNum & " " End If Selection.Text = lIneNum Selection.Font.Bold = False Selection.Font.Color = wdColorAutomatic p = Selection.MoveDown(wdLine, 1, wdMove) Selection.StartOf wdLine Next End Sub

  • 07

    选定代码文本,然后执行highlight脚本: “视图”- “宏”- 选中“SyntaxHighlight”-“运行”,然后执行就可以了。处理较长代码时需要一定时间,请耐心等待。

(0)

相关推荐

  • 怎样在word中插入漂亮别致的页码

    很多时候我们都在用word制作文档,无论是作业还是发送给领导的文件,想不想让自己的文档有一个小小的亮点,让别人记住你的文章呢,下面,我教大家怎么样插入一款漂亮别致的页码! 步骤/方法 01 打开一个需 ...

  • 如何在WORD中插入背景图片?

    WORD是大家经常使用的办公软件,它有编辑文字,制作表格,插入图片等多种功能.今天教大家如何在WORD中插入漂亮的背景图片! 操作方法 01 首先打开电脑,找到安装的WORD.一般在开始目录里面. 0 ...

  • 在Word中制作漂亮古文风的古信笺

    在电脑排版这种无聊的文字形式天天充斥着生活,偶而看到一个古文风的东东往往会给大家眼前一亮的感觉.这篇教程主要是向我们的朋友分享在Word中制作漂亮古文风的古信笺方法,喜欢的朋友快快来学习吧!. 方法/ ...

  • word中插入图形的方法

    一份完美的设计文件少不了一些漂亮的图案,一个方案文件也少不了图示的引导,那么如何在word中插入自己想要的图形或者图案呢? 下面就跟大家来介绍一下word中如何插入图形或者图案的具体步骤. 操作方法 ...

  • 如何在Word中插入符号

    想要编辑一篇好的文档,符号当然是必不可少的了,但是有些符号在输入键盘上根本找不出来,这时候该怎么办呢?下面就由小编来教教大家如何在Word中插入符号. 操作方法 01 找到自己想要编辑的文档,双击打开 ...

  • 如何在Word中插入不同页眉的图文步骤

     很多朋友在Word文档中插入页眉,但是无论有多少页文档,页眉都是在同一个地方,如何在Word中插入不同的页眉呢  有的朋友说:太简单了,不就是打开“文件/页面设置”,再单击“版式”选项卡,勾选其中的 ...

  • word中插入随excel文件更新的excel表格

    如何在word中插入excel表格,并且表格要随着excel文件内容的跟新而更新,我今天简单测试了一下,很容易完成。现在说一下步骤: 在首先之前,插入一句看似没用,实际上又很重要的话:我的office ...

  • 如何在Word2007中插入漂亮别致的页码

    blue1000今天跟大家分享的是如何在word2007中插入漂亮别致的页码。又是毕业的季节了,有要有一帮学生专属于制作自己的个性简历了。那么你的个性简历里是否包含漂亮别致的页码呢?就这么一个页码的设 ...

  • 在word中插入图片并自由放置在任意位置方法图解

    很多人都懂得如何在word文档中插入图片。但是很多时候我们需要这些图片不受光标和文字的限制随意放在文档的任何地方,这时候就需要我们对图片进行一些设置。下面小编就为大家介绍在word中插入图片并自由放置 ...