Be’ quel codice serviva per un dizionario che aveva i due lemmi (primo e ultimo) elencati agli estremi della testaina, e per motivi vari erano racchiusi dentro scatole di larghezza zero, per non interferire con il numero della pagina che doveva restare nel mezzo, indipendentemente dalle voci da scrivere.
Se metti i due lemmi all’esterno della testaine e il numero di pagina al centro del piedino, (non dal lato sinistro come hai fatto tu) bisogna modificare le definzioni così:
`
\documentclass[a4paper]{book}
\usepackage{multicol,lipsum}
\makeatletter
\newcommand\ultimomark{\expandafter
\@rightmark\botmark\@empty\@empty}
\newcommand\primomark{\expandafter
\@rightmark\firstmark\@empty\@empty}
\newcommand*\ps@dizionario{%
\let\@mkboth\@gobbletwo
\let\chaptermark\@gobble
\let\sectionmark\@gobble
\def\@evenhead{\primomark\ — \ultimomark\hfill}%
\def\@oddhead{\hfill\primomark\ — \ultimomark}%
\def\@oddfoot{\hfill\thepage\hfill}%
\let\@evenfoot\@oddfoot
}%
\makeatother
\newcommand*\lemma[1]{%
\medskip\par\noindent{\bfseries#1}%
\markboth{#1}{#1}%
\quad\ignorespaces}
\begin{document}
\pagestyle{dizionario}
\begin{multicols}{2}
\lemma{Alessio}
\lemma{Barbara}
\lipsum[1-5]
\lemma{Carlo}
\lemma{Dante}
\lemma{Elio}
\lemma{Felice}
\lipsum[1-4]
\lemma{Giulio}
\lemma{Ilaro}
\end{multicols}
\end{document}
`