Skip to main content

"Website on VTES Strategy, cards rulings and TWD search interface.",

Project description

Codex of the Damned

PyPI version Validation Python version License Code Style

This site is a compilation of Vampire: the Eternal Struggle strategy resources. The site is publicly available at codex-of-the-damned.org.

Portions of the materials are the copyrights and trademarks of Paradox Interactive AB, and are used with permission. All rights reserved. For more information please visit www.worldofdarkness.com.

Dark Pack

Contributing

Contributions are welcome. Pull Requests will be merged if they respect the general style. Issues will be dealt with as quickly as possible.

This site uses Flask and Babel to generate pages dynamically and handle internationalisation.

Installation

To install a working developpment version of the site, use pip:

python3 -m venv venv
pip install -e ".[dev]"

There is a make command to update translations:

make po

You can run the development version of the site using the codex entrypoint:

$ codex
 * Serving Flask app "codex_of_the_damned" (lazy loading)
 * Environment: production
   WARNING: This is a development server. Do not use it in a production deployment.
   Use a production WSGI server instead.
 * Debug mode: off
 * Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)

You can set the DEBUG environment variable to activate the debug mode:

DEBUG=1 codex

To run the production server, you'll need a web server like uWSGI:

uwsgi --module codex_of_the_damned:app

or Gunicorn:

gunicorn codex_of_the_damned:app

Useful tools

Icons

Convert icons from raster to SVG using imagemagick and potrace, depending on the icon, smoothing may be better or not:

convert -morphology Smooth Octagon:2 clan-ahrimanes.gif clan-ahrimanes.svg

Google Translate

Use python and Google Translate to help with translation:

import clipboard
import pprint
import re

def pre():
    s = "".join(s[1:-1] for s in clipboard.paste().split("\n"))
    s = re.sub(r"%\(([^\)]*)\)s", r"§K3PX\1§", s)
    clipboard.copy(s)

def post():
    s = clipboard.paste()
    s = pprint.pformat(re.sub(r"§K3PX([^§]*)§", r"%(\1)s", s), width=120)
    s = re.sub(
            r"(^')|('$)",
            '"',
            re.sub(r"^\s*", "", s[1:-1], flags=re.MULTILINE),
            flags=re.MULTILINE
        ).replace("\\n", "")
    clipboard.copy(s)

# usage:
#  > copy paragraph to translate from the PO file
# pre()
# > copy translation
# post()
# > copy result to the PO file

Project details


Release history Release notifications | RSS feed

This version

1.48

Download files

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

Source Distribution

codex-of-the-damned-1.48.tar.gz (20.3 MB view details)

Uploaded Source

Built Distribution

codex_of_the_damned-1.48-py3-none-any.whl (20.5 MB view details)

Uploaded Python 3

File details

Details for the file codex-of-the-damned-1.48.tar.gz.

File metadata

  • Download URL: codex-of-the-damned-1.48.tar.gz
  • Upload date:
  • Size: 20.3 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.9

File hashes

Hashes for codex-of-the-damned-1.48.tar.gz
Algorithm Hash digest
SHA256 b302eb14fa5c3b13fd1c01070d3a32d0ee90d9d60664a8d56c9dd639dbc2c37a
MD5 3bab4e35b66e29e72a6d8d76ffe9dbe5
BLAKE2b-256 52250e76eefd35af8171ad4aca12f58e4672d453870ec199959f1a8c011c69a4

See more details on using hashes here.

File details

Details for the file codex_of_the_damned-1.48-py3-none-any.whl.

File metadata

File hashes

Hashes for codex_of_the_damned-1.48-py3-none-any.whl
Algorithm Hash digest
SHA256 154deba207f29c1122b9019683907fb7b9bed0fc68602bd504c029bafc1a54d9
MD5 71d08dbab1856ca14cd75c6973aa50e3
BLAKE2b-256 7ca0543872fca329223620e2485a720750b585a6f62f59e19a88996b0e4b4e59

See more details on using hashes here.

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