# HG changeset patch # User Bryan O'Sullivan # Date 1151566355 25200 # Node ID e9d5b4c3d16bee6a8bc43249bf5cd2f4cca897d6 # Parent d450d67ecc82b7f71a24d4eea7f2d3ea6b4335ab First SVG image! diff -r d450d67ecc82 -r e9d5b4c3d16b .hgignore --- a/.hgignore Wed Jun 28 20:29:21 2006 -0700 +++ b/.hgignore Thu Jun 29 00:32:35 2006 -0700 @@ -3,9 +3,6 @@ syntax: glob -.run -.*.swp -*~ *.aux *.bbl *.bib @@ -15,6 +12,10 @@ *.lo[fgt] *.out *.pdf +*.png *.tmp *.toc *.xref +*~ +.*.swp +.run diff -r d450d67ecc82 -r e9d5b4c3d16b en/00book.tex --- a/en/00book.tex Wed Jun 28 20:29:21 2006 -0700 +++ b/en/00book.tex Thu Jun 29 00:32:35 2006 -0700 @@ -1,7 +1,8 @@ \documentclass{book} \usepackage{enumerate} \usepackage{fullpage} -\usepackage{graphics} +\usepackage{ifpdf} +\usepackage{graphicx} \usepackage{newcent} \usepackage{fancyvrb} % leave hyperref until last diff -r d450d67ecc82 -r e9d5b4c3d16b en/99defs.tex --- a/en/99defs.tex Wed Jun 28 20:29:21 2006 -0700 +++ b/en/99defs.tex Thu Jun 29 00:32:35 2006 -0700 @@ -5,11 +5,19 @@ \newcommand{\hgcmdargs}[2]{``\texttt{hg #1 #2}''} \newsavebox{\notebox} -\newenvironment{note}{\begin{lrbox}{\notebox}\begin{minipage}{0.7\textwidth}\textbf{Note:}\space}{\end{minipage}\end{lrbox}\begin{center}\fbox{\usebox{\notebox}}\end{center}} +\newenvironment{note}% + {\begin{lrbox}{\notebox}\begin{minipage}{0.7\textwidth}\textbf{Note:}\space}% + {\end{minipage}\end{lrbox}\fbox{\usebox{\notebox}}} \DefineVerbatimEnvironment{codesample4}{Verbatim}{frame=single,gobble=4,numbers=left,commandchars=\\\{\}} \newcommand{\interaction}[1]{\VerbatimInput[frame=single,numbers=left,commandchars=\\\{\}]{examples/#1.out}} +\ifpdf + \newcommand{\grafix}[1]{\includegraphics[scale=0.2]{#1_pdf.png}} +\else + \newcommand{\grafix}[1]{\includegraphics{#1.png}} +\fi + %%% Local Variables: %%% mode: latex %%% TeX-master: "00book" diff -r d450d67ecc82 -r e9d5b4c3d16b en/Makefile --- a/en/Makefile Wed Jun 28 20:29:21 2006 -0700 +++ b/en/Makefile Thu Jun 29 00:32:35 2006 -0700 @@ -4,6 +4,9 @@ 99defs.tex \ mq.tex +image-sources := \ + mq-stack.svg + example-sources := \ examples/run-example \ examples/mq.qinit-help \ @@ -18,7 +21,7 @@ pdf: pdf/hgbook.pdf -pdf/hgbook.pdf: $(sources) examples +pdf/hgbook.pdf: $(sources) $(image-sources:%.svg=%_pdf.png) examples mkdir -p $(dir $@) pdflatex $(call latex-options,$@) $< || (rm -f $@; exit 1) cp 99book.bib $(dir $@) @@ -42,13 +45,22 @@ perl -pi -e 's/�([0-7][0-9a-f]);/chr(hex($$1))/egi' $(dir $(1))/*.html endef -html/onepage/hgbook.html: $(sources) examples +html/onepage/hgbook.html: $(sources) $(image-sources:%.svg=%.png) examples $(call htlatex,$@,$<) + cp $(image-sources:%.svg=%.png) $(dir $@) -html/split/hgbook.html: $(sources) examples +html/split/hgbook.html: $(sources) $(image-sources:%.svg=%.png) examples $(call htlatex,$@,$<,2) + cp $(image-sources:%.svg=%.png) $(dir $@) -.PHONY: examples +%.png: %.svg + inkscape -D -e $@ $< + +%_pdf.png: %.svg + inkscape -D -d 300 -e $@ $< + +%.eps: %.svg + inkscape -E $@ $< examples: examples/.run @@ -56,4 +68,4 @@ cd examples && ./run-example clean: - rm -rf html pdf *.aux *.dvi *.log *.out examples/*.out examples/.run + rm -rf html pdf *.eps *.png *.aux *.dvi *.log *.out examples/*.out examples/.run diff -r d450d67ecc82 -r e9d5b4c3d16b en/mq-stack.svg --- a/en/mq-stack.svg Wed Jun 28 20:29:21 2006 -0700 +++ b/en/mq-stack.svg Thu Jun 29 00:32:35 2006 -0700 @@ -13,7 +13,8 @@ id="svg2" sodipodi:version="0.32" inkscape:version="0.43" - sodipodi:docname="mq-stack.svg"> + sodipodi:docname="mq-stack.svg" + sodipodi:docbase="/home/bos/hg/hgbook/en"> - - - prevent-compiler-reorder.patch - - - - - fix-memory-leak.patch - - - - forbid-illegal-params.patch - - - - - namespace-cleanup.patch - - - - powerpc-port-fixes.patch - - - - report-devinfo-correctly.patch - + + prevent-compiler-reorder.patch + + namespace-cleanup.patch + + powerpc-port-fixes.patch + + report-devinfo-correctly.patch { { + x="255.26627" + y="248.79449" + style="font-size:61.01318741px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Bitstream Vera Sans">{ patches in series,present in series,but not applied patches applied,changesets present topmostapplied patch 201ad3209902 + y="238.29692">201ad3209902 126b84e593ae + y="267.93872">126b84e593ae a655daf15409 + y="297.58051">a655daf15409 e50d59aaea3a + y="327.22226">e50d59aaea3a + + forbid-illegal-params.patch + + fix-memory-leak.patch diff -r d450d67ecc82 -r e9d5b4c3d16b en/mq.tex --- a/en/mq.tex Wed Jun 28 20:29:21 2006 -0700 +++ b/en/mq.tex Thu Jun 29 00:32:35 2006 -0700 @@ -263,8 +263,8 @@ \subsection{Manipulating the patch stack} The previous discussion implied that there must be a difference -between ``known'' and ``applied'' patches, and there is. MQ can know -about a patch without it being applied in the repository. +between ``known'' and ``applied'' patches, and there is. MQ can +manage a patch without it being applied in the repository. An \emph{applied} patch has a corresponding changeset in the repository, and the effects of the patch and changeset are visible in @@ -287,6 +287,13 @@ or two patches, the output of \hgcmd{qseries} remains the same, while that of \hgcmd{qapplied} has changed. +\begin{figure} + \centering + \grafix{mq-stack} + \caption{Applied and unapplied patches in the MQ patch stack} + \label{fig:mq:stack} +\end{figure} + MQ does not limit you to pushing or popping one patch. You can have no patches, all of them, or any number in between applied at some point in time.