diff --git a/documentation/developers.sil b/documentation/developers.sil deleted file mode 100644 index 316494a78..000000000 --- a/documentation/developers.sil +++ /dev/null @@ -1,50 +0,0 @@ -\begin[papersize=a4,class=book]{document} -\use[module=packages.pdf] -\use[module=packages.image] -\include[src=documentation/macros.xml] -\define[command=silehp]{\url{http://www.sile-typesetter.org/}} -\font[size=11pt,family=Gentium Book Basic] -\nofolios -\par\center{\font[size=50pt,weight=600,family=Helvetica Neue]{The}\par -\center{\img[src=documentation/sile-logo.pdf,height=40mm]}\par -\font[size=50pt,weight=600,family=Helvetica Neue]{Developers’ Guide}} -\bigskip -\font[size=12pt]{\hss for SILE version \script{SILE.typesetter:typeset(SILE.version) \hss \par} -\skip[height=2in] -\font[size=20pt]{\hss Simon Cozens \hss \par} -\open-double-page -\tableofcontents -\set-counter[id=folio,value=0] - -\chapter{Code Organisation} - -This book assumes that you’ve already read the SILE Book, and are now looking for further information about how SILE actually works. - -The SILE CLI itself is generated from the \code{sile.in} file and only handles some of the executable lifecycle stuff. -The main core of SILE including most of the top level API is in \code{core/sile.lua}. -This is also the file you would require in your own projects to get access to the SILE core as a library. -It requires a lot of other things on its own, including some other file in \code{core}. - -Some of the major components, especially those which have alternatives, are in module directories. -For example classes are in \code{classes}, inputters in \code{inputters}, etc. -These are typically loaded on-demand by accessing them at \code{SILE.classes.classname}, \code{SILE.inputters.format}, etc. -Most documents will use one class, one inputter, one outputter, one shaper, one typesetter, etc. -However it is certainly possible to mix and match many alternatives in a single project. - -\chapter{From Input To PDF} -Next we’ll give you a high-level overview of the process flow: what SILE does to get you from input to output. - -\section{SILE startup} - -\section{From input to AST} - -The typesetting process is then kicked off by a call to \code{SILE.processFile} in \code{sile.lua}, which chooses the input handler based on the file type. -Inputters such as \code{SILE.inputters.sil} provide \code{:parse()} method which takes raw content and converts it to an abstract syntax tree. -After coversion to a tree the inputter \code{:process()} method to walk though it, typically by handing it off to \code{SILE.process()} - -\section{Typesetting and commands} - -\code{SILE.process} - -\code{SILE.typesetter} -\end{document}