Skip to content

Latest commit

 

History

History
27 lines (24 loc) · 730 Bytes

README.md

File metadata and controls

27 lines (24 loc) · 730 Bytes

EndlessParser

A robust Parser for Endless Sky's data files

Usage

$ pip install endlessparser
>>> from endlessparser import parse
>>> with open("map.txt", "r") as f:
...     nodes = parse(f.read())
...
>>> nodes[0]
GalaxyNode(node_type='galaxy', tokens=['"Milky Way"'], children=[Node(node_type='pos', tokens=['0', '0'], children=[]), Node(node_type='sprite', tokens=['ui/galaxy'], children=[])])
>>> nodes[0].name()
'"Milky Way"'
>>> nodes[0].sprite()
'ui/galaxy'
>>> nodes[0].position()
(0.0, 0.0)

Contributing

Requirements:

  • Python >= 3.7 for syntactic sugar
  • black for formatting (please use it before commiting - it also integrates into most editors)