Skip to main content
Join the official 2019 Python Developers SurveyStart the survey!

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.

Files for xatelite, version 0.1.2
Filename, size File type Python version Upload date Hashes
Filename, size xatelite-0.1.2-py3-none-any.whl (5.4 kB) File type Wheel Python version py3 Upload date Hashes View hashes
Filename, size xatelite-0.1.2.tar.gz (3.2 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page