Просмотр исходного кода

seperate auto left-right parens from salign

master
flavis 5 лет назад
Родитель
Сommit
ba8188da5c
1 измененных файлов: 22 добавлений и 2 удалений
  1. +22
    -2
      lecture.cls

+ 22
- 2
lecture.cls Просмотреть файл

@@ -217,15 +217,35 @@
}
% replace all relations with align characters (&) and add the needed padding
\regex_replace_all:nnN
{ (\c{iff}&|&\c{iff}|\c{impliedby}&|&\c{impliedby}|\c{implies}&|&\c{implies}|\c{approx}&|&\c{approx}|\c{equiv}&|&\c{equiv}|=&|&=|\c{le}&|&\c{le}|\c{ge}&|&\c{ge}|&\c{stackrel}{.*?}{.*?}|\c{stackrel}{.*?}{.*?}&|&\c{neq}|\c{neq}&) }
{ (\c{iff}&|&\c{iff}|\c{impliedby}&|&\c{impliedby}|\c{implies}&|&\c{implies}|\c{approx}&|&\c{approx}|\c{equiv}&|&\c{equiv}|=&|&=|\c{le}&|&\c{le}|\c{ge}&|&\c{ge}|&\c{stackrel}{.*?}{.*?}|\c{stackrel}{.*?}{.*?}&|&\c{neq}|\c{neq}&|>&|&>|<&|&<) }
{ \c{kern} \u{l_tmp_dim_needed} \1 \c{kern} \u{l_tmp_dim_needed} }
\l__lec_text_tl
% replace all parantheses with \left( \right)
%\regex_replace_all:nnN { \( } { \c{left}( } \l__lec_text_tl
%\regex_replace_all:nnN { \) } { \c{right}) } \l__lec_text_tl
%\regex_replace_all:nnN { \[ } { \c{left}[ } \l__lec_text_tl
%\regex_replace_all:nnN { \] } { \c{right}] } \l__lec_text_tl
\l__lec_text_tl
}
\cs_generate_variant:Nn \lec_insert_padding:n { V }

\NewEnviron{leftright}
{
\lec_replace_parens:V \BODY
}

% function to replace parens with left right
\cs_new_protected:Nn \lec_replace_parens:n
{
\tl_set:Nn \l__lec_text_tl { #1 }
% replace all parantheses with \left( \right)
\regex_replace_all:nnN { \( } { \c{left}( } \l__lec_text_tl
\regex_replace_all:nnN { \) } { \c{right}) } \l__lec_text_tl
\regex_replace_all:nnN { \[ } { \c{left}[ } \l__lec_text_tl
\regex_replace_all:nnN { \] } { \c{right}] } \l__lec_text_tl
\l__lec_text_tl
}
\cs_generate_variant:Nn \lec_insert_padding:n { V }
\cs_generate_variant:Nn \lec_replace_parens:n { V }

\ExplSyntaxOff


Загрузка…
Отмена
Сохранить