summaryrefslogtreecommitdiffstats
path: root/templates/tex.jinja2
diff options
context:
space:
mode:
Diffstat (limited to 'templates/tex.jinja2')
-rw-r--r--templates/tex.jinja2122
1 files changed, 102 insertions, 20 deletions
diff --git a/templates/tex.jinja2 b/templates/tex.jinja2
index 998ba37..94deb20 100644
--- a/templates/tex.jinja2
+++ b/templates/tex.jinja2
@@ -2,14 +2,45 @@
\texttt{((( tex_escape(function_name) )))}:
((* if function_contents["present"] *))
- Arguments: \texttt{((( tex_escape(function_contents["arguments"]) )))}
+ \begin{itemize}
+ \item Arguments: \pyth{((( function_contents["arguments"] )))}
+ \item Documentation: ((( len_documentation(function_contents["documentation"]["comments"], function_contents["documentation"]["doc"]) ))) characters long
+ ((* if tex_show_full_docs == "True" *))
+
+ \textbf{Comments:}
+ ((*- if function_contents["documentation"]["comments"] == "None" *))
+ \errortext{No comments present.}
+ ((* else *))
+ \begin{lstlisting}
+((( function_contents["documentation"]["comments"] )))
+ \end{lstlisting}
+ ((* endif *))
+
+ \textbf{Docstring}:
+ ((*- if function_contents["documentation"]["doc"] == "None" *))
+ \errortext{No docstring present.}
+ ((* else *))
+ \begin{lstlisting}
+((( function_contents["documentation"]["doc"] )))
+ \end{lstlisting}
+ ((* endif *))
+ ((* endif *))
+ \item Code: ((( get_source_numlines(function_contents["source_code"]) )))
+ ((* if tex_show_source == "True" *))
+ \begin{python}
+((( function_contents["source_code"] )))
+ \end{python}
+ ((* endif *))
+ \end{itemize}
((* else *))
- \errortext(Function \texttt{((( tex_escape(function_name) )))} not present.)
+ \errortext{((( x ))) \texttt{((( tex_escape(function_name) )))} not present.}
((* endif *))
((* endmacro *))
\documentclass{article}
+\usepackage{python-latex-highlighting/pythonhighlight}
+
\usepackage[margin=1in]{geometry} % margins
\usepackage{multicol} % columns
\usepackage{float} % layout
@@ -30,7 +61,9 @@ breaklines=true
\begin{document}
+((* if tex_columns != "1" *))
\begin{multicols}{((( tex_columns )))}
+((* endif *))
\maketitle
\section{Class Tree}
@@ -64,13 +97,14 @@ breaklines=true
((( files_contents["exception"]["traceback"] )))
\end{lstlisting}
((* else *))
- \textbf{Documentation:}
+ \begin{itemize}
+ \item \textbf{Documentation:}
((( len_documentation(files_contents["documentation"]["comments"], files_contents["documentation"]["doc"]) ))) characters long
((* if tex_show_full_docs == "True" *))
- \textbf{Comments:}
- ((* if files_contents["documentation"]["comments"] == "None" *))
+ \item \textbf{Comments:}
+ ((*- if files_contents["documentation"]["comments"] == "None" *))
\errortext{No comments present.}
((* else *))
\begin{lstlisting}
@@ -78,35 +112,39 @@ breaklines=true
\end{lstlisting}
((* endif *))
- \textbf{Docstring:}
- ((* if files_contents["documentation"]["doc"] == "None" *))
+ \item \textbf{Docstring:}
+ ((*- if files_contents["documentation"]["doc"] == "None" *))
\errortext{No docstring present.}
((* else *))
\begin{lstlisting}
((( files_contents["documentation"]["doc"] )))
\end{lstlisting}
((* endif *))
+
((* endif *))
+ \end{itemize}
((* if "classes" in files_contents.keys() *))
\subsubsection{Classes}
((* set flat_classes = flatten_struct(files_contents["classes"]) *))
((* for class_name, class_contents in flat_classes.items() *))
+ \begin{itemize}
+
-
- \texttt{((( class_name )))}:
+ \item \texttt{((( class_name )))}:
((* if class_contents["present"] *))
- \textbf{Documentation:}
-
+ \begin{itemize}
+ \item \textbf{Documentation:}
((( len_documentation(class_contents["documentation"]["comments"], class_contents["documentation"]["doc"]) ))) characters long
+
((* if tex_show_full_docs == "True" *))
- \textbf{Comments:}
+ \item \textbf{Comments:}
- ((* if class_contents["documentation"]["comments"] == "None" *))
+ ((* if class_contents["documentation"]["comments"] == "None" -*))
\errortext{No comments present.}
((* else *))
\begin{lstlisting}
@@ -115,9 +153,9 @@ breaklines=true
((* endif *))
- \textbf{Docstring:}
+ \item \textbf{Docstring:}
- ((* if class_contents["documentation"]["doc"] == "None" *))
+ ((* if class_contents["documentation"]["doc"] == "None" -*))
\errortext{No docstring present.}
((* else *))
\begin{lstlisting}
@@ -126,15 +164,16 @@ breaklines=true
((* endif *))
((* if "methods" in class_contents.keys() *))
- \textbf{Methods:}
+ \item \textbf{Methods:}
((* set flat_methods = flatten_struct(class_contents["methods"]) *))
+ \begin{itemize}
((* for method_name, method_contents in flat_methods.items() *))
- ((( expand_function(method_name, method_contents, x = "Method") )))
+ \item ((( expand_function(method_name, method_contents, x = "Method") )))
((* endfor *))
-
+ \end{itemize}
((* endif *))
-
+ \end{itemize}
((* endif *))
((* else *))
@@ -143,12 +182,53 @@ breaklines=true
((* endif *))
-
+ \end{itemize}
((* endfor *))
((* endif *))
+ ((* if "functions" in files_contents.keys() *))
+ \subsubsection{Functions}
+ ((* set flat_functions = flatten_struct(files_contents["functions"]) *))
+ \begin{itemize}
+ ((* for function_name, function_contents in flat_functions.items() *))
+ \item ((( expand_function(function_name, function_contents) )))
+ ((* endfor *))
+ \end{itemize}
+ ((* endif *))
+
+ \subsubsection{Runtime Analysis}
+ ((* set flat_runtime = flatten_struct(files_contents["run"]) *))
+ \begin{itemize}
+ ((* for cmd, runtime_contents in flat_runtime.items() *))
+ \item Command: \texttt{((( tex_escape(cmd) )))}
+ \item Monitor:
+ ((*- if "monitor" in runtime_contents.keys() *))
+ \texttt{((( tex_escape(runtime_contents["monitor"]) )))}
+ ((*- else *))
+ stdout
+ ((*- endif *))
+ \item Regexes:
+ ((* for regex_, results in runtime_contents["regexes"].items() *))
+ \begin{itemize}
+ \item \texttt{((( tex_escape(regex_) )))}:
+ \begin{itemize}
+ \item Found occurrences: ((( len_(results) )))
+ ((* if txt_show_all_regex_occurrences == "True" and len_(results) > 0 *))
+ \item Occurences list:
+ \begin{enumerate}
+ ((* for result in results *))
+ \item \texttt{((( tex_escape(result.replace("\n", "\\n")) )))}
+ ((* endfor *))
+ \end{enumerate}
+ ((* endif *))
+ \end{itemize}
+ \end{itemize}
+ ((*- endfor -*))
+ ((* endfor *))
+ \end{itemize}
+
((* endif *))
((* else *))
\errortext{File is not present.}
@@ -162,6 +242,8 @@ breaklines=true
\includepdf[pages={1-},scale=1.0]{((( junit_xml_to_html(test_results["junitxml"], student_no) )))}
((* endif *))
+((* if tex_columns != "1" *))
\end{multicols}
+((* endif *))
\end{document} \ No newline at end of file