Skip to content

comakingspace/Machine-Checklists

Repository files navigation

Machine Checklists

As part of our machine documentation at the CoMakingSpace we have short checklists next to the machines, that serve as a quick reminder of the usage and dangers of the corresponding equipment. The checklists contain do/don't/warning symbols at the top based on ISO7010; pre/during/post usage notes and a link to the wiki page of the machine.

The PDFs are autogenerated by github actions from markdown files using pandoc with a custom latex template. The markdown files are generated by scraping our wiki for semantic media wiki properties.

Functional Diagram

Checklist Syntax

Each checklist markdown has a YAML metadata block at the top that defines the variables (like links, ISO7010 symbols etc.) needed for generating the PDF.

---
checklist_title: "Super-duper saw" # name of the machine
source_link:     "https://wiki.comakingspace.de/super-duper-saw" # link to the wikipage for further information
checklist_symbols:   # do/don't/warning symbols ISO7010
  - P010 # don't touch my saw
  - W003 # my saw may be radioactive
  - M020 # do wear a seatbelt while using the saw
---

After the metadata block there should be three sections with short notes on things to do before/during/after using the machine. To keep it inline with our wiki documentation, try to use the MoSCoW method for those notes.

# Before
* **must** wear clothes
* **should** sacrifice a TX4x30mm screw for good luck
* **do not** plug into the hamster-powered outlet

# During
* **must not** die
* **should not** mix units

# After
* **should** clean up
* if imperial units were used **must** wash hands

Final result:

super-duper-saw_en.pdf

Each time a PDF is build it is tagged with the current date (and version?) to be able to tell the most recent document.

Semantic wiki parsing

The wiki parsing is done with a python script wiki_checklist_crawler.py that queries given properties and adds them as metadata or heading+paragraph/list in a markdown file for further parsing.

Usage

usage: wiki_checklist_crawler.py [-h] -u URL
                                 [-m META-PROPERTY [META-PROPERTY ...]]
                                 [-t HEADING TEXT-PROPERTY] [-o OUTPUTPATH]
                                 [--source_link]

Pulling Semantic Media Wiki properties and writing them into a pandoc Markdown
file

optional arguments:
  -h, --help            show this help message and exit
  -u URL, --url URL     Wiki page url to request
  -m META-PROPERTY [META-PROPERTY ...], --meta META-PROPERTY [META-PROPERTY ...]
                        Wiki properties to add to YAML header. If multiple
                        entries are found, they'll be added as a list.
  -t HEADING TEXT-PROPERTY, --text HEADING TEXT-PROPERTY
                        Wiki properties to add as text section. Section name
                        will be used as heading. Can be called multiple times
                        to add more text properties. If a property is found
                        multiple times they are added as new lines.
  -o OUTPUTPATH, --out OUTPUTPATH
                        Optional output path.
  --source_link         Write the source link into the metadata header as
                        'source_link'

Autobuild with Github Actions

ToDo

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published