Giter VIP home page Giter VIP logo

onenote-md-exporter's Introduction

OneNote Md Exporter is a console application running on Windows that exports your OneNote notebooks in different markdown formats.

This tool is usefull to :

  • evaluate or migrate to an alternative Knowledge Management Software like Joplin or other software based on Markdown format
  • backup your OneNote Notebooks in an interoperable and open file format

Requirements

  • Windows >=10
  • OneNote >= 2013, OneNote for Windows (from the Windows store) is not supported
  • Word >= 2013

Getting started

  1. Download the last release of OneNoteMdExporter from the Releases page
  2. Extract the content of the Zip archive
  3. Launch OneNote and be sure that notebooks to export are loaded
  4. Export your notebooks :
    • Start OneNoteMdExporter.exe
    • Select the Notebook to export
    • Select the export format
    • [Optional] Edit advanced settings
    • Go take a coffee ☕
    • At the end of the export the export folder is open in Windows file explorer

Command line is supported, run OneNoteMdExporter.exe --help for instructions.

Export formats supported

Markdown

  • Sections and section groups are exported as a folder hierarchy containing pages :
    Notebook1
    - Section1
      - Section1.1
        - Page1.md
        - Page2.md
    - Section2
  • Settings
    • ProcessingOfPageHierarchy : page hierarchy as parent folder of md file (ParentPage\Child Page.md ; default value) or as md file prefix (ParentPage_ChildPage.md)
    • ResourceFolderLocation : images and file attachments can be stored in a single folder at the root of the export or in a folder next to each md file
    • AddFrontMatterHeader : add a YAML header containing page metadata at the beginning of each md file
      ---
      title: Page title
      updated: 2021-11-11 14:55:00Z
      created: 2021-11-11 14:54:43Z
      ---
      Page content
    • PanDocMarkdownFormat : choose the markdown syntax to use among those supported by pandoc. Use Github flavor by default.

Joplin Raw Directory

Features and limitations

Export format: Markdown Joplin
Hierarchy of sections ✅ Folder hierarchy ✅ Notbook hierarchy
Page ordering inside a section 🔴 Ordering based on md filename
Page hierarchy ✅ Page prefix or folder prefix


All formats :
Attachments 🟠 File of certain extensions are lost (wma, wmv, mpg, svg, mp3)
Image
Table
Font color and background color 🔴
Drawing 🟠 Flattened as image
Handwriting 🔴 Lost
Text tags (task, star...) 🔴 Lost
Password protected sections 🔴 Lost unless unlocked during export
Notebook internal link 🔴 onenote:// url

Technical characteristics

  • DotNet 6 self-contained console application
  • Export page as DocX and translate them in Markdown using PanDoc
  • Offline : no call to Microsoft cloud
  • Based on Office Interop APIs
  • Apply some post-processing based on Regex to correct formatting issues

Licence

Released under the GPL, version 3.

This software carries no warranty of any kind. Some data can be lost during the export process. I recommend to review your notes after export and keep a backup of your OneNote notebooks just in case.

Pandoc licence terms

OneNote Md Exporter uses PanDoc universal markup converter.

Pandoc is available at https://github.com/jgm/pandoc

Pandoc is released under the following licence terms, full licence details can be found on the pandoc site.

© 2006-2021 John MacFarlane ([email protected]). Released under the GPL, version 2 or greater. This software carries no warranty of any kind.

Build sources

Contribute

Bugs and feature requests can be reported under: https://github.com/alxnbl/onenote-md-exporter/issues.

You can contribute by adding an new feature or add translations. See this page for more details.

Support

I developed this tool on a voluntary basis, but if you like my work you can buy me a ☕.

onenote-md-exporter's People

Contributors

alezy80 avatar alxnbl avatar brlin-tw avatar dozenit avatar dreamflasher avatar gatesry avatar needs-coffee avatar tlich avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.