Skip to main content

e3lm CLI tool (3lm language) for managing .3lm projects and files.

Project description

   3LM

Have fun while learning!


So what is this exactly?

This is an attempt at creating a markup language.

3LM is a structure language parsed in Python.

It is used for defining hierarchial objects, intended mainly to help write structured content fast and with ease. Whether you are a scientist, a programmer or an educator, 3LM can be useful for you.

3LM is intended to be a language of use for an educational platform.


screenshotto

Installation

The recommended way to install is using PyPI

Installation through PyPI

Creating a virtual environment is very preferrable.

$ python -m venv venv
$ python -m pip install e3lm

Installation from Github

Not preferrable, but it works too :)

$ pip install git+https://github.com/knno/3lm.git#egg=e3lm

Configuration

# Environment variables and their default values.

E3LM_TEMP_DIRECTORY="tmp"

Usage

Basic example

You can run these in your terminal to make sure it works:

$ e3lm --version
$ e3lm --help
$ e3lm -d code0
$ e3lm -d code0 -p json
$ e3lm examples/lesson1

More examples:

# Interpret an example.3lm file.
$ e3lm example.3lm

# Interpret demo code1 and generate graphviz dot file and view graph image.
$ e3lm -d code1 -p dot view

# Benchmarking 20 times the demo code0 for 6 measurements.
$ e3lm -d code0 -b 6 20

Additional resources

Refer to the Wiki to learn the language.


TODO:

  • Examination questions auto-extraction from 3lm files. (Could be a plugin.)
  • Rewrite included out-of-the-box example codes and error codes.
  • Add more tests.
  • Benchmarking.
  • Contrib plugins.
  • Make publish ready documentation.
  • Publish to PyPI.

More possibilities... See e3lm.todo


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

e3lm-0.1.9.tar.gz (44.4 kB view details)

Uploaded Source

Built Distribution

e3lm-0.1.9-py3-none-any.whl (49.9 kB view details)

Uploaded Python 3

File details

Details for the file e3lm-0.1.9.tar.gz.

File metadata

  • Download URL: e3lm-0.1.9.tar.gz
  • Upload date:
  • Size: 44.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.0.0 CPython/3.12.2

File hashes

Hashes for e3lm-0.1.9.tar.gz
Algorithm Hash digest
SHA256 851ec097b116cde3944da062f6dcbdf394e6b43eb2605a72aba3179c87211a81
MD5 8f116fa9576aa22429a0d455ccf4b0c1
BLAKE2b-256 419a1913f37686832bca17caa2c371b3ce963ad17739530af91d8cee21496fb1

See more details on using hashes here.

File details

Details for the file e3lm-0.1.9-py3-none-any.whl.

File metadata

  • Download URL: e3lm-0.1.9-py3-none-any.whl
  • Upload date:
  • Size: 49.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.0.0 CPython/3.12.2

File hashes

Hashes for e3lm-0.1.9-py3-none-any.whl
Algorithm Hash digest
SHA256 5749549feec661a339f24fddd1a5ee0e8ae276de05ebe09b4c16567e7c6c6515
MD5 7a95871958a052ee423b3080fd93f8da
BLAKE2b-256 95f2678c3e5947ca02242507d7308e04f227ada497a7e0885b83d6ceb47c14e2

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