Skip to main content

A Python3 LaTeX over SSH/HTTP service

Project description

# XaTeLite 🛰️

LaTeX over SSH and HTTP. Lets you remotely compile LaTeX and immediately see
your compiled pdf all remotely.

## Requirements
You need
- Flask
- pdflatex

## Installation
Just install by
```
python3 -m pip install flask
python3 -m pip install xatelite
```

## Usage
The most common use case is ssh-ing into your remote server,
starting xatelite, and opening up a web browser to your xatelite latex server.

Here's an example: after ssh-ing into your server, run
```
$ xatelite -f ~/math/pset4/pset4.tex -q -p 5010
```

This starts an HTTP server on port `5010` and uses `-q` to silence Flask's
output. Now if you visit your server on port `5010` through a web browser,
you'll be presented with your pdf. **Refreshing recompiles the LaTeX file**.

If there's a bug in your .tex file (if pdflatex returns a non-zero error code),
a log file will be presented instead. Use the log file to debug.

## Options
The current options can be accessed by `xatelite -h` and are:

usage: xatelite.py [-h] [-f LATEX_FILE] [-p PORT] [-q] [-qq]

optional arguments:
-h, --help show this help message and exit
-f LATEX_FILE, --latex_file LATEX_FILE
the latex file to be compiled and served. If this is
not passed in, the single *.tex file in the working
directory will be used.
-p PORT, --port PORT specify which port the webserver will run on
-q, --quiet suppress any Flask output
-qq, --qquiet suppress all output including running message

## TODO
- [ ] Better debugging options
- [ ] Maybe have a relaxed mode that allows errors if a pdf is generated?
- [ ] Have a config file with specific pdflatex commands.
- [ ] Recommend `xatelite [file] -qq & disown` for non-screen/tmux users.
- [ ] Have a `-k/--kill` option to kill servers that can take PID/filename
- [ ] Have a `-s/--sessions` option to see PID/filename/ports



Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

xatelite-0.1.2.tar.gz (3.2 kB view hashes)

Uploaded Source

Built Distribution

xatelite-0.1.2-py3-none-any.whl (5.4 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page