diff options
-rw-r--r-- | Makefile | 45 | ||||
-rw-r--r-- | chapters/c.rst | 6 | ||||
-rw-r--r-- | notes_arduino.rst | 6 | ||||
-rw-r--r-- | resources/10_preamble.tex | 41 |
4 files changed, 66 insertions, 32 deletions
@@ -1,5 +1,5 @@ TEX=xelatex -SOURCE=. +SOURCE=chapters SRC =$(wildcard *.rst) SVG =$(wildcard content/*.svg) @@ -12,7 +12,7 @@ all: $(PDFS) BIBS =$(wildcard *.bib) -DIR = $(sort $(shell find $(SOURCE) -name '*.rst' -print)) +CHAPTERS = $(sort $(shell find $(SOURCE) -name '*.rst' -print)) SOURCES = $(sort $(wildcard resources/*.tex)) null := @@ -35,18 +35,36 @@ content/%.pdf: content/%.svg dot2tex --autosize --figonly -o $@ $< # Generate the latex file from rst -tmp/%.tex: %.rst $(INCLUDED_TEX) $(SOURCES)| tmp - $$(command -v rst2latex rst2latex.py | head -n 1) --no-section-subtitles --no-section-numbering --table-style=borderless --use-latex-citations --use-latex-docinfo --documentclass=article --documentoption=12pt,A4,table --syntax-highlight=short --stylesheet=$(PACKAGES),$(TEX_STYLE) $< $@ +tmp/%.tex: %.rst $(INCLUDED_TEX) $(SOURCES) $(CHAPTERS)| tmp + $$(command -v rst2latex rst2latex.py | head -n 1) \ + --no-section-subtitles \ + --no-section-numbering \ + --table-style=borderless \ + --use-latex-citations \ + --use-latex-docinfo \ + --documentclass=article \ + --documentoption=12pt,A4,table \ + --syntax-highlight=short \ + --stylesheet=$(PACKAGES),$(TEX_STYLE) \ + $< $@ sed -i -e 's/{c}{\\hfill ... continued on next page/{r}{... suite sur la page suivante/;s|^%$$||' $@ - sed -i -e 's/\endfirsthead/\endfirsthead\\tableHeaderStyle/g' $@ + #sed -i -e 's/\endfirsthead/\endfirsthead\\tableHeaderStyle/g' $@ sed -i -e 's/longtable\*/mytable/g' $@ - sed -i -e 's/p{[0-9]\.[0-9]*\\DUtablewidth}/X/g' $@ + #sed -i -e 's/p{[0-9]\.[0-9]*\\DUtablewidth}/X/g' $@ # Generate each pdf with latex tmp/%.pdf: tmp/%.tex $(BIBS) | tmp - $(TEX) -output-directory tmp $< + # Delete the previous index file if present + test -f "tmp/$*.ind" && rm "tmp/$*.ind" || true + # First run + $(TEX) -output-directory tmp "$<" #bibtex tmp/$*.aux && $(TEX) -output-directory tmp $< || echo "no bib" - while grep 'Rerun to get ' tmp/$*.log ; do $(TEX) -output-directory tmp $< ; done + # Generate the index page + if [ -s "tmp/$*.idx" ]; then \ + makeindex "tmp/$*"; \ + $(TEX) -output-directory tmp "$<"; \ + fi + while grep 'Rerun to get ' "tmp/$*.log" ; do $(TEX) -output-directory tmp "$<" ; done # Put the pdf in the right place %.pdf: tmp/%.pdf | tmp @@ -54,3 +72,14 @@ tmp/%.pdf: tmp/%.tex $(BIBS) | tmp clean: rm -r tmp + +%.css: %.sass + sassc $< $@ + +%.html: %.rst %.css + $$(command -v rst2html rst2html.py | head -n 1) --stylesheet notes_arduino.css $< $@ + +weasyprint.pdf: notes_arduino.html + weasyprint notes_arduino.html -s notes_arduino.css weasyprint.pdf + + diff --git a/chapters/c.rst b/chapters/c.rst index 2948db4..bb6160c 100644 --- a/chapters/c.rst +++ b/chapters/c.rst @@ -4,7 +4,11 @@ .. role:: raw-latex(raw) :format: latex -La carte Arduino se programme en langage C. +La carte Arduino se programme en langage C++. Il s'agit d'un langage proche du +matériel, permettant de gérer finement les ressources mémoires ou la +performance du programme. Il s'agit aussi d'un langage complexe, avec +énormément de subtilité et pour lequel il existe des livres entiers dédiés à +son apprentissage. Les types ========= diff --git a/notes_arduino.rst b/notes_arduino.rst index 68d1cf6..6c08dcd 100644 --- a/notes_arduino.rst +++ b/notes_arduino.rst @@ -48,9 +48,9 @@ L'alimentation du système .. include:: chapters/alimentation.rst -============ -Le langage C -============ +============== +Le langage C++ +============== .. include:: chapters/c.rst diff --git a/resources/10_preamble.tex b/resources/10_preamble.tex index d3ee747..c511731 100644 --- a/resources/10_preamble.tex +++ b/resources/10_preamble.tex @@ -24,27 +24,28 @@ } \usepackage{longtable} -\usepackage{tabu} -% alternate rowcolors for all long-tables +%\usepackage{tabu} +%% alternate rowcolors for all long-tables \newenvironment{mytable}[2][c]% -{\longtabu to \linewidth [#1]{#2}\tableHeaderStyle}% -{\endlongtabu} - -\RequirePackage{DUsidebar} - -% This red commes from a triad on the blue -\colorlet{tableHeader}{redColor} -\definecolor{tableLineOne}{RGB}{245, 245, 245} -\definecolor{tableLineTwo}{RGB}{224, 224, 224} - -\newcommand{\tableHeaderStyle}{ - \rowfont{\leavevmode\color{white}\bfseries} - \rowcolor{tableHeader} -} - -\taburowcolors[2] 2{tableLineOne .. tableLineTwo} -\tabulinesep = ^4mm_3mm -\everyrow{\tabucline[.4mm white]{}} +{\longtable[#1]{#2}}% +{\endlongtable} +% +% +%% This red commes from a triad on the blue +%\colorlet{tableHeader}{redColor} +%\definecolor{tableLineOne}{RGB}{245, 245, 245} +%\definecolor{tableLineTwo}{RGB}{224, 224, 224} +% +%\newcommand{\tableHeaderStyle}{ +% \rowfont{\leavevmode\color{black}\bfseries} +% \rowcolor{tableHeader} +%} +% +%\taburowcolors[2] 2{tableLineOne .. tableLineTwo} +%\tabulinesep = ^4mm_3mm +%\everyrow{\tabucline[.4mm white]{}} \usepackage{etoolbox} \patchcmd{\quote}{\rightmargin}{\leftmargin 0em \rightmargin}{}{} + +\makeindex |