summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/support/latexindent/sec-conclusions-know-limitations.tex
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/doc/support/latexindent/sec-conclusions-know-limitations.tex')
-rw-r--r--Master/texmf-dist/doc/support/latexindent/sec-conclusions-know-limitations.tex18
1 files changed, 17 insertions, 1 deletions
diff --git a/Master/texmf-dist/doc/support/latexindent/sec-conclusions-know-limitations.tex b/Master/texmf-dist/doc/support/latexindent/sec-conclusions-know-limitations.tex
index 1b97f41128d..897e519eddf 100644
--- a/Master/texmf-dist/doc/support/latexindent/sec-conclusions-know-limitations.tex
+++ b/Master/texmf-dist/doc/support/latexindent/sec-conclusions-know-limitations.tex
@@ -3,7 +3,23 @@
There are a number of known limitations of the script, and almost certainly quite a
few that are \emph{unknown}!
- The main limitation is to do with efficiency, particularly when the \texttt{-m}
+ The main limitation is to do with the alignment routine discussed on \cpageref{yaml:lookforaligndelims}; for example,
+ consider the file given in \cref{lst:matrix2}.
+
+ \cmhlistingsfromfile*{demonstrations/matrix2.tex}{\texttt{matrix2.tex}}{lst:matrix2}
+
+ The default output is given in \cref{lst:matrix2-default}, and it is clear that the alignment routine
+ has not worked as hoped, but it is \emph{expected}.
+ \cmhlistingsfromfile*{demonstrations/matrix2-default.tex}{\texttt{matrix2.tex} default output}{lst:matrix2-default}
+
+ The reason for the problem is that when \texttt{latexindent.pl} stores its code blocks (see \vref{tab:code-blocks})
+ it uses replacement tokens. The alignment routine is using the \emph{length of the replacement token} in its measuring -- I hope
+ to be able to address this in the future.
+
+ There are other limitations to do with the multicolumn alignment routine (see \vref{lst:tabular2-mod2}); in particular,
+ when working with codeblocks in which multicolumn commands overlap, the algorithm can fail.
+
+ Another limitation is to do with efficiency, particularly when the \texttt{-m}
switch is active, as this adds many checks and processes. The current implementation
relies upon finding and storing \emph{every} code block (see the discussion on \cpageref{page:phases});
it is hoped that, in a future version, only \emph{nested} code blocks will need