[Tex/LaTex] How to left-justify the date in document class letter

horizontal alignmentletterstitles

Really basic question, but I'm having trouble finding documentation. How can I left-justify the date in \documentclass{letter}?

Best Answer

The date is set under \raggedleft by default, forcing it to be flush-right with the text block. This forms part of the \opening command which would have to be redefined to suit your needs:

enter image description here

\documentclass{letter}

\signature{First last name}
\address{First last name \\ Street name \\ City \\ Country}

\makeatletter
\renewcommand*{\opening}[1]{\ifx\@empty\fromaddress
  \thispagestyle{firstpage}%
    {\raggedleft\@date\par}%
  \else  % home address
    \thispagestyle{empty}%
    {\raggedleft\begin{tabular}{l@{}}\ignorespaces
      \fromaddress \\*[2\parskip]%
      \end{tabular}\par
     \raggedright\@date\par}%
  \fi
  \vspace{2\parskip}%
  {\raggedright \toname \\ \toaddress \par}%
  \vspace{2\parskip}%
  #1\par\nobreak}
\makeatother

\begin{document}

\begin{letter}{Something \\ That \\ Is \\ Important}
\opening{Dear Who Cares}

Can you help me move the sender's address to the left? It is too close to the right edge. I would like to make sure that it does not go more to the right than does the text in the body of the letter.

\closing{Sincerely,}
\end{letter}

\end{document}

Regardless, for regular letters I'd advise against using the letter class, as you can very comfortably set a letter in the default article class.