How do I easily highlight the syntax of PHP code in Word?

32

13

How do I easily write and syntax-highlighted PHP code (or any others programming language) in a Word 2009 document?

Christian Studer

Posted 2009-09-11T10:00:42.173

Reputation: 454

3why would you want to? – RCIX – 2009-09-11T10:02:37.333

I would just use Notepad++. It's great and has syntax highlighting for hundreds of languages – D'Arvit – 2009-09-11T10:32:40.673

2@RCIX: I'm writing a concept document which will feature only code snippets, but no actual code. – Christian Studer – 2009-09-11T11:51:17.753

Answers

52

You can use Notepad++ to accomplish this in three ways. Just so you know, Notepad++ is a more advanced version of Notepad, which supports syntax highlighting of different code files "out of the box" - PHP included!

Download & install it, fire it up, and load up your PHP file. You should automatically see it beautifully coloured (if not, because the file extension is something other than .php, go to Language -> PHP or Language -> P -> PHP).

If you need to change any of the colours, you can easily do so - just go to Settings -> Styler Configurator. From that menu, you can change the various highlighting and font options, to suit your needs - although the default usually suffices for most.

Then, go to Plugins -> NppExport. From there, you have three options you can consider:

  • Export to RTF
  • Export to HTML
  • Copy all formats to clipboard

Start with the last one - "Copy all formats to clipboard" - which will copy the entire file with the highlighted syntax to the clipboard. Once you click it, then open Microsoft Word, and just hit paste! You should see the beautifully syntax-highlighted code. If something goes wrong, then you can try one of the other options (export to RTF/HTML), although I've never had a problem with the clipboard method.

Breakthrough

Posted 2009-09-11T10:00:42.173

Reputation: 32 927

3Nice. One additional tip (half related): You can then highlight the pasted text, then on the Review tab of word, select Language, Set Proofing Language. Tick 'Do not check spelling or grammar'. Now you won't get the red underlines JUST for the pasted text. – Ray – 2015-03-23T02:15:00.727

Notice that if you have the option to create links enabled (Notepad++ now created a clickable link when something starts with http:// or similar), NppExport will throw an Unknown Exception. – Ismael Miguel – 2015-07-23T14:49:12.790

In Notepad++ v7.7.1, NppExport maintains font name, size, and bold, but not font color. Works fine in 7.6.x. See: NppExport plugin - 'copy HTML to clipboard' does not work anymore

– Eliahu Aaron – 2019-07-11T15:03:09.490

2Thanks, I already had Notepad++ installed, but didn't knew about the NppExport-plugin. I'll go with your solution. – Christian Studer – 2009-09-11T11:52:37.003

Yeah, it's quite useful for copying & pasting to Word to print documents out... I love it. :) – Breakthrough – 2009-09-11T11:53:51.243

This is why I love SU. I had no idea you could do this! – Josh Hunt – 2009-09-11T12:23:21.193

Absolute perfection! – dcousineau – 2009-10-04T22:20:39.770

10

Send your code to an online syntax highlighting website, this one for example (select the langage yourself, Autodetect doesn't work very well). There is a list of other online syntax highlighting site here.

Copy the highlighted code and paste it into Word.

Snark

Posted 2009-09-11T10:00:42.173

Reputation: 30 147

I couldn't get this working from Firefox to Word 2013 for some reason. IE worked fine. – David – 2015-04-06T19:48:47.243

Note: you have to use IE for this. Opera doesn't work, but I don't know about FF/Safari/Chrome. – Vilx- – 2009-09-11T10:24:24.823

2Works fine with Chrome and Firefox. – Snark – 2009-09-11T10:56:50.127

3

You could install the .PHPS file type into Apache then copy the output from your browser into Word.

in your http.conf

AddType application/x-httpd-php-source .phps 

Greg B

Posted 2009-09-11T10:00:42.173

Reputation: 998

1Creative, but not exactly easy (Requires a webserver...). ;-) – Christian Studer – 2009-09-11T11:53:17.577

Fair point :) – Greg B – 2009-09-11T14:21:16.210

3

I found this question looking for the same thing for Outlook on Mac OS, but Notepad++ doesn't exist for OSX and I use Sublime Text (which has the advantage of being cross-platform).

For this there's a plugin called SublimeHighlight.

Assuming you use Sublime Package Control, the steps to install SublimeHighlight are:

  1. Press cmd shift P
  2. Run "Package Control: Add channel"
  3. Paste the github url: https://github.com/n1k0/SublimeHighlight
  4. Press cmd shift P again, and run "Package Control: Install Package"
  5. Install the "Highlight" Package, and restart Sublime Text.

Then to copy text you can press cmd shift P, and run "SublimeHighlight: copy to clipboard as HTML" (or RTF). These commands can also be assigned keyboard shortcuts.

Note that on Windows or Linux the shortcut key for the Command Palette is different, but it can be accessed by going to Tools > Command Palette.

Alex Forbes

Posted 2009-09-11T10:00:42.173

Reputation: 978

2

Syntax highlighting many languages in Word documents: http://www.planetb.ca/2008/11/syntax-highlight-code-in-word-documents/

Jamie

Posted 2009-09-11T10:00:42.173

Reputation: 21

0

You can using Plugin Syntax Highlight in Ms.Word https://store.office.com/syntax-highlighter-WA104315019.aspx?assetid=WA104315019 . i follow that step and work

Output

Yanuar Nurcahyo

Posted 2009-09-11T10:00:42.173

Reputation: 101

Welcome to Super User. Please realize you have posted an answer to a question asked more than 5 years ago, and which already has an accepted answer. Therefore, you may not receive acknowledgement. – CharlieRB – 2016-02-09T19:49:15.343

0

Without manually creating character styles for each element of the language and applying them manually, you can't.

Your best bet is to take a screenshot in a editor that does do syntax highlighting and insert that into your document, or copy-and-paste the already colourful code from another program (perhaps a paste bin) and paste it into Word and hope that the colour formatting gets preserved.

Josh Hunt

Posted 2009-09-11T10:00:42.173

Reputation: 20 095

Some browsers carry over formatting and colour when you copy & paste. ;) – Breakthrough – 2009-09-11T10:56:45.383

-1

You may want to consider abandoning Word altogether and use AsciiDoc instead. AsciiDoc is both a simple markup language and a processor to render documents into other formats. It supports HTML and DocBook. DocBook format can be converted to other formats (e.g. PDF, ePub) using additional tools (e.g. a2x).

By default, it uses GNU source-highlight to color code source code.

Craig

Posted 2009-09-11T10:00:42.173

Reputation: 785