# Tangling Markdown (Literate Programming)

> How to tangle markdown in literate programming with a Python executable.

Source: https://curiouslychase.com/engineering/tangling-markdown-literate-programming/

I want to experiment with tangling my Markdown files into code and configuration files.

# Dependencies
I'm experimenting with the [md-tangle](https://pypi.org/project/md-tangle/) Python project.

## Setup `md-tangle`
First, I made sure I had `pip` installed, by [installing pip with Homebrew](https://curiouslychase.com/engineering/installing-pip-with-homebrew/).

Next, I installed `md-tangle` with `pip`:

```shell
 python3 -m pip install md-tangle
```

Next, I verified that `md-tangle` is in my `PATH` by running `which md-tangle` in the Terminal. If this was successful, it will show me a path to `md-tangle`.

# Usage
Now that I have `md-tangle` installed, I can create a new Markdown file in Obsidian. 

I'll create a directory in my vault called `42 - Dotfiles`, where all of my dotfile Markdown source will live. In that directory, I'll create my first file for my custom Obsidian CSS snippets, called [Obsidian Styles](https://curiouslychase.com/posts/obsidian-styles/).

Once I've done that, I start writing out my documentation for my styles. I write the documentation and then I write a code snippet in a code fence.
