\newcommand{\entry}[4]
{
\hspace{\ls}
\textbf{\MakeUppercase{#1},}\MakeUppercase{#2}
\hfill
\MakeUppercase{#3}
\hspace{\ls}
{#4}
\vspace{-0.7em}
}
If I leave the 4th argument blank, I do not want the space to be shown in the code (i.e. my itemize should appear/start on the line where argument #4 would have been).
\entry
{1}
{2}
{3}
{4}
\begin{itemize}
\item one
\item two
\end{itemize}
\entry{1}{2}{3}{}
\begin{itemize}
\item one
\item two
\end{itemize}

\documentclassand ends with\end{document}? Anyone answering this will want to know what\lsit, at least. – Jan 29 '20 at 05:27