% Vigenère square, https://en.wikipedia.org/wiki/Vigenère_cipher
% https://tex.stackexchange.com/questions/583857/

\useOpTeX
\def\list{ABCDEFGHIJKLMNOPQRSTUVWXYZ}
\def\cyclelist#1#2\relax{\def\list{#2#1}}
\def\fr#1{\hbox to1.3em{\hss#1\hss\vrule height10pt depth4pt}}

\vbox{
   \hbox{\ea\foreach\list \do{\hbox to1.3em{\hss\bf #1\hss}}}
   \smallskip\hrule
   \ea\foreach\list \do{%
      \hbox{\llap{\bf#1 }\vrule\ea\foreach\list \do{\fr{##1}}}
      \hrule
      \ea\cyclelist\list \relax
   }%
}

\end

