diff options
author | Karl Berry <karl@freefriends.org> | 2018-10-18 20:28:01 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2018-10-18 20:28:01 +0000 |
commit | 0bd86e39a67aaac4274bbf501f97827394ad6a32 (patch) | |
tree | 822b16e7de130dd51208742176071cb8c89944f8 /Master/texmf-dist | |
parent | 7886a204cd657bd21f4e64ab7125e477a4322494 (diff) |
ditaa (18oct18)
git-svn-id: svn://tug.org/texlive/trunk@48932 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist')
-rw-r--r-- | Master/texmf-dist/doc/latex/ditaa/README | 56 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/ditaa/ditaa.pdf | bin | 0 -> 104939 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/latex/ditaa/ditaa.tex | 108 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/ditaa/example.tex | 35 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/ditaa/resources/ditaa/ditaaexample.ditaa | 9 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/ditaa/resources/ditaa/ditaaexample.png | bin | 0 -> 8006 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/latex/ditaa/resources/ditaa/ditaaexample2.ditaa | 7 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/ditaa/resources/ditaa/ditaaexample2.png | bin | 0 -> 852 bytes | |||
-rw-r--r-- | Master/texmf-dist/tex/latex/ditaa/ditaa.sty | 47 |
9 files changed, 262 insertions, 0 deletions
diff --git a/Master/texmf-dist/doc/latex/ditaa/README b/Master/texmf-dist/doc/latex/ditaa/README new file mode 100644 index 00000000000..34be8bbd1fc --- /dev/null +++ b/Master/texmf-dist/doc/latex/ditaa/README @@ -0,0 +1,56 @@ += The LaTeX ditaa package + +With this, you will not need to bring your diagrams outside your ```.tex``` file and not to worry about wiring such files for diagrams, and tools (Microsoft Visio, PowerPoint, Libre Office tools, as such) from which they are created. + +``` +\begin{ditaa}{ditaa caption example}{ditaaexample} + +-----+ +----+ +---+ + |Store+---->|This+---->|One| + +--+--+ +----+ +---+ + | + V + +-----+ + |THIS | + +--+--+ + | + V + +-----------+ +--+ + |another one+---->|Hi| + +-----------+ +--+ +\end{ditaa} + +``` + +The source above will be converted into a following diagram and incorporated in your final PDF. + +.Figure Rendered Ascii Art +[#img-sunset] +[caption="Figure 1: ",link=resources/rendered.png] +image::resources/rendered.png[Rendered Ascii Art,480,300] + +== Prerequisites +https://github.com/asciidoctor[Asciidoctor @ *GitHub*] + +* You need to have http://ditaa.sourceforge.net/[ditaa] installed. (Need to be able to run ```ditaa``` from your command line). Fortunately, recent package managers such as ```apt``` allow you to install it with a single command line ```sudo apt install ditaa```. ```brew``` let me do similar ```sudo brew isntall ditaa``` on my mac. For windows, sorry, please let me know how to do that... +* You need to give an option ```--shell-escape``` to your LaTeX compiler (such as ```pdflatex```, ```latex```, etc) command whichever you use. + + +== How to use + +* Place the ```ditaa.sty``` file at the same directory as your ```.tex``` file. +* Create ```ditaa``` directory under the directory you have for the other non-ditaa images. This package will create ```.ditaa``` and ```.png``` files. +* Do ```usepackage[imagepath=IMAGEPATH]{ditaa}``` beffore ```\begin{document}```. The IMAGEPATH is the directory you have images. +* Compile your ```.tex``` files as usual, but giving ```--shell-escape``` option to your ```(pdf)latex``` command. + +== Tips +Online sites such as [ascii-flow](http://stable.ascii-flow.appspot.com/#Draw) will be your friends! + +== Future Works +* Make it possible to define caption and filename independently. +* ~~Improve the way to define resource directory.~~ +* ~~Make it possible to specify image size.~~ (Now you can specify image width. See the example) +* I want to use this in OverLeaf. Publish in CTAN? Help me. I'm a LaTeX newbie. + +== References +* https://github.com/deselaers/latex-beamerposter[latex-beamerposter]: I learned a lot from this; such as how to package my .sty, how to organize directories under my repo for LaTeX style package, etc. + diff --git a/Master/texmf-dist/doc/latex/ditaa/ditaa.pdf b/Master/texmf-dist/doc/latex/ditaa/ditaa.pdf Binary files differnew file mode 100644 index 00000000000..fa5ecb452eb --- /dev/null +++ b/Master/texmf-dist/doc/latex/ditaa/ditaa.pdf diff --git a/Master/texmf-dist/doc/latex/ditaa/ditaa.tex b/Master/texmf-dist/doc/latex/ditaa/ditaa.tex new file mode 100644 index 00000000000..9a3520c685f --- /dev/null +++ b/Master/texmf-dist/doc/latex/ditaa/ditaa.tex @@ -0,0 +1,108 @@ +\documentclass[pagesize=auto]{scrartcl} + +\addtokomafont{title}{\rmfamily} + +\title{The \textsf{ditaa} package} +\author{Hiroshi Ukai} +\date{2018/10/18} + + +\usepackage{verbatim} +\def\imagepath{./resources} +\usepackage[imagepath=\imagepath]{ditaa} +\graphicspath{ {\imagepath/} } + +\begin{document} + +\maketitle + +\noindent +The \LaTeX\ \textsf{ditaa} package renders your ascii art inside your LaTeX files into pretty image files which you can use them in your papers. + +\minisec{Usage:} +To \texttt{usepackage} \textbf{ditaa}, typically do following. +\begin{verbatim} + \def\imagepath{./resources} + \usepackage[imagepath=\imagepath]{ditaa} + \graphicspath{ {\imagepath/} } +\end{verbatim} + +A vaiable \texttt{\textbackslash imagepath} points a directory that your images reside. +Under it, you need to create a directory \texttt{ditaa} in advance. +In this directory, \texttt{ditaa} environment creates its working files. + +\minisec{Features:} +% +This is a ditaa diagram example. +\begin{verbatim} + \begin{ditaa}[8cm]{ditaa caption example}{ditaaexample} + +--------+ +-------+ +-------+ + | | --+ ditaa +--> | | + | Text | +-------+ |diagram| + |Document| |!magic!| | | + | {d}| | | | | + +---+----+ +-------+ +-------+ + : ^ + | Lots of work | + +-------------------------+ + \end{ditaa} +\end{verbatim} + +The fragment above will be rendered into following diagram. + +\begin{ditaa}[8cm]{ditaa caption example}{ditaaexample} + +--------+ +-------+ +-------+ + | | --+ ditaa +--> | | + | Text | +-------+ |diagram| + |Document| |!magic!| | | + | {d}| | | | | + +---+----+ +-------+ +-------+ + : ^ + | Lots of work | + +-------------------------+ +\end{ditaa} +\pagebreak +And you can specify image width like this Figure.\ref{fig:ditaaexample2}. + +\begin{verbatim} + \begin{ditaa}[6cm]{ditaa caption example2}{ditaaexample2} + +---------+ + | cBLU | + | | + | +----+ + | |cPNK| + | | | + +----+----+ + \end{ditaa} +\end{verbatim} + +To denote your diagram, you can do + +\begin{verbatim} + + Figure~\ref{fig:ditaaexample2} + +\end{verbatim} + +, where \texttt{ditaaexample2} is the second argument you gave to the \texttt{ditaa} environment as you see above. +The prefix \texttt{fig:} is given by \texttt{ditaa} environment automatically. + +\begin{ditaa}[6cm]{ditaa caption example2}{ditaaexample2} + +---------+ + | cBLU | + | | + | +----+ + | |cPNK| + | | | + +----+----+ +\end{ditaa} + +Enjoy! + +\minisec{ChangeLog:} +% +\begin{labeling}[\hspace{\labelsep}--]{0.9} +\item[0.9] Preparation for first \textsf{ditaa} release. +\end{labeling} + +\end{document} diff --git a/Master/texmf-dist/doc/latex/ditaa/example.tex b/Master/texmf-dist/doc/latex/ditaa/example.tex new file mode 100644 index 00000000000..10049fa5eb7 --- /dev/null +++ b/Master/texmf-dist/doc/latex/ditaa/example.tex @@ -0,0 +1,35 @@ +% Preamble +\documentclass[11pt]{article} + +% Packages +\usepackage{a4wide} +\def\imagepath{./resources/graphics} +\usepackage[imagepath=\imagepath]{ditaa} +\graphicspath{ {\imagepath/} } + +\begin{document} + This is a ditaa diagramm example. + \begin{ditaa}{ditaa caption example}{ditaaexample} + +--------+ +-------+ +-------+ + | | --+ ditaa +--> | | + | Text | +-------+ |diagram| + |Document| |!magic!| | | + | {d}| | | | | + +---+----+ +-------+ +-------+ + : ^ + | Lots of work | + +-------------------------+ + \end{ditaa} + Enjoy! + And you can even specify image width like this Figure.\ref{fig:ditaaexample2}. + \begin{ditaa}[6cm]{ditaa caption example2}{ditaaexample2} + +---------+ + | cBLU | + | | + | +----+ + | |cPNK| + | | | + +----+----+ + \end{ditaa} +\end{document} + diff --git a/Master/texmf-dist/doc/latex/ditaa/resources/ditaa/ditaaexample.ditaa b/Master/texmf-dist/doc/latex/ditaa/resources/ditaa/ditaaexample.ditaa new file mode 100644 index 00000000000..e770e37f564 --- /dev/null +++ b/Master/texmf-dist/doc/latex/ditaa/resources/ditaa/ditaaexample.ditaa @@ -0,0 +1,9 @@ + +--------+ +-------+ +-------+ + | | --+ ditaa +--> | | + | Text | +-------+ |diagram| + |Document| |!magic!| | | + | {d}| | | | | + +---+----+ +-------+ +-------+ + : ^ + | Lots of work | + +-------------------------+ diff --git a/Master/texmf-dist/doc/latex/ditaa/resources/ditaa/ditaaexample.png b/Master/texmf-dist/doc/latex/ditaa/resources/ditaa/ditaaexample.png Binary files differnew file mode 100644 index 00000000000..b924b9b007d --- /dev/null +++ b/Master/texmf-dist/doc/latex/ditaa/resources/ditaa/ditaaexample.png diff --git a/Master/texmf-dist/doc/latex/ditaa/resources/ditaa/ditaaexample2.ditaa b/Master/texmf-dist/doc/latex/ditaa/resources/ditaa/ditaaexample2.ditaa new file mode 100644 index 00000000000..448ec571ba6 --- /dev/null +++ b/Master/texmf-dist/doc/latex/ditaa/resources/ditaa/ditaaexample2.ditaa @@ -0,0 +1,7 @@ + +---------+ + | cBLU | + | | + | +----+ + | |cPNK| + | | | + +----+----+ diff --git a/Master/texmf-dist/doc/latex/ditaa/resources/ditaa/ditaaexample2.png b/Master/texmf-dist/doc/latex/ditaa/resources/ditaa/ditaaexample2.png Binary files differnew file mode 100644 index 00000000000..79f95c0f01a --- /dev/null +++ b/Master/texmf-dist/doc/latex/ditaa/resources/ditaa/ditaaexample2.png diff --git a/Master/texmf-dist/tex/latex/ditaa/ditaa.sty b/Master/texmf-dist/tex/latex/ditaa/ditaa.sty new file mode 100644 index 00000000000..21969353dce --- /dev/null +++ b/Master/texmf-dist/tex/latex/ditaa/ditaa.sty @@ -0,0 +1,47 @@ +% 'ditaa' package +% +% (c) Hiroshi Ukai +% +%% This program can be redistributed and/or modified under the terms +%% of the LaTeX Project Public License Distributed from CTAN archives +%% in directory macros/latex/base/lppl.txt. +% +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{ditaa} +[2018/09/27 v0.01 LaTeX package for embedding ditaa style ascii art] + +\RequirePackage{fancyvrb} +\RequirePackage{graphicx} +\RequirePackage{kvoptions} + +\DeclareStringOption[]{imagepath} +\ProcessKeyvalOptions* + +%@formatter:off (This line indicates IntelliJ that formatter should be off before this) +\newenvironment{ditaa}[3][\columnwidth] + { + \def\ditaacaption{#2} + \def\ditaastem{#3} + \def\ditaadir{\ditaa@imagepath/ditaa} + \def\ditaafile{\ditaadir/\ditaastem.ditaa} + \def\ditaafigwidth{#1} + \VerbatimOut{\ditaafile}} + {\endVerbatimOut + \immediate\write18{ditaa -E "\ditaafile" "\ditaadir/\ditaastem.png"} + \begin{figure}[ht] + \begin{center} + \vspace{-1em} + \includegraphics[width=\ditaafigwidth]{\ditaadir/\ditaastem.png} + \vspace{-2em} + \caption{\ditaacaption} + \label{fig:\ditaastem} + \vspace{-1.5em} + \end{center} + \end{figure} + } +%@formatter:on (This line indicates IntelliJ that formatter should be off before this) +%-------------------------------------------------- + +\endinput +%% +%% End of file `ditaa.sty'.
\ No newline at end of file |