This is a template (starter kit) for writing Maturity Work with Sphinx / LaTeX at Collège du Sud

Overview

sphinx-tm-template

Ce dépôt est un template de base utilisable pour écrire ton travail de maturité dans le séminaire d'informatique du Collège du Sud.

Installation

Prérequis sur votre machine locale

Il faut commencer par installer Python 3 sur la machine pour pouvoir exécuter les commandes suivantes. Normalement, les versions récentes de Linux et Mac OS disposent déjà d'un interpréteur Python. De plus, les commandes suivantes doivent être installées

  • pip
  • virtualenv

Si ce n'est pas le cas, on peut les installer sous Linux avec la commande

sudo apt-get install python3-pip python3-venv

Installation de Sphinx

Pour installer ce template Sphinx, il suffit de se trouver dans un terminal Linux disposant de la command git et de faire

# Cloner le dépôt
git clone https://github.com/informatiquecsud/sphinx-tm-template.git
cd sphinx-tm-template

# Création de l'environnement virtuel
python -m venv venv

# Activer l'environnement virtual Python
source venv/bin/activate

# Installation de Sphinx et autres dépendances
pip install -r requirements.txt

Configuration de Sphinx

Il faut insérer vos informations (auteur, titre, ... ) dans le fichier source/tmconfig.py. Ce fichier est ensuite automatiquement importé dans le module conf.py qui permet de configurer Sphinx.

Génération des documents cibles

Compilation en HTML

Pour compiler les fichiers Sphinx en HTML, il faut entrer la commande suivante depuis le dossier racine du projet contenant le fichier Makefile :

make livehtml

Compilation en LaTeX (PDF)

Pour pouvoir générer le PDF, il faut au préalable installer LaTeX sur le système. Sur un système Linux, il suffit de faire les commandes

sudo apt update
sudo apt-get install texlive-latex-extra texlive-lang-french texlive-fonts-recommended latexmk

Sur les machines Windows, l'installation risque d'être plus compliquée, raison pour laquelle il est conseillé de compiler votre travail directement dans Cloud9 ou dans le Bash Ubuntu de Windows 10.

Ensuite, pour générer le PDF, il suffit de faire depuis la racine du dépôt où se trouve le fichier Makefile principal :

make tmpdf

et de se rendre dans le dossier build/latex/ et ouvrir le fichier tm-ecrit.pdf généré par LaTeX.

Visualisation des pages HTML générées

Depuis une machine de développement locale

Il suffit ensuite, pour visualiser le résultat, de visiter http://localhost:8000/ dans le navigateur Web.

Cloner le dépôt

Le plus simple, pour démarrer, est de forker ce dépôt dans votre propre compte GitHub et cloner ce dernier sur votre machine locale ou dans un IDE en ligne tel que Gitpod.

Écrire son travail de maturité sur Gitpod

L'IDE en ligne Gitpod permet de disposer de machines virtuelles complètes sur lesquelles faire tourner la chaines d'outils Sphinx / LaTeX pour écrire la documentation des projets de TM en informatique.

Voici les étapes à suivre:

  1. Forker le dépôt https://github.com/informatiquecsud/sphinx-tm-template/ dans votre compte GitHub.

  2. Ouvrir votre version du dépôt sur GitHub et, dans la barre d'adresse du navigateur Web, rajouter https://gitpod.io# tout à gauche de l'adresse de votre dépôt GitHub. Pour que cela fonctionne, vous devez avoir un compte sur la plateforme https://gitpod.io/.

  3. Dans Gitpod, il faut commencer par installer Sphinx avec

    pip install -r requirements.txt
  4. Vous pouvez ensuite générer le HTML avec

    make livehtml
  5. Pour générer le PDF, il suffit d'exécuter la commande suivante dans un terminal.

    make tmpdf

Installation de LaTeX

Sur Gitpod

Sur Linux Ubuntu

Python-slp - Side Ledger Protocol With Python

Side Ledger Protocol Run python-slp node First install Mongo DB and run the mong

Solar 3 Mar 02, 2022
Quick tutorial on orchest.io that shows how to build multiple deep learning models on your data with a single line of code using python

Deep AutoViML Pipeline for orchest.io Quickstart Build Deep Learning models with a single line of code: deep_autoviml Deep AutoViML helps you build te

Ram Seshadri 6 Oct 02, 2022
Software engineering course project. Secondhand trading system.

PigeonSale Software engineering course project. Secondhand trading system. Documentation API doumenatation: list of APIs Backend documentation: notes

Harry Lee 1 Sep 01, 2022
A simple document management REST based API for collaboratively interacting with documents

documan_api A simple document management REST based API for collaboratively interacting with documents.

Shahid Yousuf 1 Jan 22, 2022
In this Github repository I will share my freqtrade files with you. I want to help people with this repository who don't know Freqtrade so much yet.

My Freqtrade stuff In this Github repository I will share my freqtrade files with you. I want to help people with this repository who don't know Freqt

Simon Kebekus 104 Dec 31, 2022
Watch a Sphinx directory and rebuild the documentation when a change is detected. Also includes a livereload enabled web server.

sphinx-autobuild Rebuild Sphinx documentation on changes, with live-reload in the browser. Installation sphinx-autobuild is available on PyPI. It can

Executable Books 440 Jan 06, 2023
Easy OpenAPI specs and Swagger UI for your Flask API

Flasgger Easy Swagger UI for your Flask API Flasgger is a Flask extension to extract OpenAPI-Specification from all Flask views registered in your API

Flasgger 3.1k Jan 05, 2023
Automatic links from code examples to reference documentation

sphinx-codeautolink Automatic links from Python code examples to reference documentation at the flick of a switch! sphinx-codeautolink analyses the co

Felix Hildén 41 Dec 17, 2022
🏆 A ranked list of awesome python developer tools and libraries. Updated weekly.

Best-of Python Developer Tools 🏆 A ranked list of awesome python developer tools and libraries. Updated weekly. This curated list contains 250 awesom

Machine Learning Tooling 646 Jan 07, 2023
Credit EDA Case Study Using Python

This case study aims to identify patterns which indicate if a client has difficulty paying their installments which may be used for taking actions such as denying the loan, reducing the amount of loa

Purvi Padliya 1 Jan 14, 2022
A hack to run custom shell commands when building documentation on Read the Docs.

readthedocs-custom-steps A hack to run custom steps when building documentation on Read the Docs. Important: This module should not be installed outsi

Niklas Rosenstein 5 Feb 22, 2022
Anomaly Detection via Reverse Distillation from One-Class Embedding

Anomaly Detection via Reverse Distillation from One-Class Embedding Implementation (Official Code ⭐️ ⭐️ ⭐️ ) Environment pytorch == 1.91 torchvision =

73 Dec 19, 2022
The Python Dict that's better than heroin.

addict addict is a Python module that gives you dictionaries whose values are both gettable and settable using attributes, in addition to standard ite

Mats Julian Olsen 2.3k Dec 22, 2022
VSCode extension that generates docstrings for python files

VSCode Python Docstring Generator Visual Studio Code extension to quickly generate docstrings for python functions. Features Quickly generate a docstr

Nils Werner 506 Jan 03, 2023
PythonCoding Tutorials - Small functions that would summarize what is needed for python coding

PythonCoding_Tutorials Small functions that would summarize what is needed for p

Hosna Hamdieh 2 Jan 03, 2022
A python package to avoid writing and maintaining duplicated python docstrings.

docstring-inheritance is a python package to avoid writing and maintaining duplicated python docstrings.

Antoine Dechaume 15 Dec 07, 2022
Yu-Gi-Oh! Master Duel translation script

Yu-Gi-Oh! Master Duel translation script

715 Jan 08, 2023
Data Inspector is an open-source python library that brings 15++ types of different functions to make EDA, data cleaning easier.

Data Inspector Data Inspector is an open-source python library that brings 15 types of different functions to make EDA, data cleaning easier. Author:

Kazi Amit Hasan 38 Nov 24, 2022
JTEX is a command line tool (CLI) for rendering LaTeX documents from jinja-style templates.

JTEX JTEX is a command line tool (CLI) for rendering LaTeX documents from jinja-style templates. This package uses Jinja2 as the template engine with

Curvenote 15 Dec 21, 2022
An introduction to hikari, complete with different examples for different command handlers.

An intro to hikari This repo provides some simple examples to get you started with hikari. Contained in this repo are bots designed with both the hika

Ethan Henderson 18 Nov 29, 2022