>>760
\myvert みたいにしてしまうことも出来るが、\vert を独自マクロに書き換える事も出来るし、
文字「|」をマクロみたいにTeXに扱わせることが出来る
(文字「|」を、「制御綴り control sequence」のようにTeXが解釈するようにする
事も出来るということ)。

左の括弧が始まる時に、括弧の大きさを変数に入れておけば、真ん中の棒を
その変数に合わせたサイズにしてしまうことを、やろうと思えば出来る。


集合の記号とは少し違うが、本質的に同じ事をやっているのが、\Braket マクロ。
platex でも、braket.sty で使える。

マクロ名を何も書かないで、{・・・} と書くと、中の部分は、C言語のローカル変数の
スコープのような感じになる。そこで変数を定義すると、ローカル変数のようになり、
外部には漏れない。だから、その変数の値で、真ん中の棒の大きさを変える事が出来るはず。

左括弧のマクロの定義部分に、\bgroupを書き、
右括弧のマクロの定義部分に、\egroupを書けば、そのような事が出来ると思われる。

大きさを取得するには、\setbox0=\hbox{・・・} として、\ht0 とすると、・・・ の部分の高さが
取得できるハズ。これを利用すると、括弧の大きさを自動選択することも出来ると思われる。
\newbox\toto として、\setbox\toto とすると、0 以外の番号を自動的にアロケートできる。
番号は、0〜255が使える。