diff options
Diffstat (limited to 'README.md')
-rw-r--r-- | README.md | 111 |
1 files changed, 111 insertions, 0 deletions
diff --git a/README.md b/README.md new file mode 100644 index 0000000..a3de04f --- /dev/null +++ b/README.md @@ -0,0 +1,111 @@ +# Pysilfont - a collection of utilities for font development + +Pysilfont is a collection of tools to support font development, with an emphasis on UFO-based workflows. With some limitations, all UFO scripts in Pysilfont should work with UFO2 or UFO3 source files - and can convert from one format to the other. + +In addition, all scripts will output UFOs in a normalized form, designed to work with source control systems. + +Please read the main [documentation](docs/docs.md) in the docs folder for more details. Within there is a list of [scripts](docs/scripts.md). + +## Installation + +Pysilfont requires Python 3.6+ and pip3. Some scripts also need other libraries. + +### Updating your python toolchain to be current +``` +sudo apt install python3-pip python3-setuptools +python3 -m pip install --upgrade pip setuptools wheel build +``` + +### Simple install +To just install the main scripts (only in the user's folder not system-wide) without cloning the GitHub repository run: +``` +python3 -m pip install git+https://github.com/silnrsi/pysilfont +``` + +This will allow you to run the scripts listed in [scripts.md](docs/scripts.md), but won’t give access +to the example scripts or give you the code locally to look at. + +### Full install + +First clone this repository or download the files from this [https://github.com/silnrsi/pysilfont](https://github.com/silnrsi/pysilfont). To better isolate changes from your system Python we will use a virtual environment. +Then navigate to the newly created pysilfont directory and run: +``` +sudo apt install python3-pip python3-venv python3-wheel python3-setuptools +``` + +Then create a virtual environment: +``` +python3 -m venv venv +``` +Get inside the virtual environment, you have to do this every time you want to use the pysilfont tools again: +``` +source venv/bin/activate +``` + +Then install update the toolchain and install: +``` +python3 -m pip install --upgrade pip setuptools wheel build +python3 -m pip install . +``` + +You can deactivate your virtual environment (venv) by typing: +``` +deactivate +``` +or by closing that Terminal. + + +Alternatively to install in editable mode: +``` +python3 -m pip install -e . +``` + +By default the dependencies pulled in are using releases. + + + +For developers: + +Install from git main/master to track the freshest versions of the dependencies: +``` +python3 -m pip install --upgrade -e .[git] +``` + +To have more than one project in editable mode you should install each one separately and only install pysilfont at the last step, for example: +``` +python3 -m pip install -e git+https://github.com/fonttools/fontbakery.git@main#egg=fontbakery +python3 -m pip install -e git+https://github.com/fonttools/fonttools@main#egg=fonttools +python3 -m pip install -e git+https://github.com/silnrsi/pysilfont.git@master#egg=silfont +``` + +### Uninstalling pysilfont + +pip3 can be used to uninstall silfont: + +locally for your user: +``` +pip3 uninstall silfont +``` + +or to remove a venv (virtual environment): +``` +deactivate (if you are inside the venv) +rm -rf venv +``` + + +or if you have it installed system-wide (only recommended inside a separate VM or container) +``` +sudo pip3 uninstall silfont +``` + +If you need palaso, you will need to install it separately. +Follow the instructions on https://github.com/silnrsi/palaso-python + +If you need fontbakery, you will need to install it separately. +Follow the instructions on https://font-bakery.readthedocs.io + + +## Contributing to the project + +Pysilfont is developed and maintained by SIL International’s [Writing Systems Technology team ](https://software.sil.org/wstech/), though contributions from anyone are welcome. Pysilfont is copyright (c) 2014-2023 [SIL International](https://www.sil.org) and licensed under the [MIT license](https://en.wikipedia.org/wiki/MIT_License). The project is hosted at [https://github.com/silnrsi/pysilfont](https://github.com/silnrsi/pysilfont). |