I have a lot of old Power Point slide decks that I want to reuse in current presentations. By now however, I learned prepare all my presentation stuff in either Markdown or reStructuredText: far easier to publish and put under version control.
After searching, I could only find one tool that is still maintained doing a decent job doing a PowerPoint to Markdown conversion: [Wayback/Archive] GitHub – ssine/pptx2md: a pptx to markdown converter. The tools which works great, in big part of PowerPoint content being highly structured with styles like title, subtitle and various heading levels and content types.
The thing it does not document is the prerequisites, which are these:
- a
venv(which, despite having used Python quite often, but not proficient in it, still makes me nervous: one forgotten step and you pip everything in your global environment).This links helps me every time [Wayback/Archive] Install packages in a virtual environment using pip and venv – Python Packaging User Guide. From it, I created this little table:
Steps for setting up and using a Python virtual environment Step *n*x/MacOS Windows Comment 1. python3 -m venv .venvpy -m venv .venvOnly needed once 2. source .venv/bin/activate.venv\Scripts\activateSwitch to virtual environment 3. which pythonwhere pythonCheck if python is used from the virtual environment (should result in
.venv/bin/pythonon *n*x/MacOS or
.venv\Scripts\pythonon Windows)4. which pipwhere pipCheck if pip is used from the virtual environment (should result in
.venv/bin/pipon *n*x/MacOS or
.venv\Scripts\pipon Windows)5. ./.venv/bin/pptx2md</precode
.venv\bin\pptx2mdForce a module which didn’t add itself to the path when installed via pip 6. deactivatedeactivateLeave the virtual environment - missed during
pip install pptx2md(in order I discovered them):- [Wayback/Archive] numpy · PyPI: used by [Wayback/Archive] pptx2md/pptx2md/parser.py at master · ssine/pptx2md · GitHub
pip install numpy
- [Wayback/Archive] matplotlib · PyPI: used by [Wayback/Archive] pptx2md/pptx2md/columns.py at master · ssine/pptx2md · GitHub
pip install matplotlib
- [Wayback/Archive] scipy · PyPI: used by [Wayback/Archive] pptx2md/pptx2md/utils_optim.py at master · ssine/pptx2md · GitHub
pip install scipy
- [Wayback/Archive] Wand · PyPI: used by [Wayback/Archive] pptx2md/pptx2md/image.py at master · ssine/pptx2md · GitHub and also by [Wayback/Archive] pptx2md/pptx2md/parser.py at master · ssine/pptx2md · GitHub
pip install wand
- Putting the tool in the path; I had to execute it using
./.venv/bin/pptx2md
- [Wayback/Archive] numpy · PyPI: used by [Wayback/Archive] pptx2md/pptx2md/parser.py at master · ssine/pptx2md · GitHub





