von lizagliza » Do 29. Jul 2021, 11:18
Danke erstmal einen Rahmen habe ich jetzt einfach mit der Optiion [frame=single].
Allerdings ist der Rahmen jetzt immer an Stellen an denen ein Kommentar (in grün) steht auch grün.
\documentclass[11pt, a4paper]{scrreprt}
\usepackage[utf8]{inputenc}
%\usepackage[ansinew]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel}
\usepackage{amsmath,amssymb,amstext}
\usepackage{scrlayer-scrpage}
\usepackage{graphicx} %Bilder einbinden
\usepackage{amsthm}
\usepackage{color}
\usepackage{array}
\usepackage{floatrow}
\usepackage{capt-of}
\pagestyle{scrheadings}
\clearpairofpagestyles
\chead{\headmark}
\cfoot[\pagemark]{\pagemark}
\usepackage{hyperref}
%für pseudocode
\usepackage{algorithm}
\usepackage{algorithmic}
\usepackage{lmodern}
\usepackage[list=true, font=large, labelfont=bf,
labelformat=brace, position=top]{subcaption} %Damit Subtabellen beschriftet sind
%Damit Subtabellen nummeriert werden:
\DeclareCaptionSubType*[arabic]{table}
\captionsetup[subtable]{labelformat=simple,labelsep=colon}
%um Matlab-code einzubinden, sogar farbig
\definecolor{mygreen}{RGB}{28,172,0} % color values Red, Green, Blue
\definecolor{mylilas}{RGB}{170,55,241}
% Paket zur besseren Implementierung von Code in den Fließtext
\usepackage{fancyvrb}
\usepackage{listings}
\lstset{language=Python,%
%basicstyle=\color{red},
breaklines=true,%
morekeywords={matlab2tikz},
keywordstyle=\color{blue},%
morekeywords=[2]{1}, keywordstyle=[2]{\color{black}},
identifierstyle=\color{black},%
stringstyle=\color{mylilas},
commentstyle=\color{mygreen},%
showstringspaces=false,%without this there will be a symbol in the places where there is a space
numbers=left,%
numberstyle={\tiny \color{black}},% size of the numbers
numbersep=9pt, % this defines how far the numbers are from the text
emph=[1]{for,end,break},emphstyle=[1]\color{red}, %some words to emphasise
%emph=[2]{word1,word2}, emphstyle=[2]{style},
}
\begin{document}
\begin{lstlisting}[frame=single]
# Def Mesh
mesh = UnitCubeMesh(5, 5, 5)
#mesh = UnitCubeMesh(10, 10, 10)
print('dim mesh:', mesh.geometry().dim()) # Zeigt die Dimension des mesh an
#Definiere Funktionenraume
\end{lstlisting}
erläuterung ...
\begin{lstlisting}[frame=single]
#Definiere Funktionenraume
\end{lstlisting}
\begin{lstlisting}[frame=single]
# Definiere Randwerte
def boundary(x, on_boundary):
return on_boundary
w = Function(W)
bc = DirichletBC(W, w, boundary
\end{lstlisting}
\end{document}
was ich aber irgendwie nicht hinbekomme ist, dass wenn ich das Splitte in einzelne Blöcke um dazwischen den Code zu erläutern usw., dass dann die Zeilen weitergezählt werden statt wieder bei 1 beginnen. Geht das irgendwie automatisch? Alternativ würde mir manuell natürlich auch genügen
Vielen Dank und liebe grüße
Danke erstmal :) einen Rahmen habe ich jetzt einfach mit der Optiion [frame=single].
Allerdings ist der Rahmen jetzt immer an Stellen an denen ein Kommentar (in grün) steht auch grün.
[code]
\documentclass[11pt, a4paper]{scrreprt}
\usepackage[utf8]{inputenc}
%\usepackage[ansinew]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel}
\usepackage{amsmath,amssymb,amstext}
\usepackage{scrlayer-scrpage}
\usepackage{graphicx} %Bilder einbinden
\usepackage{amsthm}
\usepackage{color}
\usepackage{array}
\usepackage{floatrow}
\usepackage{capt-of}
\pagestyle{scrheadings}
\clearpairofpagestyles
\chead{\headmark}
\cfoot[\pagemark]{\pagemark}
\usepackage{hyperref}
%für pseudocode
\usepackage{algorithm}
\usepackage{algorithmic}
\usepackage{lmodern}
\usepackage[list=true, font=large, labelfont=bf,
labelformat=brace, position=top]{subcaption} %Damit Subtabellen beschriftet sind
%Damit Subtabellen nummeriert werden:
\DeclareCaptionSubType*[arabic]{table}
\captionsetup[subtable]{labelformat=simple,labelsep=colon}
%um Matlab-code einzubinden, sogar farbig
\definecolor{mygreen}{RGB}{28,172,0} % color values Red, Green, Blue
\definecolor{mylilas}{RGB}{170,55,241}
% Paket zur besseren Implementierung von Code in den Fließtext
\usepackage{fancyvrb}
\usepackage{listings}
\lstset{language=Python,%
%basicstyle=\color{red},
breaklines=true,%
morekeywords={matlab2tikz},
keywordstyle=\color{blue},%
morekeywords=[2]{1}, keywordstyle=[2]{\color{black}},
identifierstyle=\color{black},%
stringstyle=\color{mylilas},
commentstyle=\color{mygreen},%
showstringspaces=false,%without this there will be a symbol in the places where there is a space
numbers=left,%
numberstyle={\tiny \color{black}},% size of the numbers
numbersep=9pt, % this defines how far the numbers are from the text
emph=[1]{for,end,break},emphstyle=[1]\color{red}, %some words to emphasise
%emph=[2]{word1,word2}, emphstyle=[2]{style},
}
\begin{document}
\begin{lstlisting}[frame=single]
# Def Mesh
mesh = UnitCubeMesh(5, 5, 5)
#mesh = UnitCubeMesh(10, 10, 10)
print('dim mesh:', mesh.geometry().dim()) # Zeigt die Dimension des mesh an
#Definiere Funktionenraume
\end{lstlisting}
erläuterung ...
\begin{lstlisting}[frame=single]
#Definiere Funktionenraume
\end{lstlisting}
\begin{lstlisting}[frame=single]
# Definiere Randwerte
def boundary(x, on_boundary):
return on_boundary
w = Function(W)
bc = DirichletBC(W, w, boundary
\end{lstlisting}
\end{document}
[/code]
was ich aber irgendwie nicht hinbekomme ist, dass wenn ich das Splitte in einzelne Blöcke um dazwischen den Code zu erläutern usw., dass dann die Zeilen weitergezählt werden statt wieder bei 1 beginnen. Geht das irgendwie automatisch? Alternativ würde mir manuell natürlich auch genügen
Vielen Dank und liebe grüße