Giter Club home page Giter Club logo

sphinxtr's Introduction

Introduction

Creating a PhD thesis is typically done using LaTeX. This works really well for producing a PDF, but a giant PDF file is not a great way to put documents on the web. There are solutions that exist to turn latex source files into HTML, but in my experience, they tend to produce poor HTML output.

The Sphinx project is a wonderful tool for creating portable documents, allowing for output to many different formats. Unfortunately, it has many shortcomings when trying to typeset something so advanced as a PhD thesis. The aim of this project is to modify Sphinx to support all of the needs of a thesis writer. Many of the patches are not appropriate for contributing directly to the upstream Sphinx repository, so this is instead a separate project.

This sphinxtr output is available in several formats at: http://jterrace.github.com/sphinxtr.

The source code for sphinxtr can be found at: https://github.com/jterrace/sphinxtr.

image

Installation

If you are running the apt packet manager you can install the requirements with the following command:

sudo apt-get install python-setuptools python-virtualenv texlive-full

Otherwise you can maybe find other ways to install the following packages:

Now create a virtualenv. This will help you to separate the requirements from this project from other Python projects you might have:

virtualenv venv
source ./venv/bin/activate

Note

You can get out of the virtualenv by either closing the terminal or by calling deactivate.

Then install the required Python packages:

pip install -r requirements.txt

Building

You need make. The following targets are supported:

html

Builds HTML format, separated into sections

singlehtml

Builds HTML format on a single page

text

Builds text files, separated into sections

singletext

Builds a single text file

latexpdf

Builds into latex source files and then compiles into a PDF. Requires latex.

Changes

The following changes and additions have been made from vanilla Sphinx:

  • A cross-format bibtex bibliography based on sphinx-natbib
  • Tables that can go inside figures
  • Changed table formatting to look pretty, like booktabs
  • Improved alignment in table environment
  • Added support for short captions that show up in the "list of figures" section
  • Changed equation reference formatting from "(1)" to "1"
  • Full customization of latex preamble and style file
  • Numbered figures
  • Numbered section references
  • A singletext output that builds into a single text file, similar to singlehtml
  • A subfigure environment

Documents Using sphinxtr

sphinxtr's People

Contributors

jterrace avatar newville avatar erikbgithub avatar marufr avatar emilopez avatar lhoupert avatar miketheman avatar vedranmiletic avatar meisterluk avatar

Stargazers

Ravikant avatar

Watchers

Ravikant avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.