Write scientific articles in Markdown and convert them to journal-ready LaTeX/PDF (Copernicus, Science, AMS, AGU, Nature, Elsevier, PNAS, arXiv, ...)
Project description
texmark
Write scientific articles in Markdown and convert them to journal-ready LaTeX and PDF.
- Preview while writing. Markdown renders in most editors (VS Code, JetBrains, vim) and on GitHub — equations included — so you can read a draft without running a LaTeX build.
- Lightweight, portable text. Markdown uses much less markup than LaTeX, so the source stays readable and works with ordinary tools: edit it on GitHub, version it with Git (branches, diffs, pull requests), or paste it into a Google Doc to draft interactively with collaborators who prefer that, then bring it back.
- One source, several journal templates. The same Markdown compiles to any of the supported LaTeX templates; changing the target journal means editing one field in the YAML header rather than reformatting the text.
- LaTeX output is kept. The generated
.texsits next to the PDF, so you can stop using texmark at any point and continue in LaTeX directly — usually necessary for the final journal-specific adjustments anyway.
📖 Documentation
Full documentation lives at https://perrette.github.io/texmark/:
- Installation (incl. external dependencies)
- Quickstart
- Journal templates
- YAML reference
- Guides: equations, multi-file projects, custom preamble, encoding, figures, build backends, live preview, custom LaTeX templates
Installation
pip install texmark
texmark also needs pandoc and a LaTeX distribution (pdflatex,
bibtex, latexmk). See the
installation page for the
per-platform details.
Quickstart
See example.md for a sample markdown file with yaml metadata in the header.
texmark example.md # markdown → tex
texmark example.md --pdf # markdown → pdf
For another journal, change the journal -> template field in the yaml
metadata, or pass -j for a quick test:
texmark example.md --pdf -j science -o build/example-science.pdf --tex build/example-science.tex
See the quickstart and journal templates pages for more.
From the same author
A few other open-source tools I maintain.
Scientific writing & data
- papers — command-line BibTeX bibliography and PDF library manager.
- datamanifest — declarative, reproducible dataset management. (See also the datamanifest.toml format spec and the DataManifest.jl Julia port.)
Speech to Text (dictate) and Text to Speech (read-aloud) tools
Acknowledgements
Parts of this project — notably extending the set of supported journals — were developed with AI assistance.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file texmark-0.15.1.tar.gz.
File metadata
- Download URL: texmark-0.15.1.tar.gz
- Upload date:
- Size: 492.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
270e67520849eb6fa30bc00745176936016865e776eb0c77df99515246a71f50
|
|
| MD5 |
b9ffa847e4346233072918d29ec653df
|
|
| BLAKE2b-256 |
0f9d3961fe8eeda3c252888a0ca9bcf3182c321135aaa505f9a89559ba46e80c
|
Provenance
The following attestation bundles were made for texmark-0.15.1.tar.gz:
Publisher:
tests.yml on perrette/texmark
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
texmark-0.15.1.tar.gz -
Subject digest:
270e67520849eb6fa30bc00745176936016865e776eb0c77df99515246a71f50 - Sigstore transparency entry: 2035476036
- Sigstore integration time:
-
Permalink:
perrette/texmark@4f097c5bdca6d9742543d0bd55a091d752494d11 -
Branch / Tag:
refs/tags/v0.15.1 - Owner: https://github.com/perrette
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
tests.yml@4f097c5bdca6d9742543d0bd55a091d752494d11 -
Trigger Event:
push
-
Statement type:
File details
Details for the file texmark-0.15.1-py3-none-any.whl.
File metadata
- Download URL: texmark-0.15.1-py3-none-any.whl
- Upload date:
- Size: 446.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
343b22d92ec86b9477494891302477cc8d3f40b9b929afd89c6f4ceaeb1ede48
|
|
| MD5 |
9d63db682c82f972a765184459a0b278
|
|
| BLAKE2b-256 |
c0df50537f090a3ebf2bdd318c1c90296a493236646c583f085d170a1a206ec4
|
Provenance
The following attestation bundles were made for texmark-0.15.1-py3-none-any.whl:
Publisher:
tests.yml on perrette/texmark
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
texmark-0.15.1-py3-none-any.whl -
Subject digest:
343b22d92ec86b9477494891302477cc8d3f40b9b929afd89c6f4ceaeb1ede48 - Sigstore transparency entry: 2035476446
- Sigstore integration time:
-
Permalink:
perrette/texmark@4f097c5bdca6d9742543d0bd55a091d752494d11 -
Branch / Tag:
refs/tags/v0.15.1 - Owner: https://github.com/perrette
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
tests.yml@4f097c5bdca6d9742543d0bd55a091d752494d11 -
Trigger Event:
push
-
Statement type: