From c25242309db6a2554651e368376b07d30afc3601 Mon Sep 17 00:00:00 2001 From: "Maxime Chupin (Ceremade)" Date: Thu, 24 Nov 2016 17:39:22 +0100 Subject: [PATCH] =?utf8?q?Doc:=20avanc=C3=A9es?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- doc/lltxdoc.cls | 2 +- doc/luamesh-doc.listing | 1 + doc/luamesh-doc.pdf | Bin 19535 -> 23688 bytes doc/luamesh-doc.tex | 84 +++++++++++++++++++++++++++++++++++++++- 4 files changed, 85 insertions(+), 2 deletions(-) create mode 100644 doc/luamesh-doc.listing diff --git a/doc/lltxdoc.cls b/doc/lltxdoc.cls index 1cbb919..5fcb48d 100644 --- a/doc/lltxdoc.cls +++ b/doc/lltxdoc.cls @@ -5,9 +5,9 @@ \ProvidesClass{lltxdoc} \LoadClass[a4paper]{scrartcl} +\RequirePackage{luamesh} \RequirePackage{fontspec} \RequirePackage{metalogo, xspace, ifmtarg, xargs, fancyvrb} -\RequirePackage[table]{xcolor} \RequirePackage[english]{babel} \RequirePackage[colorlinks=true]{hyperref} \RequirePackage{bookmark} diff --git a/doc/luamesh-doc.listing b/doc/luamesh-doc.listing new file mode 100644 index 0000000..319b968 --- /dev/null +++ b/doc/luamesh-doc.listing @@ -0,0 +1 @@ +\usepackage{luamesh} diff --git a/doc/luamesh-doc.pdf b/doc/luamesh-doc.pdf index 66ee430ba48aac09c21f1c7d86d05c9a4a7c0ae6..295ebb563be96e3509137cd2f5775c9a6ad0e8e7 100644 GIT binary patch delta 19654 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 delta 15481 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 C5BL%Q diff --git a/doc/luamesh-doc.tex b/doc/luamesh-doc.tex index 1e0167e..5746bb2 100644 --- a/doc/luamesh-doc.tex +++ b/doc/luamesh-doc.tex @@ -8,11 +8,65 @@ % without any invariant section or cover text. \documentclass{lltxdoc} - +\usepackage{tcolorbox} \title{\Verb+luamesh+: compute and draw meshes with \lualatex} \author{Maxime Chupin \email{mc@melusine.eu.org}} \date{\today} + + +\tcbuselibrary{listings,breakable} + +\definecolor{vert}{rgb}{0.1,0.4,0.1} +\definecolor{bleu}{rgb}{0.1,0.1,0.4} +\lstset{ + numberstyle=\footnotesize\color{vert}, + keywordstyle=\ttfamily\bfseries\color{blue}, + basicstyle=\ttfamily\footnotesize, + commentstyle=\itshape\color{vert}, + stringstyle=\ttfamily, + showstringspaces=false, + language=[LaTeX]TeX, + breaklines=true, + breakindent=30pt, + defaultdialect=[LaTeX]TeX, + % frame=tb +} + +\lstdefinelanguage{lua} +{morekeywords={for,end,function,do,if,else,elseif,then, + tex.print,tex.sprint,io.read,io.open,string.find,string.explode,require}, + morecomment=[l]{--}, + morecomment=[s]{--[[}{]]}, + morestring=[b]'' +} + +\newtcblisting{Exemple}{% + arc=0pt,outer arc=0pt, + colback=red!2!white, + colframe=red!75!black, + breakable, + boxsep=0pt,left=5pt,right=5pt,top=5pt,bottom=5pt, bottomtitle = + 3pt, toptitle=3pt, + boxrule=0pt,bottomrule=0.5pt,toprule=0.5pt, toprule at break = + 0pt, bottomrule at break = 0pt, + listing options={breaklines}, +} + +\newtcblisting{commandshell}{colback=black,colupper=white,colframe=black, + arc=0pt, + listing only,boxsep=0pt,listing + options={style=tcblatex,language=sh}, + every listing line={\textcolor{red}{\small\ttfamily\bfseries user \$> }}} + +\newtcblisting{latexcode}{ + arc=0pt, + listing only,boxsep=0pt,listing + options={style=tcblatex}} + + +\newcommand\luamesh{\Verb+luamesh+\xspace} + \begin{document} \maketitle @@ -30,8 +84,36 @@ \section{Installation} +\subsection{With Linux} + +To install \luamesh with \TeX live, you have to create the local +\Verb+texmf+ directory in your \Verb+home+. + +\begin{commandshell} +mkdir ~/texmf +\end{commandshell} + +Then we have to files to place in the correct directories. First, the +\Verb+luamesh.sty+ file must be in the directory: +\begin{center} + \Verb+~/texmf/tex/latex/luamesh/+ +\end{center} +and secondly, the \Verb+luamesh.lua+ must be in the directory: +\begin{center} + \Verb+~/texmf/scripts/luamesh/+ +\end{center} + +Once you have done this, \luamesh can be included in your document +with +\begin{latexcode} +\usepackage{luamesh} +\end{latexcode} + + \section{The Macros} + + \subsection{Draw a Complete Mesh} \subsection{Draw the Set of Points} -- 2.20.1