diff --git a/lecture.cls b/lecture.cls index 86d111f..fa32f62 100644 --- a/lecture.cls +++ b/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 +