Skip to main content

Exercise database manager for LaTeX files

Project description

Phystool

This repository provides some tools to handle physics lecture notes, exercises, tests... It is based on four complementary elements:

  1. phystool: Manages a database of LaTeX documents with additional metadata
  2. physnoob: Provides some the of phystool's functionalities in a GUI
  3. physvim: [optional] Implements vim commands to interact with phystool
  4. phystex: [optional] LaTeX classes and packages that are compatible with phystool

Physnoob

A Qt GUI that lets you interact with phystool. It is automatically installed at the same time as phystool.

Physvim

Defines a set of commands that allows vim to interact with phystool. Simply add the following line in your ~/.vimrc file and update Vundle:

Plugin 'https://bitbucket.org/jdufour/physvim.git'

Phystex

The LaTeX classes and packages can be fully customised as long as the ~/.phystool/phystool.conf is correctly set. To get started, it is possible to use the classes and packages available in:

git clone git@bitbucket.org:jdufour/phystex.git

Installation

Install phystool within your python environment:

pip install git+https://bitbucket.org/jdufour/phystool.git@stable

To correctly display compilation messages, in particular the file paths, texmf.cnf needs to contain:

max_print_line=1000

Requirements

Git

If the database is already managed by git (i.e. the database's directory contains a .git directory), no automatic action will be performed.

Otherwise, the program will automatically attempt to initialise a new git repository. The remote repository can be set interactively but, to ensure that nothing is overwritten, it must be totally empty during for the initialization process to succeed.


Development

Virtualenv settings

add the following to postactivate

PHYSTOOL_DIR=/path/to/git/dir
PHYSTOOL_SRC_DIR=$PHYSTOOL_DIR/src/phystool
cd $PHYSTOOL_SRC_DIR
export GIT_CLIFF_WORKDIR=$PHYSTOOL_DIR
export QT_LOGGING_RULES="qt.pyside.libpyside.warning=true"
alias pt="python -m phystool"

the virtualenv must contain a static folder with:

  • README.md
  • themes.gitconfig (a config list of delta themes)
  • physdb_dev (a toy db that can be copied)

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

phystool-3.0.0.tar.gz (65.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

phystool-3.0.0-py3-none-any.whl (63.8 kB view details)

Uploaded Python 3

File details

Details for the file phystool-3.0.0.tar.gz.

File metadata

  • Download URL: phystool-3.0.0.tar.gz
  • Upload date:
  • Size: 65.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-httpx/0.28.1

File hashes

Hashes for phystool-3.0.0.tar.gz
Algorithm Hash digest
SHA256 d6f8421802fcff31a9cfca671a1c98b123e2f4a85c0c02a36f02ef3f22f284e1
MD5 93096755e1dec15ecad07ef56ffd5269
BLAKE2b-256 c00a80e36f4d16b2f66f89f133971c87a4334caf8e24ae56de0dc71cc7f5c38f

See more details on using hashes here.

File details

Details for the file phystool-3.0.0-py3-none-any.whl.

File metadata

  • Download URL: phystool-3.0.0-py3-none-any.whl
  • Upload date:
  • Size: 63.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-httpx/0.28.1

File hashes

Hashes for phystool-3.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 877984eebd43bd447a78afafe902b458c6f3c20158be23f754bfed1a8a07e043
MD5 5d4efe79e524155acd01a35d2695149b
BLAKE2b-256 edaf5c7f94f2d450af5d23029a5dafcd85764e7d6a837122c7ba56354f542975

See more details on using hashes here.

Supported by

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