diff options
Diffstat (limited to 'macros/latex/contrib/ffcode/ffcode.tex')
-rw-r--r-- | macros/latex/contrib/ffcode/ffcode.tex | 89 |
1 files changed, 89 insertions, 0 deletions
diff --git a/macros/latex/contrib/ffcode/ffcode.tex b/macros/latex/contrib/ffcode/ffcode.tex new file mode 100644 index 0000000000..dcefc53268 --- /dev/null +++ b/macros/latex/contrib/ffcode/ffcode.tex @@ -0,0 +1,89 @@ +% (The MIT License) +% +% Copyright (c) 2021 Yegor Bugayenko +% +% Permission is hereby granted, free of charge, to any person obtaining a copy +% of this software and associated documentation files (the 'Software'), to deal +% in the Software without restriction, including without limitation the rights +% to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +% copies of the Software, and to permit persons to whom the Software is +% furnished to do so, subject to the following conditions: +% +% The above copyright notice and this permission notice shall be included in all +% copies or substantial portions of the Software. +% +% THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +% IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +% FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +% AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +% LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +% OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +% SOFTWARE. + +\documentclass[12pt]{article} +\usepackage[tt=false,type1=true]{libertine} +\usepackage{amsmath} +\usepackage{multicol} +\usepackage{ffcode} +\title{\ff{ffcode}: \LaTeX{} Package \\ for Fixed-Font Code Blocks} +\author{Yegor Bugayenko} +\date{0.1.0 2021/06/10} +\begin{document} +\pagenumbering{gobble} +\raggedbottom +\setlength{\topskip}{0mm} +\setlength{\parindent}{0pt} +\setlength{\columnsep}{32pt} +\setlength{\parskip}{6pt} +\maketitle + +This package helps you write source code in your articles +and make sure it looks nice. Install it from CTAN and then +use like this (pay attention to the \ff{\char`\\ff} command +and the \ff{ffcode} environment): + +\begin{multicols}{2} +\setlength{\parskip}{0pt} +\scriptsize +\raggedcolumns +\begin{verbatim}\documentclass{article} +\usepackage{ffcode} +\begin{document} +The function \ff{fibo()} is recursive: +\begin{ffcode} +void fibo(int n) { + if (n < 2) { + return n; |$\label{ln:ret}$| + } + return fibo(n - 1) + fibo(n - 2); +} +\end{ffcode} +The line~\ref{ln:ret} terminates it. +\end{document} +\end{verbatim} + +\columnbreak + +The function \ff{fibo()} is recursive: + +\begin{ffcode} +void fibo(int n) { + if (n < 2) { |$\label{ln:ret}$| + return n; + } + return fibo(n - 1) + fibo(n - 2); +} +\end{ffcode} + +The line~\ref{ln:ret} terminates it. +\end{multicols} + +You have to run \ff{pdflatex} with the \ff{--shell-escape} flag +in order to let \ff{minted} (the package we use) to run Pygments +and format the code. If you don't want this to happen, +just use the \ff{nopygments} option. + +More details about this package you can find +in the \ff{yegor256/ffcode} GitHub repository. + +\end{document}
\ No newline at end of file |