LINUX.ORG.RU

LaTeX таблица и условная компиляция

 ,


0

2

Всем привет!

Работаю в LaTeX, собираю pdf с помощью pdfLaTeX.

Бьюсь над проблемой и не знаю как решить. Книжки почитал. LaTeX - глухо, и кроме \protect там помочь нечем. Про TeX читаю, но мало что понятно. И так проблема.

Есть таблицы tabular или longtable. В этих таблицах требуется в зависимости от входных параметров показывать или не показывать строки. По тексту пользуюсь командой \IfSubStr из пакета xstrings, но когда этот самый \IfSubStr отказался работать внутри таблицы, я почесал маковку и полез читать. Положение спасла TeX-овская команда \ifnum, но это дико неудобно с точки зрения описания условно-компилируемого текста. Поэтому вопрос, как оно работает и чем ему помочь.

%Пример с ifnum (работает, строка исчезает если \Param != 1)
% строка таблицы
\ifnum1=\Param \hline Имя строки & 
\rMin\ $\div$ \rMax~\rUnit, с шагом \rStep~\rUnit\\
\fi
%Пример с IfSubStr (работает, но можно менять только данные ячейки)
% строка таблицы
\hline Имя строки & 
\IfSubStr{\ParamX}{A}{Параметр содержита А}{}%
\IfSubStr{\ParamX}{B}{Параметр содержит B}{}%\\
%Пример с IfSubStr (не работает, протект не помагает)
% строка таблицы
\IfSubStr{\Param}{Значение}{\hline Параметр & \rMin\ $\div$ \rMax~\rUnit, с шагом \rStep~\rUnit\\}{}

Его я уже перетусовывал как мог. Сразу оговорюсь что документ сложный по своей начинке и моя конечная цель сделать его читаемым в том числе и после параметризации.

Ответ на: комментарий от Eddy_Em

Eddy_Em, я ищу подстроку в строке. Насколько понял \if и \ifx работают с символами. Т.е. if то мне пойдет только через loop, а есть ли смысл переписывать функцию \IfSubStr - пока кажется что нет. Можно ли посмотреть реализацию IfSubStr в самом xstrings?

tenzor85
() автор топика
Ответ на: комментарий от tenzor85

подстроку в строке

Нихрена себе! Читай Кнута. Это очень тяжело реализовать, но возможно.

Можно ли посмотреть реализацию IfSubStr в самом xstrings?

Никто не запрещает: читай исходник пакета. Но я в такое не влезаю, т.к. нафиг оно мне не нужно.

Eddy_Em ☆☆☆☆☆
()

IMHO, тебе будет проще и правильнее предварительно отфильтровать данные тем же грепом, а потом включать всё

anonymous
()
Ответ на: комментарий от anonymous

tex-файл с заданными параметрами генерируется питоновским скриптом, можно и в питоне все это сделать. И там это будет на порядок проще. Но тогда сам документ единый и целый со всеми его зависимостями скроется в дебрях питона. Сейчас это не так. Есть еще альтернатива- питон внутри ТеХ. Но пока не работает.

tenzor85
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.