\documentclass[a4paper]{article}
% generated by Docutils <http://docutils.sourceforge.net/>
\usepackage{cmap} % fix search and cut-and-paste in Acrobat
\usepackage{ifthen}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{amsmath}
\usepackage{graphicx}
\usepackage{moreverb}
\usepackage{longtable,ltcaption,array}
\setlength{\extrarowheight}{2pt}
\newlength{\DUtablewidth} % internal use in tables

%%% Custom LaTeX preamble
% PDF Standard Fonts
\usepackage{mathptmx} % Times
\usepackage[scaled=.90]{helvet}
\usepackage{courier}

%%% User specified packages and stylesheets

%%% Fallback definitions for Docutils-specific commands

% class handling for environments (block-level elements)
% \begin{DUclass}{spam} tries \DUCLASSspam and
% \end{DUclass}{spam} tries \endDUCLASSspam
\ifx\DUclass\undefined % poor man's "provideenvironment"
 \newenvironment{DUclass}[1]%
  {\def\DocutilsClassFunctionName{DUCLASS#1}% arg cannot be used in end-part of environment.
     \csname \DocutilsClassFunctionName \endcsname}%
  {\csname end\DocutilsClassFunctionName \endcsname}%
\fi

% admonition (specially marked topic)
\providecommand{\DUadmonition}[2][class-arg]{%
  % try \DUadmonition#1{#2}:
  \ifcsname DUadmonition#1\endcsname%
    \csname DUadmonition#1\endcsname{#2}%
  \else
    \begin{center}
      \fbox{\parbox{0.9\linewidth}{#2}}
    \end{center}
  \fi
}
% numeric or symbol footnotes with hyperlinks
\providecommand*{\DUfootnotemark}[3]{%
  \raisebox{1em}{\hypertarget{#1}{}}%
  \hyperlink{#2}{\textsuperscript{#3}}%
}
\providecommand{\DUfootnotetext}[4]{%
  \begingroup%
  \renewcommand{\thefootnote}{%
    \protect\raisebox{1em}{\protect\hypertarget{#1}{}}%
    \protect\hyperlink{#2}{#3}}%
  \footnotetext{#4}%
  \endgroup%
}

% inline markup (custom roles)
% \DUrole{#1}{#2} tries \DUrole#1{#2}
\providecommand*{\DUrole}[2]{%
  \ifcsname DUrole#1\endcsname%
    \csname DUrole#1\endcsname{#2}%
  \else
    % backwards compatibility: try \docutilsrole#1{#2}
    \ifcsname docutilsrole#1\endcsname%
      \PackageWarningNoLine{docutils}{Command prefix "docutilsrole" is
         deprecated, \MessageBreak use `\protect\DUrole #1`}
      \csname docutilsrole#1\endcsname{#2}%
    \else%
      #2%
    \fi%
  \fi%
}

% text mode subscript
\ifx\textsubscript\undefined
  \usepackage{fixltx2e} % since 2015 loaded by default
\fi

% title for topics, admonitions, unsupported section levels, and sidebar
\providecommand*{\DUtitle}[2][class-arg]{%
  % call \DUtitle#1{#2} if it exists:
  \ifcsname DUtitle#1\endcsname%
    \csname DUtitle#1\endcsname{#2}%
  \else
    \smallskip\noindent\textbf{#2}\smallskip%
  \fi
}

% titlereference role
\providecommand*{\DUroletitlereference}[1]{\textsl{#1}}

% character width in monospaced font
\newlength{\ttemwidth}
\settowidth{\ttemwidth}{\ttfamily M}

% hyperlinks:
\ifthenelse{\isundefined{\hypersetup}}{
  \usepackage[colorlinks=true,linkcolor=blue,urlcolor=blue]{hyperref}
  \usepackage{bookmark}
  \urlstyle{same} % normal text font (alternatives: tt, rm, sf)
}{}

%%% Body
\begin{document}

In LaTeX, literal blocks can be customized with the \textquotedbl{}literal-block-env\textquotedbl{}
setting. This test file exists to check if the LaTeX writer output compiles
and looks as expected.

Start with a plain literal block:

\begin{quote}
\begin{verbatimtab}
$\sin^2(x)$ and $\cos^2(x)$ equals one:

\[
   \sin^2(x) + \cos^2(x) = 1 % for all x
\]
\end{verbatimtab}
\end{quote}

A latex \textquotedbl{}code-block\textquotedbl{} (set with \textquotedbl{}literal-block-env\textquotedbl{}, if syntax
highlight is \textquotedbl{}none\textquotedbl{}):

\begin{DUclass}{code}
\begin{DUclass}{latex}
\begin{quote}
\begin{verbatimtab}
$\sin^2(x)$ and $\cos^2(x)$ equals one:

\[
   \sin^2(x) + \cos^2(x) = 1 % for all x
\]
\end{verbatimtab}
\end{quote}
\end{DUclass}
\end{DUclass}

A literal block in a table:

\setlength{\DUtablewidth}{\linewidth}
\begin{longtable*}[c]{|p{0.063\DUtablewidth}|p{0.145\DUtablewidth}|p{0.063\DUtablewidth}|}
\hline

test
 & 
\begin{minipage}{8\ttemwidth}
\begin{verbatimtab}
\sin^2 x
\end{verbatimtab}
\end{minipage}
 & 
test
 \\
\hline
\end{longtable*}

A literal block in a table with auto-width columns:

\begin{longtable*}[c]{|l|l|l|}
\hline
test & 
\ttfamily\raggedright
\textbackslash{}sin\textasciicircum{}2~x
 & test \\
\hline
\end{longtable*}

\DUadmonition[note]{
\DUtitle[note]{Note}

A literal block in an admonition:

\begin{quote}
\ttfamily\raggedright
\textbackslash{}sin\textasciicircum{}2~x
\end{quote}
}

Parsed literal block with inline markup and leading whitespace:

\begin{quote}
\ttfamily\raggedright
~~~\emph{emphasis},~\textbf{strong~emphasis},~\texttt{inline~literals},\\
standalone~hyperlinks~(\url{http://www.python.org}),\\
\hyperref[internal]{internal}~and~\href{http://www.python.org/}{external}~hyperlinks,\\
%
\phantomsection\label{internal}internal~hyperlink~targets,\\
images~via~substitution~references~(\includegraphics{../../../docs/user/rst/images/biohazard.png}),\\
footnote~references\DUfootnotemark{footnote-reference-1}{footnote-1}{*},\\
citation~references~(\hyperlink{cit2002}{[CIT2002]}),~and~more.\\
~\\
~~~Here~are~some~explicit~interpreted~text~roles:\\
a~PEP~reference~(\href{http://www.python.org/dev/peps/pep-0287}{PEP~287}),\\
an~RFC~reference~(\href{http://tools.ietf.org/html/rfc2822.html}{RFC~2822}),\\
an~abbreviation~(\DUrole{abbreviation}{abb.}),~an~acronym~(\DUrole{acronym}{reST}),\\
code~(\texttt{\DUrole{code}{print~\textquotedbl{}hello~world\textquotedbl{}}}),\\
maths~$\sin^2(x)$,\\
\textsubscript{subscript}~and~\textsuperscript{superscript},\\
\DUrole{custom}{custom}~\DUrole{custom-role}{roles},~and~explicit~roles~for\\
\DUroletitlereference{Docutils}'~\emph{standard}~\textbf{inline}~\texttt{markup}.
\end{quote}
%
\DUfootnotetext{footnote-1}{footnote-reference-1}{*}{%
This footnote is referenced in a \DUroletitlereference{parsed literal} block.

It contains a literal block:

\begin{quote}
\ttfamily\raggedright
\textbackslash{}sin\textasciicircum{}2~x
\end{quote}
}
\begin{figure}[b]\raisebox{1em}{\hypertarget{cit2002}{}}[CIT2002]
Sample Citation, 2017.
\end{figure}

\end{document}
