Bug Tracker
I’m currently working on a major new version of the datatool package. This may take a while. Please be patient. (Experimental version available for testing.)
ID | 99🔗 |
---|---|
Date: | 2015-11-12 03:49:52 |
Status | Closed (Fixed) |
Category | datatool |
Version | 2.23 |
Summary | strange behavior of \dtlcompare |
Sign in to subscribe to notifications about this report.
Description
I used the example from the doc-code and I cannot explain the result of\dtlcompare{\mycount}{\noopsort{z}foo}{bar}\number\mycount{}
that should be 1 and not -1 as {z}foo
is greater than bar
.
MWE
Download (886B)
\documentclass[12pt,a4paper,final]{article} \usepackage[utf8]{inputenc} \usepackage[T1]{fontenc} \listfiles \usepackage[verbose]{datatool} \begin{document} \newcount\mycount \newcommand*{\noopsort}[1]{} \verb+\newcommand*{\noopsort}[1]{}+ then \verb+\noopsort{a}foo+ produces the text: foo, however the following \verb+\dtlcompare{\mycount}{\noopsort{a}foo}{bar}\number\mycount+ produces: -1, since the command \verb+\noopsort+ is disregarded when the comparison is made, so \verb+\dtlcompare+ just compares \{a\}foo with bar, and since a is less than b, the first string is considered to be less than the second string. A. result with \verb+\noopsort{a}foo}+ \dtlcompare{\mycount}{\noopsort{a}foo}{bar}\number\mycount{} as expected B. result with \verb+\noopsort{z}foo}+ \dtlcompare{\mycount}{\noopsort{z}foo}{bar}\number\mycount{}. Should it not be 1? \end{document}
Evaluation
I'm sorry, it turns out the documentation was wrong. What actually happens is that commands are treated as though they have a character code of 0. Since this may cause a problem for backward-compatibility for documents that rely on the actual behaviour (rather than the intended behaviour) I've added a switch \ifdtlcompareskipcs
to version 2.32. This is false by default to maintain current behaviour but if you switch it to true (\dtlcompareskipcstrue
) before making the comparison you should get the intended behaviour.
Comments
0 comments.
Add Comment
Page permalink: https://www.dickimaw-books.com/bugtracker.php?key=99