Quick tutorial of Jemdoc

These static pages are generated using Jemdoc, which is originally developed by Jacob Mattingley. Source code (through Github) can be accessed here. Now it also supports MathJax! See this page or the GitHub repo.

Steps to generate a new HTML page

regular pages

0. Say, your folder is \User\xxx\myJem

1. Create a xxx.jemdoc file (by TextEdit or something). This should include the modeline at the beginning of the file:

# jemdoc: menu{MENU}{xxx.html}
= Your section title

2. Use Terminal (or cmd in Windows) to generate HTML file

cd \User\xxx\myJem
python2 jemdoc.py xxx

Menu

Create a file named MENU WITHOUT any extension name, and put the following (say)

Home
    About me           [index.html]
    What's new		 [new.html]

Then use Terminal

cd \User\xxx\myJem
python2 jemdoc.py MENU

Remember to re-generate all other pages after you update the menu. You can also use a shell script to execute the update process for all pages. Make sure you give permission to this file by

chmod +x updateMENU.sh

Pages with MathJax

You first need to download jemdoc3.py and mysite.conf. Steps to generate a page with equations are more or less the same, except that you need to use

python2 jemdoc3.py -c mysite.conf xxx

In this case, python 3 also works!

python3 jemdoc3.py -c mysite.conf xxx

The following is an example:

\(
\begin{align}
\nabla \cdot \mathbf{D} &= \rho_f\label{eq:D}\\
\nabla \cdot \mathbf{B} &= 0\label{eq:B}\\
\nabla \times \mathbf{E} &= -\frac{\partial\mathbf{B}}{\partial t}\label{eq:E}\\
\nabla \times \mathbf{H} &= \mathbf{J}_f - \frac{\partial\mathbf{D}}{\partial t}\label{eq:H}
\end{align}
\)

\[ \begin{align} \nabla \cdot \mathbf{D} &= \rho_f\label{eq:D}\\ \nabla \cdot \mathbf{B} &= 0\label{eq:B}\\ \nabla \times \mathbf{E} &= -\frac{\partial\mathbf{B}}{\partial t}\label{eq:E}\\ \nabla \times \mathbf{H} &= \mathbf{J}_f - \frac{\partial\mathbf{D}}{\partial t}\label{eq:H} \end{align} \]

For inline equations like \(Ax+b\), simply use $Ax+b$ . To reference an equation \(\eqref{eq:E}\), use $\eqref{eq:E}$.

Cheatsheet

See here.