Is it possible to copy code from Visual Studio and paste formatted code to OneNote?

Viewed 43003

Is there a way to copy code from visual studio (C#) and paste it into OneNote, without losing the formatting?

I was able to do this, but only if I copy from VS, paste to Word, copy from Word, and then paste to OneNote.

13 Answers

This is an option that seems to be disabled by default.

To enable (in VS 2019):

  1. Go to Tools -> Options

  2. type copy in the search box

  3. Under Text Editor -> Advanced...

  4. Check Copy rich text on copy/cut

Visual Studio Options Example

Top copy as formatted

Once the feature is enabled, depending on the target, this may be a two-step process. If, after copying and pasting code, it still appears as unformatted (e.g. if pasting into a web browser), use the approach suggested by marcus, by first pasting into wordpad.exe (start -> run -> type wordpad), then copying the text from within Wordpad again, and pasting into the target application/browser.

You have hit the nail on the head on the process. The application that you are pasting to must be able to accept the code with the formatting properly. MS Word is one of the few that handles this properly, therefore, going from VS -> Word -> OneNote will work. But VS -> OneNote doesn't work.

I just figured out a workaround to do this without any plugins.

  1. Insert a table to OneNote with only one cell
  2. Change the shading color of this table to vscode background color, you can use the color picker to pick the bg color of vscode
  3. Choose the code block you want to copy and convert the indent to tab(otherwise the indent will be lost when pasting) reference: https://github.com/Microsoft/vscode/issues/35954
  4. Copy the selected code and paste it into the cell
  5. Change back the code indent of source code to space.

PS: I have tried in macOS it works fine

screenshot image

I just view the code on the website of my repository of choice and copy from there. Then paste to OneNote with keep source formatting.

Related