texlive[68778] Master: argumentation (4nov23)

commits+karl at tug.org commits+karl at tug.org
Thu Nov 9 23:19:08 CET 2023


Revision: 68778
          https://tug.org/svn/texlive?view=revision&revision=68778
Author:   karl
Date:     2023-11-09 23:19:08 +0100 (Thu, 09 Nov 2023)
Log Message:
-----------
argumentation (4nov23)

Modified Paths:
--------------
    trunk/Master/tlpkg/bin/tlpkg-ctan-check
    trunk/Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc

Added Paths:
-----------
    trunk/Master/texmf-dist/doc/latex/argumentation/
    trunk/Master/texmf-dist/doc/latex/argumentation/README.md
    trunk/Master/texmf-dist/doc/latex/argumentation/argumentation-doc.pdf
    trunk/Master/texmf-dist/doc/latex/argumentation/argumentation-doc.tex
    trunk/Master/texmf-dist/tex/latex/argumentation/
    trunk/Master/texmf-dist/tex/latex/argumentation/argumentation.sty
    trunk/Master/tlpkg/tlpsrc/argumentation.tlpsrc

Added: trunk/Master/texmf-dist/doc/latex/argumentation/README.md
===================================================================
--- trunk/Master/texmf-dist/doc/latex/argumentation/README.md	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/argumentation/README.md	2023-11-09 22:19:08 UTC (rev 68778)
@@ -0,0 +1,8 @@
+The argumentation package provides utility to create abstract argumentation frameworks in your LaTeX document via TikZ.
+
+
+For bug reports and feedback, please contact:
+Lars Bengel <lars.bengel at fernuni-hagen.de>
+
+Version: 1.0 [2023/11/05]
+This package is subject to the LaTeX Project Public License 1.3c
\ No newline at end of file


Property changes on: trunk/Master/texmf-dist/doc/latex/argumentation/README.md
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/argumentation/argumentation-doc.pdf
===================================================================
(Binary files differ)

Index: trunk/Master/texmf-dist/doc/latex/argumentation/argumentation-doc.pdf
===================================================================
--- trunk/Master/texmf-dist/doc/latex/argumentation/argumentation-doc.pdf	2023-11-09 22:18:22 UTC (rev 68777)
+++ trunk/Master/texmf-dist/doc/latex/argumentation/argumentation-doc.pdf	2023-11-09 22:19:08 UTC (rev 68778)

Property changes on: trunk/Master/texmf-dist/doc/latex/argumentation/argumentation-doc.pdf
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/pdf
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/argumentation/argumentation-doc.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/argumentation/argumentation-doc.tex	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/argumentation/argumentation-doc.tex	2023-11-09 22:19:08 UTC (rev 68778)
@@ -0,0 +1,397 @@
+\documentclass{article}
+
+\title{The \texttt{argumentation} Package}
+\author{Lars Bengel\\\small lars.bengel at fernuni-hagen.de}
+%\date{}
+
+%%%%%%%%% IMPORTS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\usepackage{argumentation}
+\usepackage{amsmath}
+
+\newtheorem{example}{Example}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\begin{document}
+\maketitle
+
+\tableofcontents
+\newpage
+
+\section{Example}
+\vspace{-0.7cm}
+\begin{figure}[ht]
+    \centering
+    \begin{af}
+        \argument{args1}{a}
+        \argument[right=of args1]{args2}{b}
+        \argument[right=of args2]{args3}{c}
+        \argument[right=of args3]{args4}{d}
+        \argument[right=of args4]{args5}{e}
+        \argument[below=of args1]{args6}{f}
+        \argument[inactive,right=of args6]{args7}{g}
+        \argument[inactive,argin,right=of args7]{args8}{h}
+        \argument[right=of args8]{args9}{i}
+        \argument[right=of args9]{args10}{j}
+
+        \afname[left of=args1,yshift=-0.8cm,xshift=-0.2cm]{cap}{\textbf{F:}}
+
+        \selfattack{args1}
+        \dualattack[]{args1}{args6}
+        \dualattack[inactive]{args6}{args7}
+        
+        \attack[inactive]{args8}{args7}
+        \attack[inactive]{args7}{args2}
+        \attack[]{args3}{args2}    
+        \attack[]{args4}{args5}
+        \attack[]{args5}{args10}
+        \attack[]{args10}{args9}
+        \attack[]{args9}{args4}
+
+        \support[]{args4}{args3}
+        \support[]{args9}{args3}
+    \end{af}
+    \caption{An exemplary AF created with the \textsf{argumentation} package.}
+    \label{fig:example}
+\end{figure}
+\vspace{-0.4cm}
+\begin{verbatim}
+    \usepackage{argumentation}
+    \begin{figure}[ht]
+        \centering
+        \begin{af}
+            \argument{args1}{a}
+            \argument[right=of args1]{args2}{b}
+            \argument[right=of args2]{args3}{c}
+            \argument[right=of args3]{args4}{d}
+            \argument[right=of args4]{args5}{e}
+            \argument[below=of args1]{args6}{f}
+            \argument[inactive,right=of args6]{args7}{g}
+            \argument[inactive,argin,right=of args7]{args8}{h}
+            \argument[right=of args8]{args9}{i}
+            \argument[right=of args9]{args10}{j}
+    
+            \afname[left of=args1,yshift=-0.8cm,xshift=-0.2cm]{cap}{\textbf{F:}}
+    
+            \selfattack{args1}
+            \dualattack[]{args1}{args6}
+            \dualattack[inactive]{args6}{args7}
+            
+            \attack[inactive]{args8}{args7}
+            \attack[inactive]{args7}{args2}
+            \attack[]{args3}{args2}    
+            \attack[]{args4}{args5}
+            \attack[]{args5}{args10}
+            \attack[]{args10}{args9}
+            \attack[]{args9}{args4}
+
+            \support[]{args4}{args3}
+            \support[]{args9}{args3}
+        \end{af}
+        \caption{An exemplary AF created with the \textsf{argumentation} package.}
+        \label{fig:example}
+    \end{figure}
+\end{verbatim}
+
+\section{Documentation for Version 1.0 [2023/11/05]}
+In the following, we provide an overview over the functionality of the \textsf{argumentation} package.
+
+\subsection{Package Options}
+    Three options are provided to customize the look of the argumentation framework: \textsf{namestyle}, \textsf{argumentstyle} and \textsf{attackstyle}.
+    The \textsf{namestyle} option accepts three different values
+    \begin{align*}
+        \mathsf{italics} &\quad \text{The argument name is rendered in \emph{italics}.}\\
+        \mathsf{bold} &\quad \text{The argument name is rendered in \textbf{bold}.}\\
+        \mathsf{bolditalics} &\quad \text{(default) The argument name is rendered with \textbf{\emph{both}}.}\\
+    \end{align*}
+
+    The \textsf{argumentstyle} option controls the style of the argument nodes and accepts two values
+        \begin{align*}
+            \mathsf{standard} &\quad \text{(default) Standard style for the argument nodes.}\\
+            \mathsf{retro} &\quad \text{Alternative style, node size may vary for large argument names.}
+        \end{align*}
+
+    The \textsf{attackstyle} option controls the style of the attack arrows and accepts two values
+    \begin{align*}
+        \mathsf{standard} &\quad \text{(default) Standard style for the attack arrow tips.}\\
+        \mathsf{retro} &\quad \text{Alternative style, arrow tip is smaller and flatter.}
+    \end{align*}
+    
+
+\subsection{Environments}
+The package provides two environments for creating abstract argumentation frameworks and bipolar argumentation frameworks in \LaTeX-documents.
+
+\subsubsection{\textsf{af}-Environment}
+    The \textsf{argumentation} package provides the \textsf{af} environment for creating abstract argumentation framework.
+    The \textsf{af} environment extends the \textsf{tikzpicture} environment, meaning all \textsf{tikzpicture}-parameters can be used inside the \textsf{af} environment as well.
+    The most relevant parameter is \verb|node distance|, which is set to \verb|1cm| per default.
+    
+\subsubsection{\textsf{miniaf}-Environment}
+    The \textsf{miniaf} environment can be used to create argumentation frameworks using less space.
+    Especially useful for two-column layout documents.
+    It provides essentially the same as the \textsf{af} environment, but with \verb|node distance=0.5cm| and for each node \verb|minimum size=0.5cm|, \verb|font=\small|.
+
+
+\begin{figure}[ht]
+    \centering
+    \begin{miniaf}
+        \argument{args1}{a}
+        \argument[right=of args1]{args2}{b}
+        \argument[right=of args2]{args3}{c}
+        \argument[right=of args3]{args4}{d}
+        \argument[right=of args4]{args5}{e}
+        \argument[below=of args1]{args6}{f}
+        \argument[inactive,right=of args6]{args7}{g}
+        \argument[inactive,argin,right=of args7]{args8}{h}
+        \argument[right=of args8]{args9}{i}
+        \argument[right=of args9]{args10}{j}
+
+        \afname[left of=args1,yshift=-0.5cm,xshift=-0.2cm]{cap}{\textbf{F:}}
+
+        \selfattack{args1}
+        \dualattack[]{args1}{args6}
+        \dualattack[inactive]{args6}{args7}
+        \attack[inactive]{args8}{args7}
+
+        \attack[inactive]{args7}{args2}
+        \attack[]{args3}{args2}
+
+        \support[]{args4}{args3}
+        \support[]{args9}{args3}
+
+        \attack[]{args4}{args5}
+        \attack[]{args5}{args10}
+        \attack[]{args10}{args9}
+        \attack[]{args9}{args4}
+    \end{miniaf}
+    \caption{An exemplary Mini-AF created with the \textsf{miniaf} environment.}
+    \label{fig:example_mini}
+\end{figure}
+
+
+\subsection{Arguments}
+    Arguments can be created with the following command
+
+    \verb|\argument{id}{name}|
+
+    \noindent
+    To create an argument, you must provide a unique identifier \textsf{id} and the \textsf{name} to be displayed in the picture.
+    The \textsf{id} of an argument is then referred to when creating attacks as well as for the relative positioning of the other arguments.
+
+    The \textsf{standard} style of an argument is defined with the following parameters, all of which can be overridden if desired.
+    \begin{align*}
+        \textsf{circle} &\quad \text{the shape of the argument.}\\
+        \textsf{minimum~size=0.75cm} &\quad \text{the minimum size of the circle, to ensure consistent}\\
+        &\quad \text{argument size.}\\
+        \textsf{draw=black} &\quad \text{outline and text color of the argument.}\\
+        \textsf{thick} &\quad \text{the outline of the circle is rendered in \textsf{thick} mode.}\\
+        \textsf{fill=white} &\quad \text{the background color of the argument.}\\
+        \textsf{font=large} &\quad \text{the font size of the argument name.}\\
+        \textsf{text~centered} &\quad \text{positioning of the argument name inside the circle.}\\
+        \textsf{inner~sep=0} &\quad \text{inner margins of the circle, set to \textsf{0} to optimize space.}
+    \end{align*}
+    \subsubsection{Relative Positioning}    
+    This package supports relative placement of the arguments via the \textsf{tikz}-library \textsf{positioning}.
+    The relative positioning information is provided as an optional parameter via
+    
+    \verb|\argument[dir=of arg_id]{id}{name}|
+    
+    \noindent
+    with \textsf{dir} being one of: \emph{right}, \emph{left}, \emph{below} and \emph{above} and \textsf{arg\_id} being the id of another argument.
+    
+    Additionally, you can adjust the horizontal/vertical position of an argument via the options \textsf{xshift} and \textsf{yshift}.
+    You must also specify the distance in one of the following ways
+
+    \verb|\argument[xshift=5mm]{id}{name}|
+
+    \verb|\argument[xshift=5pt]{id}{name}|
+
+    \verb|\argument[xshift=5ex]{id}{name}|
+
+    \begin{example}~
+
+    \begin{verbatim}
+        \begin{af}
+            \argument{arg1}{a}
+            \argument[right=of arg1]{arg2}{b}
+            \argument[right=of arg2, yshift=-10pt]{arg3}{c}
+        \end{af}
+    \end{verbatim}
+
+    \begin{center}
+        \begin{af}
+            \argument{arg1}{a}
+            \argument[right=of arg1]{arg2}{b}
+            \argument[right=of arg2, yshift=-10pt]{arg3}{c}
+        \end{af}
+    \end{center}
+        
+    \end{example}
+
+    \subsubsection{Argument Styles}
+    Furthermore, you can provide optional parameters to adjust the style of the argument node.
+    For that you can use all \textsf{tikz}-style options and additionally the following pre-defined style parameters:
+    \begin{align*}
+        \mathsf{inactive} &\quad \text{The argument is displayed in grey and with a dotted outline.}\\
+        \mathsf{argin} &\quad \text{The argument is displayed with green background color.}\\
+        \mathsf{argout} &\quad \text{The argument is displayed with red background color.}\\
+        \mathsf{argundec} &\quad \text{The argument is displayed with cyan background color.}
+    \end{align*}
+
+    \begin{example}
+        
+    \end{example}
+
+\subsection{Attacks}
+    Attacks between two arguments can be created with the command
+
+    \verb|\attack{arg1}{arg2}|
+
+    \noindent
+    where \textsf{arg1} and \textsf{arg2} are the identifiers of two previously defined arguments.
+    The \textsf{standard} style for attacks is defined with the \textsf{arrows.meta} library as follows
+    \begin{align*}
+        \texttt{-{Stealth[scale=1.25]}}
+    \end{align*}
+
+\subsubsection{Attack Styles}
+    To customize an attack you can provide additional optional parameters:
+    \begin{align*}
+        \mathsf{inactive} &\quad \text{The attack is displayed in grey and with a dotted line.}\\
+        \mathsf{bend~right} &\quad \text{The attack arrow is bent to the right.}\\
+        &\quad \text{Can additionally provide the angle, e.\,g., \textsf{bend~right=40}.}\\
+        \mathsf{bend~left} &\quad \text{The attack arrow is bent to the left. Can also provide an angle.}\\
+    \end{align*}
+
+    Furthermore, all \textsf{tikz} style parameters can be used here as well.
+
+    \begin{example}~
+    \begin{verbatim}
+        \begin{af}
+            \argument{arg1}{a}
+            \argument[right=of arg1]{arg2}{b}
+            \argument[right=of arg2]{arg3}{c}
+            \argument[right=of arg3]{arg4}{d}
+    
+            \attack{arg1}{arg2}
+            \attack[bend right]{arg2}{arg3}
+            \attack[bend left=10,inactive]{arg3}{arg4}
+        \end{af}    
+    \end{verbatim}
+
+    \begin{center}
+        \begin{af}
+            \argument{arg1}{a}
+            \argument[right=of arg1]{arg2}{b}
+            \argument[right=of arg2]{arg3}{c}
+            \argument[right=of arg3]{arg4}{d}
+    
+            \attack{arg1}{arg2}
+            \attack[bend right]{arg2}{arg3}
+            \attack[bend left=10,inactive]{arg3}{arg4}
+        \end{af}
+    \end{center}
+    \end{example}
+    
+
+    Additionally, you can create a symmetric attack between two arguments with
+
+    \verb|\dualattack{arg1}{arg2}|
+
+    \noindent
+    and a self-attack for an argument with
+
+    \verb|\selfattack{arg1}|
+
+    \noindent
+    For both commands, you can use the same optional parameters as for the \verb|\attack| command.
+
+    \begin{example}~
+    \begin{verbatim}
+        \begin{af}
+            \argument{arg1}{a}
+            \argument[right=of arg1]{arg2}{b}
+    
+            \selfattack{arg1}
+            \dualattack{arg1}{arg2}
+        \end{af}    
+    \end{verbatim}
+
+    \begin{center}
+        \begin{af}
+            \argument{arg1}{a}
+            \argument[right=of arg1]{arg2}{b}
+    
+            \selfattack{arg2}
+            \dualattack{arg1}{arg2}
+        \end{af}
+    \end{center}
+    \end{example}
+    
+
+\subsection{Supports}
+    You can create a support relation between two arguments with the command
+
+    \verb|\support{arg1}{arg2}|
+
+    \noindent
+    where \verb|arg1| and \verb|arg2| are the identifiers of two previously defined arguments.
+    The support arrow use the same tip as the attack arrows, but have a perpendicular mark to distinguish them from attacks.
+    Supports can be customized in the same way as attacks.
+
+    \begin{example}~
+    \begin{verbatim}
+        \begin{af}
+            \argument{arg1}{a}
+            \argument[right=of arg1]{arg2}{b}
+            \argument[right=of arg2]{arg3}{c}
+    
+            \support{arg1}{arg2}
+            \support[bend right]{arg2}{arg3}
+        \end{af}    
+    \end{verbatim}
+
+    \begin{center}
+        \begin{af}
+            \argument{arg1}{a}
+            \argument[right=of arg1]{arg2}{b}
+            \argument[right=of arg2]{arg3}{c}
+    
+            \support{arg1}{arg2}
+            \support[bend right]{arg2}{arg3}
+        \end{af}    
+    \end{center}
+    \end{example}
+
+
+\subsection{Further Commands}
+    If you want to display an identifier for your argumentation framework in the picture, you can use the command
+
+    \verb|\afname{id}{name}|
+
+    \noindent
+    where \verb|id| is an identifier for the created node and \verb|name| is the text displayed in the picture.
+    Additionally, positioning information can be provided via the optional parameters.
+
+    \begin{example}~
+    \begin{verbatim}
+        \begin{af}
+            \argument{arg1}{a}
+            \argument[right=of arg1]{arg2}{b}
+            \afname[left=of arg1]{caption}{$F:$}
+    
+            \attack{arg1}{arg2}
+        \end{af}    
+    \end{verbatim}
+
+    \begin{center}
+        \begin{af}
+            \argument{arg1}{a}
+            \argument[right=of arg1]{arg2}{b}
+            \argument[right=of arg2]{arg3}{c}
+            \afname[left=of arg1]{caption}{$F:$}
+    
+            \support{arg1}{arg2}
+        \end{af}    
+    \end{center}
+    \end{example}
+
+\end{document}


Property changes on: trunk/Master/texmf-dist/doc/latex/argumentation/argumentation-doc.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/tex/latex/argumentation/argumentation.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/argumentation/argumentation.sty	                        (rev 0)
+++ trunk/Master/texmf-dist/tex/latex/argumentation/argumentation.sty	2023-11-09 22:19:08 UTC (rev 68778)
@@ -0,0 +1,104 @@
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{argumentation}[2023/11/05 Argumentation]
+% Author: Lars Bengel
+% E-Mail: lars.bengel at fernuni-hagen.de
+% Version: 1.0
+% License: LaTeX Project Public License 1.3c
+
+%%%%%%%%%%% Package Requirements %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\RequirePackage{options}                        % For managing package options
+\RequirePackage{tikz}                           % For drawing the argumentation frameworks
+\usetikzlibrary{positioning}                    % For relative node positioning
+\usetikzlibrary{arrows.meta}                    % For directed edges / attack arrows
+\usetikzlibrary{decorations.markings}           % For creating the support edge markings
+
+\newcommand{\argstyle}[1]{\textbf{\emph{#1}}}   % Defines the font style in which argument names are displayed
+
+
+%%%%%%%%%% Package Options %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\options{
+    /argumentation/.new family,
+    /argumentation/argumentstyle/.new choice = {standard, retro},
+    /argumentation/namestyle/.new choice = {normal, italics, bold, bolditalics},
+    /argumentation/attackstyle/.new choice = {standard, retro},
+    /argumentation/@unknown/.new cmd 2 = \PackageWarning{argumentation}{Unknown option `#1'}
+}
+\options at ProcessOptions{/argumentation}
+
+%%%%%%%%%% Preprocessing options %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\ifcase\option{/argumentation/namestyle/@ord}\relax
+\or\renewcommand{\argstyle}[1]{\emph{#1}}
+\or\renewcommand{\argstyle}[1]{\textbf{#1}}
+\or\renewcommand{\argstyle}[1]{\textbf{\emph{#1}}}
+\fi
+
+\ifcase\option{/argumentation/argumentstyle/@ord}
+\tikzset{arg/.style={circle, minimum size=0.75cm,draw=black,thick,fill=white,font=\large, text centered, inner sep=0}}
+\or\tikzset{arg/.style={circle, minimum size=0.7cm,draw=black,thick,fill=white}}
+\fi
+
+\ifcase\option{/argumentation/attackstyle/@ord}
+\tikzset{att/.style={-{Stealth[scale=1.25]}}}
+\or\tikzset{att/.style={->}}
+\fi
+
+%%%%%%%%%% Package Content %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\tikzset{ % Basic predefined tikz-styles
+    % Self-Loop style
+    every loop/.style={min distance=2mm,in=0,out=60,looseness=5},
+    % Color shortcuts for labelled arguments and reduced arguments
+    inactive/.style={draw=black!30, text=black!40,densely dashed},
+    argin/.style={fill=green},
+    argout/.style={fill=red},
+    argundec/.style={fill=cyan},
+    % Style for displaying AF name in Figure
+    caption/.style={draw=none},
+    % Style for support mark
+    support mark/.style = {postaction = {decorate,decoration={markings,mark=at position #1 with {\draw[-] (0,-0.1) -- (0.1,0.1);}}}},
+}
+
+\newcommand{\setargumentstyle}[1]{\tikzset{arg/.style={#1}}}
+\newcommand{\setattackstyle}[1]{\tikzset{att/.style={#1}}}
+\newcommand{\setloopstyle}[1]{\tikzset{every loop/.style={#1}}}
+
+\newcommand{\adjustargumentstyle}[1]{\tikzset{arg/.append style={#1}}}
+\newcommand{\adjustattackstyle}[1]{\tikzset{att/.append style={#1}}}
+
+\newcommand{\resetargumentstyle}{\setargumentstyle{circle, minimum size=0.75cm,draw=black,thick,fill=white,font=\large, text centered, inner sep=0}}
+\newcommand{\resetattackstyle}{\setattackstyle{-{Stealth[scale=1.25]}}}
+\newcommand{\resetloopstyle}{\setloopstyle{min distance=2mm,in=0,out=60,looseness=5}}
+
+
+\newenvironment{af}{
+    \tikzpicture
+}{%
+    \endtikzpicture
+}
+
+\newenvironment{miniaf}[1][]{
+    \tikzset{arg/.append style={font=\small, minimum size=0.5cm},
+             att/.append style={-{Stealth[scale=0.9]}},
+    }
+    \tikzpicture[node distance=0.5cm,#1]
+}{%
+    \endtikzpicture
+}
+
+% Creates a node displaying the name of the AF
+\newcommand{\afname}[3][]{\node[caption,#1](#2){#3};}
+
+% Creates an argument node
+\newcommand{\argument}[3][]{\node[arg,#1](#2){\argstyle{#3}};}
+
+% Creates an attack edge
+\newcommand{\attack}[3][]{\path(#2) edge [att,#1] (#3);}
+
+% Creates a self-attack
+\newcommand{\selfattack}[2][]{\path(#2) edge [att,loop,#1] (#2);}
+
+% Creates two symmetric attack edges between two arguments
+\newcommand{\dualattack}[3][]{\path(#2) edge [att, bend right,#1] (#3);\path(#3) edge [att, bend right,#1] (#2);}
+
+% Creates a support edge between two arguments
+\newcommand{\support}[3][]{\path(#2) edge [att,support mark=0.3,#1] (#3);}


Property changes on: trunk/Master/texmf-dist/tex/latex/argumentation/argumentation.sty
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Modified: trunk/Master/tlpkg/bin/tlpkg-ctan-check
===================================================================
--- trunk/Master/tlpkg/bin/tlpkg-ctan-check	2023-11-09 22:18:22 UTC (rev 68777)
+++ trunk/Master/tlpkg/bin/tlpkg-ctan-check	2023-11-09 22:19:08 UTC (rev 68778)
@@ -52,7 +52,8 @@
     apprendre-a-programmer-en-tex apprends-latex
     apptools apxproof
     arabi arabic-book arabicfront arabi-add arabluatex arabtex arabxetex
-    aramaic-serto arara archaeologie archaic archivo arcs arev arimo armtex
+    aramaic-serto arara archaeologie archaic archivo arcs arev argumentation
+    arimo armtex
     around-the-bend arphic arphic-ttf arraycols arrayjobx arraysort
     arsclassica arsenal
     arvo arydshln articleingud

Added: trunk/Master/tlpkg/tlpsrc/argumentation.tlpsrc
===================================================================
Modified: trunk/Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc
===================================================================
--- trunk/Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc	2023-11-09 22:18:22 UTC (rev 68777)
+++ trunk/Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc	2023-11-09 22:19:08 UTC (rev 68778)
@@ -46,6 +46,7 @@
 depend apptools
 depend arabicfront
 depend arcs
+depend argumentation
 depend arraycols
 depend arrayjobx
 depend arraysort



More information about the tex-live-commits mailing list.