45fan.com - 路饭网

搜索: 您的位置主页 > 电脑频道 > 电脑教程 > 阅读资讯:如何在Word中设置代码高亮?

如何在Word中设置代码高亮?

2015-12-04 06:55:55 来源:www.45fan.com 【

如何在Word中设置代码高亮?

 

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

如何在Word中设置代码高亮?

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

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

如何在Word中设置代码高亮?

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

如何在Word中设置代码高亮?

4、新建宏,步骤如图

如何在Word中设置代码高亮?

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

如何在Word中设置代码高亮?

复制内容到剪贴板
  1. 'scripttohighlightcodeIndocument
  2.  
  3. PrivateFunctionisKeyword(w)AsBoolean
  4.  
  5. DimkeysAsNewCollection
  6.  
  7. Withkeys
  8.  
  9. .Add"if":.Add"else":.Add"elseif":.Add"case":.Add"switch":.Add"break"
  10.  
  11. .Add"for":.Add"continue":.Add"do":.Add"while":.Add"foreach":.Add"echo"
  12.  
  13. .Add"define":.Add"array":.Add"NULL":.Add"function":.Add"include":.Add"return"
  14.  
  15. .Add"global":.Add"as":.Add"die":.Add"header":.Add"this":.Add"empty"
  16.  
  17. .Add"isset":.Add"mysql_fetch_assoc":.Add"class":.Add"style"
  18.  
  19. .Add"name":.Add"value":.Add"type":.Add"width":.Add"_POST":.Add"_GET"
  20.  
  21. EndWith
  22.  
  23. isKeyword=isSpecial(w,keys)
  24.  
  25. EndFunction
  26.  
  27. PrivateFunctionisSpecial(ByValwAsString,ByRefcolAsCollection)AsBoolean
  28.  
  29. ForEachiIncol
  30.  
  31. Ifw=iThen
  32.  
  33. isSpecial=True
  34.  
  35. ExitFunction
  36.  
  37. EndIf
  38.  
  39. Next
  40.  
  41. isspeical=False
  42.  
  43. EndFunction
  44.  
  45. PrivateFunctionisOperator(w)AsBoolean
  46.  
  47. DimopsAsNewCollection
  48.  
  49. Withops
  50.  
  51. .Add"+":.Add"-":.Add"*":.Add"/":.Add"&":.Add"^":.Add";"
  52.  
  53. .Add"%":.Add"#":.Add"!":.Add":":.Add",":.Add"."
  54.  
  55. .Add"||":.Add"&&":.Add"|":.Add"=":.Add"++":.Add"--"
  56.  
  57. .Add"'":.Add""""
  58.  
  59. EndWith
  60.  
  61. isOperator=isSpecial(w,ops)
  62.  
  63. EndFunction
  64.  
  65. PrivateFunctionisType(ByValwAsString)AsBoolean
  66.  
  67. DimtypesAsNewCollection
  68.  
  69. Withtypes
  70.  
  71. .Add"SELECT":.Add"FROM":.Add"WHERE":.Add"INSERT":.Add"INTO":.Add"VALUES":.Add"ORDER"
  72.  
  73. .Add"BY":.Add"LIMIT":.Add"ASC":.Add"DESC":.Add"UPDATE":.Add"DELETE":.Add"COUNT"
  74.  
  75. .Add"html":.Add"head":.Add"title":.Add"body":.Add"p":.Add"h1":.Add"h2"
  76.  
  77. .Add"h3":.Add"center":.Add"ul":.Add"ol":.Add"li":.Add"a"
  78.  
  79. .Add"input":.Add"form":.Add"b"
  80.  
  81. EndWith
  82.  
  83. isType=isSpecial(w,types)
  84.  
  85. EndFunction
  86.  
  87. SubSyntaxHighlight()
  88.  
  89. DimwordCountAsInteger
  90.  
  91. DimdAsInteger
  92.  
  93. 'setthestyleofselection
  94.  
  95. Selection.Style="ccode"
  96.  
  97. d=0
  98.  
  99. wordCount=Selection.Words.Count
  100.  
  101. Selection.StartOfwdWord
  102.  
  103. Whiled<wordCount
  104.  
  105. d=d+Selection.MoveRight(wdWord,1,wdExtend)
  106.  
  107. w=Selection.Text
  108.  
  109. IfisKeyword(Trim(w))=TrueThen
  110.  
  111. Selection.Font.Color=wdColorBlue
  112.  
  113. ElseIfisType(Trim(w))=TrueThen
  114.  
  115. Selection.Font.Color=wdColorDarkRed
  116.  
  117. Selection.Font.Bold=True
  118.  
  119. ElseIfisOperator(Trim(w))=TrueThen
  120.  
  121. Selection.Font.Color=wdColorBrown
  122.  
  123. ElseIfTrim(w)="//"Then
  124.  
  125. 'lInecomment
  126.  
  127. Selection.MoveEndwdLine,1
  128.  
  129. commentWords=Selection.Words.Count
  130.  
  131. d=d+commentWords
  132.  
  133. Selection.Font.Color=wdColorGreen
  134.  
  135. Selection.MoveStartwdWord,commentWords
  136.  
  137. ElseIfTrim(w)="/*"Then
  138.  
  139. 'blockcomment
  140.  
  141. WhileSelection.Characters.Last<>"/"
  142.  
  143. Selection.MoveLeftwdCharacter,1,wdExtend
  144.  
  145. Selection.MoveEndUntil("*")
  146.  
  147. Selection.MoveRightwdCharacter,2,wdExtend
  148.  
  149. Wend
  150.  
  151. commentWords=Selection.Words.Count
  152.  
  153. d=d+commentWords
  154.  
  155. Selection.Font.Color=wdColorGreen
  156.  
  157. Selection.MoveStartwdWord,commentWords
  158.  
  159. EndIf
  160.  
  161. 'movethestartofselectiontonextword
  162.  
  163. Selection.MoveStartwdWord
  164.  
  165. Wend
  166.  
  167. 'prepareForsetlInenumber
  168.  
  169. Selection.MoveLeftwdWord,wordCount,wdExtend
  170.  
  171. SetLIneNumber
  172.  
  173. EndSub
  174.  
  175. PrivateSubSetLIneNumber()
  176.  
  177. DimlinesAsInteger
  178.  
  179. lines=Selection.Paragraphs.Count
  180.  
  181. Selection.StartOfwdParagraph
  182.  
  183. Forl=1Tolines
  184.  
  185. lIneNum=l&""
  186.  
  187. Ifl<10Then
  188.  
  189. lIneNum=lIneNum&""
  190.  
  191. EndIf
  192.  
  193. Selection.Text=lIneNum
  194.  
  195. Selection.Font.Bold=False
  196.  
  197. Selection.Font.Color=wdColorAutomatic
  198.  
  199. p=Selection.MoveDown(wdLine,1,wdMove)
  200.  
  201. Selection.StartOfwdLine
  202.  
  203. Next
  204.  
  205. EndSub
  206.  

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

如何在Word中设置代码高亮?

注意事项:处理前一定要对原文章进行备份,以免前功尽弃。处理较长代码时需要一定时间,请耐心等待。

 

本文地址:http://www.45fan.com/dnjc/30479.html
Tags: word 代码 高亮
编辑:路饭网
关于我们 | 联系我们 | 友情链接 | 网站地图 | Sitemap | App | 返回顶部