Hallo liebes Forum! Ich habe mir zwei sehr einfache Umgebungen definiert. Diese würde ich gerne etwas modifizieren und um jeweils ein Argument erweitern. Zunächst mein Minimalbeispiel: Open in writeLaTeX
\documentclass[paper=a4,10pt,oneside,fleqn]{scrreprt} \usepackage[ngerman]{babel} \usepackage[latin1]{inputenc} \usepackage{csquotes} \usepackage[T1]{fontenc} \usepackage{xcolor} \usepackage{framed} \usepackage{geometry} \geometry{includehead,includefoot,tmargin=20mm,bmargin=20mm,lmargin=40mm,rmargin=20mm} \setlength{\parindent}{0pt} \setlength{\parskip}{10pt} \newenvironment{umg1}{\underline{Name1:}}{} \definecolor{shadecolor}{rgb}{.85,.85,.85} \newenvironment{umg2}{\begin{shaded} \underline{Name2:}}{\end{shaded}} \begin{document} Text ohne Umgebung \begin{umg1} Text. Der Text kann auch über mehrere Zeilen gehen. Und auch Mathe-Umgebungen haben wie: \[1+1=2\] Oder auch was anderes. \end{umg1} \begin{umg2} Text. Der Text kann auch über mehrere Zeilen gehen. Und auch Mathe-Umgebungen haben wie: \[1+1=2\] Oder auch was anderes. \end{umg2} \end{document} 1.) Erstens hätte ich gerne für beide Umgebungen umg1 und umg2, dass man am linken Rand noch optional einen sehr kurzen Text (oder ein Symbol) hinzufügen kann. Soll hießen: Ich würde bspw. dann die Umgebung mit begin{umg1}[$Downarrow$] aufrufen. Das hätte dann zur Folge, dass im linken Seitenrand, auf der Höhe von "Name1", ein Downarrow erscheint. 2.) Zweitens ich gerne, dass bei der Umgebung umg2 die graue Hintergrundfarbe über die gesamte breite der Seite verläuft. Könnt ihr mir hierbei mit einem konkreten Vorschlag Weiterhelfen? Wichtig ist mir vor allem Punkt 1) - Punkt 2) ist nice-to-have. Vielen lieben Dank im Voraus! Martin |
Bitte nicht Ich habe Open in writeLaTeX
\documentclass[parskip=half]{scrartcl} \usepackage[framemethod=tikz]{mdframed} \newenvironment{umg1}[1][]{% \noindent\llap{\smash{#1}\quad}% \underline{Name1:}% }{} \definecolor{shadecolor}{rgb}{.85,.85,.85} \newlength\lrskip \setlength\lrskip{10cm} \newenvironment{umg2}{ \begin{mdframed}[ hidealllines=true, leftmargin=-\lrskip, innerleftmargin=\lrskip, rightmargin=-\lrskip, innerrightmargin=\lrskip, backgroundcolor = shadecolor ]% \underline{Name2:}% }{ \end{mdframed} } \begin{document} Text ohne Umgebung \begin{umg1}[$\Downarrow$] Text. Der Text kann auch über mehrere Zeilen gehen. Und auch Mathe-Umgebungen haben wie: \[1+1=2\] Oder auch was anderes. \end{umg1} \begin{umg2} Text. Der Text kann auch über mehrere Zeilen gehen. Und auch Mathe-Umgebungen haben wie: \[1+1=2\] Oder auch was anderes. \end{umg2} \end{document} beantwortet 23 Aug '14, 12:21 Henri @Henri! Vielen Dank! Das ist sehr nett! Funktioniert alles einwandfrei und genau so wie ich es wünscht. Nochmals herzlichen Dank, das hat mir wirklich sehr geholfen. Martin P.S: @Johannes: Dir auch vielen Dank!
(23 Aug '14, 12:25)
maja
Nu, irgendwas hab ich vorhin falsch gemacht. Ich wollte den gleichen Ansatz mit
(23 Aug '14, 16:10)
Johannes
|
Ich habe eine neue Umgbung mit Befehlen des Paketes Urspünglich wollte ich mir ja TikZ zu nutze machen, aber dafür reicht mein Foo nicht aus. Vielleicht postet ja einer der anderen Helfer eine TikZ-lastige Lösung, und liefert ein schickeres Ergebnis. Vielleicht fallen dieser Person dann auch bessere Namen ein, meine Phantasie ist heute sehr begrenzt ;-) Wie ich sehe wurde dein Problem schon ganz gut gelöst, schau dir bitte trotzdem mal Open in writeLaTeX
\documentclass[10pt,fleqn]{scrreprt} \usepackage[ngerman]{babel} \usepackage[utf8]{inputenc} \usepackage[T1]{fontenc} \usepackage{blindtext} %\usepackage{showframe} \usepackage{geometry} \geometry{includehead,includefoot,tmargin=20mm,bmargin=20mm,lmargin=40mm,rmargin=20mm} %\setlength{\parindent}{0pt} %\setlength{\parskip}{10pt} \KOMAoption{parskip}{half} \newenvironment{umg1}{\underline{Name1:}}{} \usepackage{mdframed} \usepackage{xparse} \newlength{\putoutside} \setlength{\putoutside}{-1em} \newcommand{\JBenvname}{JB:} \NewDocumentEnvironment{JB}{ o }{ \newcommand{\JBsymbol}{} \IfNoValueTF {#1}{}{%else \ifblank{#1}{ \renewcommand{\JBsymbol}{$\downarrow$} }{%else \renewcommand{\JBsymbol}{#1} }} \par\medskip \hspace{\putoutside}$\llap\JBsymbol\quad$\textbf{\JBenvname}% }{\par\vspace{\intextsep}} \definecolor{shadecolor}{rgb}{.85,.85,.85} \newlength{\moveout} \setlength{\moveout}{9cm} \newenvironment{umg2}{\begin{shaded} \underline{Name2:}}{\end{shaded}} \mdfdefinestyle{maja}{backgroundcolor=shadecolor, leftmargin=-\moveout,innerleftmargin=\moveout, rightmargin=-\moveout,innerrightmargin=\moveout, hidealllines=true } \NewDocumentEnvironment{maja}{ o }{ \renewcommand{\JBenvname}{Maja:} \surroundwithmdframed[style=maja]{JB} \begin{JB}[#1]% }{\end{JB}} \begin{document} \begin{JB} Hier steht text, aber auch etwas Mathe, es wurde kein optionales Argument angegeben. \[ a \neq b\] Und auch ein neuer Absatz ist möglich. \end{JB} \blindtext \begin{JB}[] Hier wurde das optionale Argument zwar angegeben, aber leer gelassen. Hier wird der Standard \verb+\downarrow+ genutzt \end{JB} \begin{JB}[$\rightarrow$] Hier wird das optionale Argument per Hand gesetzt. Ein Rechtspfeil ist das Ergebnis. \begin{equation} b = c \end{equation} \end{JB} \blindtext[3] \begin{maja} ohne Opt A: Diese Umgebung verhält sich genau wie die obere, hat aber einen anderen Namen, und wurde mit \texttt{mdframed} umgeben. \[ E = mc^2\] Natürlich sind auch hier Absätze möglich, und die Umgebung bricht bei Bedarf auch um. Allerdings sieht das doof aus. \end{maja} \begin{maja}[] mit opt A, aber leer; default \texttt{downarrow} \end{maja} \blindtext[3] \begin{maja}[$\leftarrow$] Nun mit Linkspfeil \end{maja} \end{document} beantwortet 23 Aug '14, 15:57 Johannes Danke! jetzt habe ich die Qual der Wahl. :-) Uns selbst habe ich noch eine Alternative mit marginnote gebastelt:
Das heißt: Meine Anfrage ist mehr als ausreichend gelöst! Vielen Dank an euch alle! Martin
(23 Aug '14, 16:05)
maja
Und das beste: Du kannst dir aus allen Antworten das beste/schönste rauspicken.
(23 Aug '14, 16:08)
Johannes
Übrigens; bei mir läuft noch TL13, kann das mal jemand mit TL14 und aktuellem
(23 Aug '14, 16:10)
Johannes
Da Du ja gar keinen expliziten expl3-Code verwendest, sondern nur die
(23 Aug '14, 21:10)
cgnieder
|
Es geht auch mit Open in writeLaTeX
\documentclass[paper=a4,10pt,oneside,fleqn,parskip=half-]{scrreprt} \usepackage[ngerman]{babel} \usepackage[latin1]{inputenc} \usepackage{csquotes} \usepackage[T1]{fontenc} \usepackage{xcolor} \usepackage{framed} \makeatletter \newenvironment{fullwidthshaded}{% \def\FrameCommand##1{% \hskip-\paperwidth\textcolor{shadecolor}{\vrule width \paperwidth}% \colorbox{shadecolor}{##1}% \textcolor{shadecolor}{\vrule width \paperwidth}\hskip -\paperwidth }% \MakeFramed{\FrameRestore}% }{\endMakeFramed}% \makeatother \usepackage{geometry} \geometry{includehead,includefoot,tmargin=20mm,bmargin=20mm,lmargin=40mm,rmargin=20mm} \newenvironment{umg1}[1][]{% \par\noindent\makebox[0pt][r]{#1\hspace{\marginparsep}}% \underline{Name1:}\enskip\ignorespaces }{\par} \definecolor{shadecolor}{rgb}{.85,.85,.85} \newenvironment{umg2}{% \par \begin{fullwidthshaded} \underline{Name2:}}{\end{fullwidthshaded}} \begin{document} Text ohne Umgebung \begin{umg1}[$\Downarrow$] Text. Der Text kann auch über mehrere Zeilen gehen. Und auch Mathe-Umgebungen haben wie: \[1+1=2\] Oder auch was anderes. \end{umg1} \begin{umg2} Text. Der Text kann auch über mehrere Zeilen gehen. Und auch Mathe-Umgebungen haben wie: \[1+1=2\] Oder auch was anderes. \end{umg2} \end{document} Die Den Schatten in den Rand bei Da beantwortet 23 Aug '14, 12:52 gast3 |
Die Umgebungen (sprich der Name) bleiben aber statisch? Bedeutet es soll kein Zähler mitgenommenn werden?
Ich schreib mal ein wenig zusammen, Ergebnisse dann nach der Mittagspause.
Eine wichtige Frage: Warum der Tag
umgebungsvariablen
? Meinst du damit Argumente für Umgebungen?Hey @Johannes! vielen Dank für deine Hilfe. Zu deinen Fragen: a) Der Name bleibt statisch. Kein Zähler. b) "umgebungsvariablen" habe ich aus Unwissenheit wohl so genannt. Argumente für die Umgebung ist wohl besser.
Danke! Martin