https://github.com/sergei-mironov/litrepl
Litrepl is a command-line tool and Vim plugin for evaluating code sections within Markdown or LaTeX documents.
https://github.com/sergei-mironov/litrepl
latex linux literate-programming markdown python repl vim vim-plugin
Last synced: 10 months ago
JSON representation
Litrepl is a command-line tool and Vim plugin for evaluating code sections within Markdown or LaTeX documents.
- Host: GitHub
- URL: https://github.com/sergei-mironov/litrepl
- Owner: sergei-mironov
- License: bsd-3-clause
- Created: 2022-08-13T22:33:25.000Z (almost 4 years ago)
- Default Branch: main
- Last Pushed: 2025-08-19T19:36:21.000Z (10 months ago)
- Last Synced: 2025-08-19T21:24:10.099Z (10 months ago)
- Topics: latex, linux, literate-programming, markdown, python, repl, vim, vim-plugin
- Language: Python
- Homepage:
- Size: 4.39 MB
- Stars: 3
- Watchers: 3
- Forks: 0
- Open Issues: 19
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE.txt
Awesome Lists containing this project
README
⌨️ LitRepl ⌨️
[Changelog](./CHANGELOG.md) | [Installation](https://sergei-mironov.github.io/litrepl/installation) | [Usage](https://sergei-mironov.github.io/litrepl/usage/general-concepts/) | [Gallery](#-gallery)
[](./docs/coverage.md)
Litrepl is acommand-line processor for *Markdown* or *LaTeX* documents with
**literate programming** code sections. Instructed by its arguments, it
evaluates and updates sections via background interpreters. Interpreters can
stay active for a **read-eval-paste-loop** style.

_Notes:_
* _[literate programming](https://en.wikipedia.org/wiki/Literate_programming)_
* _[read-eval-print-loop coding](https://en.wikipedia.org/wiki/Read%E2%80%93eval%E2%80%93print_loop)_
Preprint: (2025, Sergei Mironov)
Litrepl: Literate Paper Processor Promoting Transparency More Than Reproducibility
arXiv:2501.10738
Features
--------
* **Document formats**
Markdown _(Example [[MD]](./docs/examples/example.md))_ **|**
[LaTeX](https://www.latex-project.org/)
_(Examples [[TEX]](./docs/examples/example.tex)[[PDF]](./docs/examples/example.pdf))_
* **Interpreters**
[Sh](https://en.wikipedia.org/wiki/Bourne_shell) **|**
[Bash](https://www.gnu.org/software/bash/) **|**
[Python](https://www.python.org/) **|**
[IPython](https://ipython.org/) **|**
[Aicli](https://github.com/sergei-mironov/aicli)
* **Editor integration**
[Vim](https://www.vim.org/scripts/script.php?script_id=6117) _(plugin source included)_
Requirements
------------
* **POSIX-compatible OS**, typically a Linux. The tool relies on POSIX
operations, notably pipes, and depends on certain Shell commands.
* **lark-parser** and **psutil** Python packages.
* **[Socat](http://www.dest-unreach.org/socat/)** (Optional) Needed for
`litrepl repl` and Vim's `LTerm` commands to work.
Documentation
-------------
* [Installation](https://sergei-mironov.github.io/litrepl/installation/)
* [Basic usage](https://sergei-mironov.github.io/litrepl/usage/general-concepts/)
* [Formatting documents](https://sergei-mironov.github.io/litrepl/usage/formatting/)
For full documentation, check out the project's [GitHub Pages
site](https://sergei-mironov.github.io/litrepl/).
Gallery
-------
Basic usage (Show GIF)

AI capabilities (Show GIF)

Vimtex integration (Show Video)
We utilize LitRepl alongside the [Vimtex](https://github.com/lervag/vimtex) plugin to edit and
preview LaTeX documents instantly.