[Tex/LaTex] Left aligning text inside multicols environment

horizontal alignmentmulticol

I am using the multicol package. I was wondering if anyone knew how to correct the ugly looking spacing of words. It tries to align them so that each line takes up a column but that means some text will be spaced very widely apart and looks dumb. Is there a way to make it so that the text is not justified, and rather aligned to the left of the column?

As you can see some of the items in here are terribly spaced. Please help. Here is my code for reference.

\section{APPLICABLE \\ SKILLS}{\sl Educational and Practical Experience}
    \begin{multicols}{3}
    \begin{itemize} \itemsep -2pt
    \item SDS-PAGE
    \item Western Blot
    \item Antibody affinity chromatography
    \item Differential and Density gradient centrifugation
    \item Immunoprecipitation
    \item Genome sequencing
    \item Genomic analysis (copy number, SNP-detection, IGV, samtools, picard, etc.)
    \item Mass spec
    \item Bioinformatics
    \item Numerical analysis
    \item Software design
    \item High, medium, and low level programming design
    \item Linear algebra
    \item Graph theory
    \item Regression analysis
    \end{itemize}
    \end{multicols}

Best Answer

You may use the \raggedright command (or the \RaggedRight variant of the ragged2e package which allows hyphenation) at the begin of a single multicols environment. You may also "patch" the multicols environment using \AtBeginEnvironment which is provided by the etoolbox package.

\documentclass{article}

\usepackage{multicol}

\usepackage{ragged2e}

\usepackage{etoolbox}
\AtBeginEnvironment{multicols}{\RaggedRight}

\begin{document}

\section{APPLICABLE \\ SKILLS}

{\slshape Educational and Practical Experience}

\begin{multicols}{3}
\begin{itemize} \itemsep -2pt
\item SDS-PAGE
\item Western Blot
\item Antibody affinity chromatography
\item Differential and Density gradient centrifugation
\item Immunoprecipi\-tation
\item Genome sequencing
\item Genomic analysis (copy number, SNP-detection, IGV, samtools, picard, etc.)
\item Mass spec
\item Bioinformatics
\item Numerical analysis
\item Software design
\item High, medium, and low level programming design
\item Linear algebra
\item Graph theory
\item Regression analysis
\end{itemize}
\end{multicols}

\end{document}

enter image description here

EDIT: As pointed out by egreg, another possibility is to define a new raggedmulticols environment (use it like multicols in the document body):

\newenvironment{raggedmulticols}[1]{%
  \RaggedRight
  \begin{multicols}{#1}%
}{%
  \end{multicols}%
}