Commit 7cd588f9 authored by Fabrice Salvaire's avatar Fabrice Salvaire

doc

parent c1bc8679
......@@ -14,3 +14,15 @@
.. |Sphinx| replace:: Sphinx
.. _Sphinx: http://sphinx-doc.org
.. |NIST-RS-274| replace:: The NIST RS274NGC Interpreter — Version 3
.. _NIST-RS-274: https://www.nist.gov/publications/nist-rs274ngc-interpreter-version-3
.. |LinuxCNC| replace:: Linux CNC
.. _LinuxCNC: http://linuxcnc.org/docs/2.7/html/gcode/overview.html
.. |Machinekit| replace:: Machinekit
.. _Machinekit: http://www.machinekit.io
.. |YAML| replace:: YAML
.. _YAML: https://yaml.org
.. include:: abbreviation.txt
.. _bibliography-page:
==============
Bibliography
==============
G-Code
------
* |NIST-RS-274|_
.. include:: abbreviation.txt
.. _design-note-page:
==============
Design Notes
==============
To be written ...
G-Code Parser
-------------
The RS-274 parser is generated automatically from the grammar defined in the paper |NIST-RS-274|_
(Appendix E) using the generator `PLY <https://www.dabeaz.com/ply/ply.html>`_ which implement a
LALR(1) parser similar to the tools **lex** and **yacc**.
The parser construct an `abstract syntax tree (AST)
<https://en.wikipedia.org/wiki/Abstract_syntax_tree>`_ during the parsing.
User can subclass this parser to support a derived G-code flavour.
G-code flavours
---------------
The different flavours are partly handled in |YAML|_ files.
......@@ -8,7 +8,7 @@ If you like PythonicGcodeMachine, you can donate for its developement to my `Pay
<https://www.paypal.me/FabriceSalvaire>`_.
This budget could help me to mainly finance a domain, a vps to host a site, a forum (*) and also to
participate to conference on open source Electronic Design Automation.
participate to conference.
(*) This web site is actually hosted on my vps, which is quite loaded. I don't use hosting site
since it is easier to update the documentation using my own infrastructure.
.. (*) This web site is actually hosted on my vps, which is quite loaded. I don't use hosting site
since it is easier to update the documentation using my own infrastructure.
......@@ -12,19 +12,19 @@ How to get help or report an issue ?
.. There is no mailing list or forum actually, so you can either contact me or fill an issue on Github.
If you want to **discuss or ask questions on PythonicGcodeMachine**, you can subscribe and post messages on the
**PythonicGcodeMachine User** mailing list.
There is actually three lists running on Google Groups (*):
`User List <https://groups.google.com/forum/#!forum/PythonicGcodeMachine-user>`_
List for PythonicGcodeMachine users
`Announce List <https://groups.google.com/forum/#!forum/PythonicGcodeMachine-announce>`_
List for announcements regarding PythonicGcodeMachine releases and development
`Devel List <https://groups.google.com/forum/#!forum/PythonicGcodeMachine-devel>`_
List for developers of PythonicGcodeMachine
.. If you want to **discuss or ask questions on PythonicGcodeMachine**, you can subscribe and post messages on the
.. **PythonicGcodeMachine User** mailing list.
..
.. There is actually three lists running on Google Groups (*):
..
.. `User List <https://groups.google.com/forum/#!forum/PythonicGcodeMachine-user>`_
.. List for PythonicGcodeMachine users
.. `Announce List <https://groups.google.com/forum/#!forum/PythonicGcodeMachine-announce>`_
.. List for announcements regarding PythonicGcodeMachine releases and development
.. `Devel List <https://groups.google.com/forum/#!forum/PythonicGcodeMachine-devel>`_
.. List for developers of PythonicGcodeMachine
**If you encounter an issue, please fill an issue** on the `Issue Tracker <https://github.com/FabriceSalvaire/PythonicGcodeMachine/issues>`_.
(*) Despite Google Groups has many drawbacks, I don't have actually enough resources to run GNU Mailman or
Discourse on my own IT infrastructure.
.. (*) Despite Google Groups has many drawbacks, I don't have actually enough resources to run GNU Mailman or
Discourse on my own IT infrastructure.
......@@ -37,22 +37,19 @@
<div class="reduced-width">
########
Title
########
############################
The Pythonic Gcode Machine
############################
.. image:: /_static/logo.png
:alt: PythonicGcodeMachine logo
:width: 750
.. important::
This doc was generated from a template and need to be completed ...
.. .. image:: /_static/logo.png
.. :alt: PythonicGcodeMachine logo
.. :width: 750
********
Overview
********
PythonicGcodeMachine is a free and open source (*) Python module which interface |Python|_ ...
PythonicGcodeMachine is a free and open source (*) Python toolkit to work with RS-274 / ISO G-Code.
.. rst-class:: small-text
......
......@@ -95,15 +95,8 @@ Dependencies
PythonicGcodeMachine requires the following dependencies:
* |Python|_ 3
* |Numpy|_
* these `Python packages <https://github.com/FabriceSalvaire/pythonic-gcode-machine/blob/master/requirements.txt>`_
Also it is recommanded to have these Python modules:
For development, you could also need the `dependencies
<https://github.com/FabriceSalvaire/pythonic-gcode-machine/blob/master/requirements-dev.txt>`_.
* |IPython|_
.. * pip
.. * virtualenv
To generate the documentation, you will need in addition:
* |Sphinx|_
......@@ -5,7 +5,7 @@
.. no title here
V0 2018-01-01
---------------
V0 2018-12-22
-------------
Started project
......@@ -8,17 +8,17 @@
==========
What is PythonicGcodeMachine ?
---------------------
------------------------------
PythonicGcodeMachine is an open source Python module which provides a |Python|_ ....
PythonicGcodeMachine is a free and open source Python toolkit to work with RS-274 / ISO G-Code.
How is PythonicGcodeMachine licensed ?
-----------------------------
--------------------------------------
PythonicGcodeMachine is licensed under the `GPLv3 <https://www.gnu.org/licenses/quick-guide-gplv3.en.html>`_.
Going further with PythonicGcodeMachine
------------------------------
---------------------------------------
The best way to know what you can do with PythonicGcodeMachine, and to learn it, is to look at the examples:
......@@ -26,17 +26,16 @@ The best way to know what you can do with PythonicGcodeMachine, and to learn it,
* :ref:`Bibliography <bibliography-page>`
Which platforms are supported by PythonicGcodeMachine ?
----------------------------------------------
-------------------------------------------------------
PythonicGcodeMachine runs on Linux, Windows 64-bit and Mac OS X.
How to install PythonicGcodeMachine ?
----------------------------
-------------------------------------
The procedure to install PythonicGcodeMachine is described in the :ref:`Installation Manual <installation-page>`.
Which version of Python is required ?
-------------------------------------
PythonicGcodeMachine requires Python 3 and the version 3.5 is recommended so as to benefit from the new *@* syntax
for units.
PythonicGcodeMachine requires at least Python 3.5.
......@@ -4,3 +4,14 @@
Related Projects
==================
G-code Tools
------------
* `pygcode — GCODE Parser for Python <https://github.com/fragmuffin/pygcode>`_
CAM Tools
---------
* `PyCAM <http://pycam.sourceforge.net>`_ is a toolpath generator for 3-axis CNC machining. It loads
3D models in STL format or 2D contour models from DXF or SVG files. The resulting G-Code can be
used with LinuxCNC or any other machine controller.
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment