Skip to content

Commit

Permalink
Merge pull request #92 from neilt/fix_footnote_warning
Browse files Browse the repository at this point in the history
Fix LaTeX warnings
  • Loading branch information
neilt authored Apr 4, 2024
2 parents 0331d2d + 9d883e0 commit 4bcefe3
Show file tree
Hide file tree
Showing 7 changed files with 177 additions and 159 deletions.
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,9 +15,9 @@ The source for the LedgerSMB Book can be found on [github](https://github.com/eh
The book should build with any recent LaTeX installation. The book is expected to produce both HTML and PDF and is currently tested with:

* LaTeXML version 0.8.7
* TeXLive 2022
* TeX Live 2022

Note: TexLive 2023 fails to build with LaTeXML 0.8.7. However, LaTeXML 0.8.8 will work with TexLive 2023, it just takes 25 minutes to build. The long build time is an acknowledged bug, but it is not clear if that bug is in LaTeXML or LaTeX.
Note: Tex Live 2023 fails to build with LaTeXML 0.8.7. However, LaTeXML 0.8.8 will work with Tex Live 2023 or 2024, it just takes about 25 minutes to build. The long build time is an acknowledged upstream bug, but it is not clear if that bug is in LaTeXML, LaTeX or when it will be fixed.

All documents can be built locally by running the script `local-build.sh --use-latex-mk`. This will create a directory called `local-build` that contains the book in PDF, single page HTML, and multi-page HTML formats.

Expand Down
20 changes: 10 additions & 10 deletions appendices.tex
Original file line number Diff line number Diff line change
Expand Up @@ -98,8 +98,8 @@ \chapter{Installation}
The project does not recommend using LSMB from any Linux distribution.
\end{enumerate}

\subsection{Docker preview}
\label{sub-installation-docker-preview}
\section{Docker preview}
\label{sec-installation-docker-preview}

The advantage of using docker preview is that all prerequisites are determined and loaded automatically.
This is the quickest way to preview LedgerSMB.
Expand All @@ -126,13 +126,13 @@ \subsection{Docker preview}

For the authoritative installation source see \url{https://github.com/ledgersmb/LedgerSMB/blob/master/README.md}

\subsection{Docker Production}
\label{sub-installation-docker-production}
\section{Docker Production}
\label{sec-installation-docker-production}

See \url{https://github.com/ledgersmb/ledgersmb-docker?tab=readme-ov-file#docker-compose-with-reverse-proxy} for the installation instructions.

\subsection{Native}
\label{sub-installation-native}
\section{Native}
\label{sec-installation-native}

LedgerSMB provides installation tarballs for installing LSMB into the native file system.
This installation method requires experience and detailed knowledge of both the Linux operating system and LedgerSMB.
Expand Down Expand Up @@ -261,13 +261,13 @@ \subsection{Native}
Once all of the prerequisites have been installed the user can proceed by following the install instructions on the web site.
For example, \url{https://ledgersmb.org/content/installing-ledgersmb-111}, starting at "Configuring the PostgreSQL server"

\subsection{Docker Development}
\label{sub-installation-docker-development}
\section{Docker Development}
\label{sec-installation-docker-development}

See \url{https://github.com/ledgersmb/ledgersmb-dev-docker/blob/master/README.md} for the installation instructions.

\subsection{ Linux Distribution}
\label{sub-installation-linux-distribution}
\section{Linux Distribution}
\label{sec-installation-linux-distribution}

This method of installation is not recommended. These old distributions only exist to support existing users that have not yet upgraded.

Expand Down
274 changes: 137 additions & 137 deletions auto-generated/role_list_appendex.tex

Large diffs are not rendered by default.

7 changes: 6 additions & 1 deletion ledgersmb-book.tex
Original file line number Diff line number Diff line change
Expand Up @@ -170,9 +170,14 @@
LedgerSMB \ledgerSMBversion \\
~ \\
\texttt{DRAFT / WORK IN PROGRESS} \\
~ \\
\footnotesize{\emph{See the \hyperref[preface]{Preface} for current status.}}\\
}

\maketitle
\begin{center}
\today
\end{center}

\fi

Expand All @@ -194,7 +199,7 @@ \section*{Preface}
You will find many incomplete sections which should be regarded as an outline for the finished book.
However, some sections are nearly complete.

Because LedgerSMB is undergoing active infrastructure and API changes in 2023, some portions of this book will not be written until those changes are nearing completion.
Because LedgerSMB is undergoing active infrastructure and API changes in 2024, some portions of this book will not be written until those changes are nearing completion.

\section*{Intended audience}
\label{sec-intended-audience}
Expand Down
19 changes: 12 additions & 7 deletions part-administration.tex
Original file line number Diff line number Diff line change
Expand Up @@ -550,7 +550,7 @@ \section{Tax account configuration}
\section{Tax calculation examples}
\label{sec-tax-calculation-examples}

% ### TODO
@@@ TODO

\section{Tax calculation plug-ins}
\label{sec-tax-rule-plugins}
Expand All @@ -567,7 +567,7 @@ \section{Tax calculation plug-ins}
\section{Tax forms}
\label{sec-tax-taxforms}

The tax forms facility exists to help file sales tax forms. It's primarily modelled
The tax forms facility exists to help file sales tax forms. It's primarily modeled
after the 1099 US tax reporting forms functionality, which means that it's cash based.
The fact that it's cash based means that invoices will be included in the tax report
as soon as cash for the invoice is received. Accrual based reporting means that the
Expand Down Expand Up @@ -665,6 +665,7 @@ \section{Definition of price groups\index{price group}}
determining a price for an item through the price matrix.

\section{Using the price matrix\index{price matrix}}
\label{sec-pricing-price-matrix}

At the lower half of the parts and services definition screen, there are two sections; one with the first
heading being ``Vendor'' and the other with the first heading being ``Customer''. These are the vendor and
Expand Down Expand Up @@ -700,26 +701,30 @@ \section{Using the price matrix\index{price matrix}}
\subsection{Price matrix example: simple pricing}

Consider customers A and B and a part with a generic ``Sell price'' of 110.00.
The simplest for of a price matrix for a part, could look like:
The simplest price matrix for a part, could look like:

\begin{table}[H]
\caption{Price matrix configuration}
\caption{Customer specific price matrix}
\begin{tabular}{|ccrrcrrr|}
\hline
\bf Customer & \bf Price group & \bf Discount & \bf Sell price & \bf Currency & \bf From & \bf To & \bf Min Qty \\
\hline
B & \footnote{This value is mutually exclusive with Customer} & & 99.00 & & & & \\
B & & & 99.00 & & & & \\
\hline
\end{tabular}
\end{table}

When creating an invoice for customer A, the part will be listed at 110 while at the
% In the above table this footnote was not being processed correctly
% and I am not sure what ' mutually exclusive' means here.
% \footnote{This value is mutually exclusive with Customer} attached to Price Group

When creating an invoice for customer A (not in the prices matrix), the part will be listed at generic sales price of 110.00 while at the
same time an invoice for customer B lists it at 99.00.

If customer B had been in the ``Frequenters'' price group, and the matrix had looked like this:

\begin{table}[H]
\caption{Price matrix configuration}
\caption{Price group specific price matrix}
\begin{tabular}{|ccrrcrrr|}
\hline
\bf Customer & \bf Price group & \bf Discount & \bf Sell price & \bf Currency & \bf From & \bf To & \bf Min Qty \\
Expand Down
8 changes: 8 additions & 0 deletions part-customization.tex
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,7 @@ \section{Introduction}
@@@TODO: describe where to store this new or overriding code...

\section{Workflow configuration}
\label{sec-customization-workflow-configuration}

LedgerSMB uses the concept of workflows\index{workflows} to manage the document life cycle.
An invoice for example may be \texttt{saved}, \texttt{posted} or \texttt{reversed}. These
Expand Down Expand Up @@ -94,6 +95,7 @@ \section{Workflow configuration}
to define one's own.

\subsection{Workflow observers}
\label{subsec-customization-workflow-observers}

Particularly interesting is the concept of observers\index{workflow observers}:
this functionality allows the application to be extended based a specific action
Expand All @@ -103,6 +105,7 @@ \subsection{Workflow observers}
becoming \texttt{posted}.

\subsubsection{Notes on Quote, Order, AR, AP and GL workflow customization}
\label{subsubsec-customization-workflow-observers-notes}

The actions in the workflows \texttt{order-quote}, \texttt{ar-ap} and \texttt{gl} are
hard coded\footnote{This is not a permanent situation, but rather a consequence of
Expand All @@ -119,6 +122,7 @@ \subsubsection{Notes on Quote, Order, AR, AP and GL workflow customization}
the developer to add behavior on top of what's hard coded.

\section{Document formatters}
\label{sec-customization-document-formatters}

Document formatters transform templates into output documents; e.g. an HTML invoice
template can be transformed into an HTML file with the details of the invoice filled
Expand All @@ -141,6 +145,7 @@ \section{Document formatters}
A custom formatter needs to implement the protocol as documented at \url{https://docs.ledgersmb.org/perl-api/1.11.0/LedgerSMB/Template.pm.html#FORMATS}.

\section{Bank statement importers}
\label{sec-customization-bank-importers}

LedgerSMB comes with three bank statement importers built-in:

Expand Down Expand Up @@ -170,10 +175,12 @@ \section{Bank statement importers}
importer may be necessary.

\section{HTTP request interceptors}
\label{sec-customization-http-requests}

@@@TODO: describe how to add \texttt{Plack::Middleware} instances in the request processing

\section{Outgoing mail transport}
\label{sec-customization-outgoing-mail}

The library used for sending e-mail (\texttt{Email::Sender})
includes a wide variety of transports that can be used to configure the library to (pretend to) send
Expand All @@ -183,6 +190,7 @@ \section{Outgoing mail transport}
this can be achieved by implementing a custom \texttt{Email::Sender::Transport}.

\section{Sales/VAT tax calculation}
\label{sec-customization-sales-tax}

Tax calculations performed for VAT and/or sales taxes have been abstracted into so-called
``tax modules''. An example of a custom tax module can be found in the directory
Expand Down
4 changes: 2 additions & 2 deletions scripts/gather-db-info.pl
Original file line number Diff line number Diff line change
Expand Up @@ -124,10 +124,10 @@ ($file_name, $conn)
$role_desc = make_glossary_entries($role_desc);

# Create an index for the role name
my $index = $ref->{rolename} =~ s/_/ /gr;
my $index = $ref->{rolename} =~ s/_/\\_/gr;

print "Found After Processing: $role_name -> '$role_desc'\n\n";
push(@tex_array, "\\item [$role_name] \\htmlspacing $role_desc \\index{$index}");
push(@tex_array, "\\item [$role_name] \\htmlspacing $role_desc \\index{role $index}");
}
push(@tex_array, description_epilog());
write_file( join ("\n", @tex_array), $file_name);
Expand Down

0 comments on commit 4bcefe3

Please sign in to comment.