Modify spacings in listing (itemize/enumerate) environments for LaTeX Beamer

I don’t usually worry about display options in LaTeX since it does a good job most of the time. However, when I write presentations using LaTeX Beamer, I make use of the itemize and enumerate environments quite often to list ideas, and the default setting in most of the templates lack generous spacing between items and between nested lists. The enumitem is the preferred method to modify spacing properties in list environments for LaTeX documents. However, Beamer has its own definitions for these environments for use with overlays, etc.

I posted questions regarding how to do so in Beamer here and here. Here is the complete solution. Place the following in the preamble of the document:

 <pre class="src src-sh">%% SPACING BETWEEN ITEMS FOR BEAMER

%% following lets me add length between items %% % \let\oldframe\frame % \renewcommand{\frame}{ % \oldframe % \let\olditemize\itemize % %%\renewcommand\itemize{\olditemize\addtolength{\itemsep}{0.5\baselineskip}} % \renewcommand\itemize{\olditemize\addtolength{\parskip}{0.5\baselineskip}} %% this affects nested list (itemize) as well % } \newlength{\wideitemsep} \setlength{\wideitemsep}{\itemsep} \addtolength{\wideitemsep}{0.5\baselineskip} \let\olditem\item \renewcommand{\item}{\setlength{\itemsep}{\wideitemsep}\olditem} %%\usepackage{enumitem} %% traditional way to modify listing (itemize and enumerate) properties…but beamer has its own definition %% NESTED LISTS %% \setbeamertemplate{itemize/enumerate subbody begin}{\vspace{0.5\baselineskip}} \setbeamertemplate{itemize/enumerate subbody end}{\vspace{0.5\baselineskip}} %% MORE OPTIONS

Similar modifications for Beamer are illustrated here.

spacing between items in itemize or enumerate environments (lists)

In LaTeX Beamer, I wanted to adjust the spacing between items in an itemize environment. This post shows how to do it for each individual itemize environment:

 <pre class="src src-sh">\begin{itemize}\addtolength{\itemsep}{-0.5\baselineskip}

\item one \item two \end{itemize}

To do it globally, one can use the enumitem environment per this post; one can actually change lots of feature using enumitem. However, it does not work with LaTeX Beamer since Beamer defines itemize in its frame environment. To change itemsep globally, this post suggests the following in the document’s preamble:

 <pre class="src src-sh">documentclass{beamer}

\newlength{\wideitemsep} \setlength{\wideitemsep}{\itemsep} \addtolength{\wideitemsep}{100pt} \let\olditem\item \renewcommand{\item}{\setlength{\itemsep}{\wideitemsep}\olditem}