File size: 1,890 Bytes
aa8b9d7 75d3b58 aa8b9d7 75d3b58 aa8b9d7 75d3b58 aa8b9d7 75d3b58 aa8b9d7 75d3b58 aa8b9d7 75d3b58 aa8b9d7 75d3b58 aa8b9d7 75d3b58 aa8b9d7 75d3b58 aa8b9d7 75d3b58 aa8b9d7 75d3b58 aa8b9d7 75d3b58 aa8b9d7 75d3b58 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 |
# π LaTeX to MDX Integration
This space allows the automatic conversion of any latex content to MDX for Astro, with real time monitoring!
## π Usage
## π LaTeX Structure to follow
Place your LaTeX sources as such :
```
app/scripts/latex-to-mdx/input/
βββ main.tex # Main doc
βββ main.bib # Bibliography
βββ sections/ # Sections or chapters
β βββ 01_introduction.tex
β βββ 02_methods.tex
β βββ ...
βββ figures/ # Images
βββ ... # Other LaTeX files
```
Now you can start the development server!
### Development mode with LaTeX Watch
```bash
npm run dev:with-latex
```
This commands :
1. β
Converts LaTeX β MDX
2. π Monitors the contents of `scripts/latex-to-mdx/input/` for any change
3. π Launches an Astro server on http://localhost:4321
4. π Regerenates `article.mdx` automatically when you do changes to the latex files!
### Production Mode
```bash
npm run build
```
### Other individual scripts
```bash
# Converts LaTeX β MDX once
npm run latex:convert
# Monitors the LaTeX repo only
npm run latex:watch
# Runs Astro without looking on latex (to edit the markdown files directly for example)
npm run dev
```
## βοΈ Features
- π **Automated conversion** : 2 seconds per conversion
- π **Monitoring** : Of everything in `input/`
- π **Hot reload** : Astro reloads after each conversion
- π **Colored logs** : To differenciate LaTeX/Astro
## π³ Docker
Everything runs in a Dockerfile, which includes the automatic installation of pandox, the conversion of Latex to MDX before the build, and supports the latex env!
## π οΈ Debugging
If the conversion fails:
1. Check the LaTeX logs (blue ones)
2. Check if Pandoc is installed properly
3. Check the manual conversion with `npm run latex:convert` |