Commit 4f69d91a authored by sjplimp's avatar sjplimp Committed by GitHub
Browse files

Merge pull request #230 from akohlmey/manual-in-ebook-format

generate LAMMPS manual in ebook format
parents 9954d5d3 607246f9
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
/html
/LAMMPS.epub
/LAMMPS.mobi
/Manual.pdf
/Developer.pdf
+16 −1
Original line number Diff line number Diff line
@@ -22,7 +22,7 @@ endif
SOURCES=$(wildcard src/*.txt)
OBJECTS=$(SOURCES:src/%.txt=$(RSTDIR)/%.rst)

.PHONY: help clean-all clean html pdf old venv
.PHONY: help clean-all clean epub html pdf old venv

# ------------------------------------------

@@ -32,6 +32,7 @@ help:
	@echo "  pdf        create Manual.pdf and Developer.pdf in this dir"
	@echo "  old        create old-style HTML doc pages in old dir"
	@echo "  fetch      fetch HTML and PDF files from LAMMPS web site"
	@echo "  epub       create ePUB format manual for e-book readers"
	@echo "  clean      remove all intermediate RST files"
	@echo "  clean-all  reset the entire build environment"
	@echo "  txt2html   build txt2html tool"
@@ -63,6 +64,20 @@ html: $(OBJECTS)
	@rm -rf html/USER/*/*.[sg]*
	@echo "Build finished. The HTML pages are in doc/html."

epub: $(OBJECTS)
	@mkdir -p epub
	@rm -f LAMMPS.epub
	@cp src/JPG/lammps-logo.png epub/
	@(\
		. $(VENV)/bin/activate ;\
		cp -r src/* $(RSTDIR)/ ;\
		sphinx-build -j 8 -b epub -c utils/sphinx-config -d $(BUILDDIR)/doctrees $(RSTDIR) epub ;\
		deactivate ;\
	)
	@mv  epub/LAMMPS.epub .
	@rm -rf epub
	@echo "Build finished. The ePUB manual file is created."

pdf: utils/txt2html/txt2html.exe
	@(\
		cd src; \
+23 −1
Original line number Diff line number Diff line
LAMMPS Documentation

Depending on how you obtained LAMMPS, this directory has 2 or 3
sub-directories and optionally 2 PDF files:
sub-directories and optionally 2 PDF files and an ePUB file:

src             content files for LAMMPS documentation
html            HTML version of the LAMMPS manual (see html/Manual.html)
tools           tools and settings for building the documentation
Manual.pdf      large PDF version of entire manual
Developer.pdf   small PDF with info about how LAMMPS is structured
LAMMPS.epub     Manual in ePUB format

If you downloaded LAMMPS as a tarball from the web site, all these
directories and files should be included.
@@ -49,6 +50,7 @@ make pdf # generate 2 PDF files (Manual.pdf,Developer.pdf)
make old          # generate old-style HTML pages in old dir via txt2html
make fetch        # fetch HTML doc pages and 2 PDF files from web site
                  #   as a tarball and unpack into html dir and 2 PDFs
make epub         # generate LAMMPS.epub in ePUB format using Sphinx 
make clean        # remove intermediate RST files created by HTML build
make clean-all    # remove entire build folder and any cached data

@@ -91,3 +93,23 @@ This will install virtualenv from the Python Package Index.
----------------

Installing prerequisites for PDF build

[TBA]

----------------

Installing prerequisites for epub build

## ePUB

Same as for HTML. This uses the same tools and configuration
files as the HTML tree.

For converting the generated ePUB file to a mobi format file
(for e-book readers like Kindle, that cannot read ePUB), you
also need to have the 'ebook-convert' tool from the "calibre"
software installed. http://calibre-ebook.com/
You first create the ePUB file with 'make epub' and then do:

ebook-convert LAMMPS.epub LAMMPS.mobi
+4.79 KiB
Loading image diff...
+23 −0
Original line number Diff line number Diff line
@@ -276,4 +276,27 @@ texinfo_documents = [
# If true, do not generate a @detailmenu in the "Top" node's menu.
#texinfo_no_detailmenu = False

# -- Options for ePUB output ----------------------------------------------

epub_title = 'LAMMPS Documentation - ' + get_lammps_version()

epub_cover = ('lammps-logo.png', '')

epub_description = """
This is the Manual for the LAMMPS software package.

LAMMPS stands for Large-scale Atomic/Molecular Massively Parallel
Simulator and is a classical molecular dynamics simulation code
designed to run efficiently on parallel computers.  It was developed
at Sandia National Laboratories, a US Department of Energy facility,
with funding from the DOE.  It is an open-source code, distributed
freely under the terms of the GNU Public License (GPL).

The primary author of the code is Steve Plimpton, who can be emailed
at sjplimp@sandia.gov.  The LAMMPS WWW Site at lammps.sandia.gov has
more information about the code and its uses.
"""

epub_author = 'The LAMMPS Developers'