From e0c6872cf40896c7be36b11dcc744620f10adf1d Mon Sep 17 00:00:00 2001 From: Norbert Preining Date: Mon, 2 Sep 2019 13:46:59 +0900 Subject: Initial commit --- macros/latex/contrib/grid/Makefile | 44 ++++ macros/latex/contrib/grid/README | 31 +++ macros/latex/contrib/grid/grid.pdf | Bin 0 -> 147126 bytes macros/latex/contrib/grid/grid.sty | 309 ++++++++++++++++++++++ macros/latex/contrib/grid/grid.tex | 380 +++++++++++++++++++++++++++ macros/latex/contrib/grid/manifest.txt | 44 ++++ macros/latex/contrib/grid/rvdtx.sty | 467 +++++++++++++++++++++++++++++++++ 7 files changed, 1275 insertions(+) create mode 100644 macros/latex/contrib/grid/Makefile create mode 100644 macros/latex/contrib/grid/README create mode 100644 macros/latex/contrib/grid/grid.pdf create mode 100644 macros/latex/contrib/grid/grid.sty create mode 100644 macros/latex/contrib/grid/grid.tex create mode 100644 macros/latex/contrib/grid/manifest.txt create mode 100644 macros/latex/contrib/grid/rvdtx.sty (limited to 'macros/latex/contrib/grid') diff --git a/macros/latex/contrib/grid/Makefile b/macros/latex/contrib/grid/Makefile new file mode 100644 index 0000000000..aeeb1daa59 --- /dev/null +++ b/macros/latex/contrib/grid/Makefile @@ -0,0 +1,44 @@ +## +## Makefile +## +## This file is in public domain. +## River Valley Technologies +## http://www.river-valley.com +## +## + +file=grid + + +all: pdf out + make pdf + +out: + if [ -f $(file).out ] ; then cp $(file).out tmp.out; fi ; + sed 's/BOOKMARK/dtxmark/g;' tmp.out > x.out; mv x.out tmp.out ; + +pdf: + pdflatex $(file).tex + +index: + makeindex -s gind.ist -o $(file).ind $(file).idx + +changes: + makeindex -s gglo.ist -o $(file).gls $(file).glo + +xview: +# xpdf -z 200 $(file).pdf &>/dev/null + open -a 'Skim.app' $(file).pdf + +view: + open -a 'Adobe Reader.app' $(file).pdf + +ins: + latex $(file).ins + +diff: + diff $(file).sty ../$(file).sty |less + +copy: + cp $(file).sty ../ + diff --git a/macros/latex/contrib/grid/README b/macros/latex/contrib/grid/README new file mode 100644 index 0000000000..e4ce9660f6 --- /dev/null +++ b/macros/latex/contrib/grid/README @@ -0,0 +1,31 @@ +%% +%% README +%% $Id: README 12 2009-06-16 06:57:06Z cvr $ +%% $URL: http://lenova.river-valley.com/svn/grid/trunk/README $ +%% + + +grid packages helps to enable grid typesetting (ie, vertically +aligning lines of text in adjacent columns) in double column +documents in LaTeX. + +The manifest.txt provides the list of files in grid package. + +A small uer manual and examples are provided in grid.tex which can be +tyeset with pdfLaTeX. A Makefile is provided for GNU/Linux users who +can accomplish the job by invoking the following command at the +prompt: + + make + +or + + make pdf + make out + make pdf + +This will create grid.pdf with all bells and whistles. + +%% +%% End +%% diff --git a/macros/latex/contrib/grid/grid.pdf b/macros/latex/contrib/grid/grid.pdf new file mode 100644 index 0000000000..0add0672a4 Binary files /dev/null and b/macros/latex/contrib/grid/grid.pdf differ diff --git a/macros/latex/contrib/grid/grid.sty b/macros/latex/contrib/grid/grid.sty new file mode 100644 index 0000000000..97d8426ca5 --- /dev/null +++ b/macros/latex/contrib/grid/grid.sty @@ -0,0 +1,309 @@ +%% +%% This is file 'grid.sty', +%% +%% +%% grid.sty Copyright (C) 2009 River Valley Technologies +%% URL: http://www.river-valley.com +%% Email: +%% +%% This file may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either version 1.2 +%% of this license or (at your option) any later version. +%% The latest version of this license is in +%% http://www.latex-project.org/lppl.txt +%% and version 1.2 or later is part of all distributions of LaTeX +%% version 1999/12/01 or later. +%% +%% $Id: grid.sty 14 2009-06-16 07:00:25Z cvr $ +%% $URL: http://lenova.river-valley.com/svn/grid/trunk/grid.sty $ +%% +%% +\NeedsTeXFormat{LaTeX2e}% +\ProvidesPackage{grid}[2009/06/16 v1.0 Grid Layout] + +\RequirePackage{keyval} + +%%% +%% Process Keyvalue Options +% +\def\ProcessOptionsKV{\@ifnextchar[%] + {\@ProcessOptionsKV}{\@ProcessOptionsKV[]}}% +\def\@ProcessOptionsKV[#1]#2{% + \let\@tempa\@empty + \@tempcnta\z@ + \if#1p\@tempcnta\@ne\else\if#1c\@tempcnta\tw@\fi\fi + \ifodd\@tempcnta + \edef\@tempa{\@ptionlist{\@currname.\@currext}}% + \else + \@for\CurrentOption:=\@classoptionslist\do{% + \@ifundefined{KV@#2@\CurrentOption}% + {}{\edef\@tempa{\@tempa,\CurrentOption,}}}% + \ifnum\@tempcnta=\z@ + \edef\@tempa{\@tempa,\@ptionlist{\@currname.\@currext}}% + \fi + \fi + \edef\@tempa{\noexpand\setkeys{#2}{\@tempa}}% + \@tempa + \AtEndOfPackage{\let\@unprocessedoptions\relax}}% + +\def\Grid@baseline{10\p@} +\def\Grid@fontsize{12\p@} +\def\Grid@lines{40} +\def\Grid@textheight{% + \@tempdima=\Grid@baseline% + \multiply\@tempdima by \Grid@lines% + \textheight=\the\@tempdima% +} + +\define@key{Grid}{baseline}{\edef\Grid@baseline{#1}} +\define@key{Grid}{fontsize}{\edef\Grid@fontsize{#1}} +\define@key{Grid}{lines}{\edef\Grid@lines{#1}} + +\def\Grid@setkeys{\setkeys{Grid}}% +\ProcessOptionsKV{Grid} + +\Grid@textheight + +\renewcommand\normalsize{% + \baselineskip=\Grid@baseline% + \@setfontsize\normalsize{\Grid@fontsize}{\Grid@baseline}% + \lineskip=0pt + \lineskiplimit=-\Grid@fontsize% + \abovedisplayskip \baselineskip% + \abovedisplayshortskip .5\baselineskip% + \belowdisplayskip \abovedisplayskip + \belowdisplayshortskip \abovedisplayshortskip + \let\@listi\@listI} +\normalsize +\parskip 0pt + +\newdimen\floatunit +\newskip\allfloats +\setlength\floatunit{\the\baselineskip} + +\setlength\allfloats{\floatunit} + +\setlength\floatsep{\allfloats} +\setlength\textfloatsep{\allfloats} +\setlength\intextsep{\allfloats} +\setlength\dblfloatsep{\allfloats} +\setlength\dbltextfloatsep{\allfloats} + +\setlength\@fptop{\z@} +\setlength\@fpsep{\z@} +\setlength\@fpbot{\z@} +\setlength\@dblfptop{\z@} +\setlength\@dblfpsep{\z@} +\setlength\@dblfpbot{\z@} + +\begingroup + \catcode`P=12 + \catcode`T=12 + \lowercase{ + \def\x{\def\rem@decimal##1.##2PT{##1}}} + \expandafter\endgroup\x +\def\strip@decimal{\expandafter\rem@decimal\the} + +\begingroup + \catcode`P=12 + \catcode`T=12 + \lowercase{ + \def\y{\def\rem@dot##1.##2PT{##1##2}}} + \expandafter\endgroup\y +\def\strip@dot{\expandafter\rem@dot\the} + +\newdimen\halfbaselineskip +\halfbaselineskip=\floatunit +\divide\halfbaselineskip by 2 + +\newdimen\figboxht + +\long\def\roundoff{\figboxht=\fight% + \advance\figboxht by \baselineskip% + \multiply\figboxht by 10% + \xdef\xbaselineskip{\strip@dot\baselineskip}% + \divide\figboxht by \xbaselineskip% + \xdef\mylines{\strip@decimal\figboxht}% + \figboxht=\baselineskip% + \multiply\figboxht by\mylines% + \advance\figboxht -\fight% + \ifdim\the\figboxht>\the\halfbaselineskip% + \advance\figboxht by -\floatunit% + \else\fi% + } + +%%% +%% Sections +% +\renewcommand\section{\@startsection {section}{1}{\z@}% + {-.999\baselineskip}% + {0.001\baselineskip}% + {\bfseries\mathversion{bold}}} +\renewcommand\subsection{\@startsection{subsection}{2}{\z@}% + {\baselineskip}% + {-.35\baselineskip}% + {\bfseries\unskip}} +\renewcommand\subsubsection{\@startsection{subsubsection}{3}{\z@}% + {\baselineskip}% + {-.35\baselineskip}% + {\itshape\unskip}} + +%%% +%% Floats +% +\let\oldfigure\figure +\let\oldendfigure\endfigure +\expandafter\let\csname oldfigurest\expandafter% + \endcsname\csname figure*\endcsname +\expandafter\let\csname oldendfigurest\expandafter% + \endcsname\csname endfigure*\endcsname + +\let\oldtable\table +\let\oldendtable\endtable +\expandafter\let\csname oldtablest\expandafter% + \endcsname\csname table*\endcsname +\expandafter\let\csname oldendtablest\expandafter% + \endcsname\csname endtable*\endcsname + +\renewenvironment{figure} + {\oldfigure\begin{gridfltenv}} + {\end{gridfltenv}\oldendfigure} +\renewenvironment{figure*} + {\oldfigurest\begin{gridfltenv}} + {\end{gridfltenv}\oldendfigurest} + +\renewenvironment{table} + {\oldtable\begin{gridfltenv}} + {\end{gridfltenv}\oldendtable} +\renewenvironment{table*} + {\oldtablest\begin{gridfltenv}} + {\end{gridfltenv}\oldendtablest} + +\newenvironment{gridfltenv} + {\global\setbox0=\vbox\bgroup} + {\egroup% + \xdef\fight{\the\ht0}% + \roundoff% + \leavevmode\vadjust{\box0\vskip\figboxht}\hfil\break% + } + +%%% +%% Equations +% +\newenvironment{gridenv} + {\global\setbox0=\vbox\bgroup} + {\egroup% + \xdef\fight{\the\ht0}% + \roundoff% + \leavevmode% + \vadjust{\vskip0.5\figboxht% + \box0% + \vskip0.5\figboxht% + }\hfil\break%% + } + +\jot=\baselineskip + +%%% +%% Extra vertical skip removed from the environments +% like verse, quotation, quote and description +\renewenvironment{verse} + {\let\\\@centercr + \list{}{\itemsep \z@ + \itemindent -1.5em% + \listparindent\itemindent + \rightmargin \leftmargin + \advance\leftmargin 1.5em}% + \topsep\z@\partopsep\z@\parskip\z@% + \itemsep\z@\@outerparskip\z@\parsep\z@% + \@topsep\z@\@topsepadd\z@% + \item\relax} + {\endlist} + +\renewenvironment{quotation} + {\list{}{\listparindent 1.5em% + \itemindent \listparindent + \rightmargin \leftmargin + \parsep \z@ \@plus\p@}% + \topsep\z@\partopsep\z@\parskip\z@% + \itemsep\z@\@outerparskip\z@\parsep\z@% + \@topsep\z@\@topsepadd\z@% + \item\relax} + {\endlist} + +\renewenvironment{quote} + {\list{}{\rightmargin\leftmargin}% + \topsep\z@\partopsep\z@\parskip\z@% + \itemsep\z@\@outerparskip\z@\parsep\z@% + \@topsep\z@\@topsepadd\z@% + \item\relax} + {\endlist} + +\renewenvironment{description} + {\list{}{\labelwidth\z@ \itemindent-\leftmargin + \topsep\z@\partopsep\z@\parskip\z@% + \itemsep\z@\@outerparskip\z@\parsep\z@% + \@topsep\z@\@topsepadd\z@% + \let\makelabel\descriptionlabel}} + {\endlist} + +%%% +%% Lists +% +\def\enumerate{% + \ifnum \@enumdepth >\thr@@\@toodeep\else + \advance\@enumdepth\@ne + \edef\@enumctr{enum\romannumeral\the\@enumdepth}% + \expandafter + \list + \csname label\@enumctr\endcsname + {\usecounter\@enumctr\def\makelabel##1{\hss\llap{##1}}% + \topsep\z@\partopsep\z@\parskip\z@\itemsep\z@% + \@outerparskip\z@\parsep\z@\@topsep\z@\@topsepadd\z@}% + \fi} + +\def\itemize{% + \ifnum \@itemdepth >\thr@@\@toodeep\else + \advance\@itemdepth\@ne + \edef\@itemitem{labelitem\romannumeral\the\@itemdepth}% + \expandafter + \list + \csname\@itemitem\endcsname + {\def\makelabel##1{\hss\llap{##1}}% + \topsep\z@\partopsep\z@\parskip\z@\itemsep\z@% + \@outerparskip\z@\parsep\z@\@topsep\z@\@topsepadd\z@}% + \fi} + +%%% +%% References +% +\renewenvironment{thebibliography}[1] + {\section*{\refname}% + \@mkboth{\MakeUppercase\refname}{\MakeUppercase\refname}% + \list{\@biblabel{\@arabic\c@enumiv}}% + {\settowidth\labelwidth{\@biblabel{#1}}% + \leftmargin\labelwidth + \advance\leftmargin\labelsep + \@openbib@code + \usecounter{enumiv}% + \let\p@enumiv\@empty + \topsep\z@\partopsep\z@\parskip\z@\itemsep\z@% + \@outerparskip\z@\parsep\z@\@topsep\z@\@topsepadd\z@% + \renewcommand\theenumiv{\@arabic\c@enumiv}}% + \sloppy + \clubpenalty4000 + \@clubpenalty \clubpenalty + \widowpenalty4000% + \sfcode`\.\@m} + {\def\@noitemerr + {\@latex@warning{Empty `thebibliography' environment}}% + \endlist} + +\endinput + +%% Enunciations (theorem, lemma etc) were not done +%% Square bracket option not currently supported for floats! \begin{figure}[!tbp] +%% Footnotes are not aligned correctly. +%% +%% End of file 'grid.sty' +%% diff --git a/macros/latex/contrib/grid/grid.tex b/macros/latex/contrib/grid/grid.tex new file mode 100644 index 0000000000..11bc766f5a --- /dev/null +++ b/macros/latex/contrib/grid/grid.tex @@ -0,0 +1,380 @@ +%% +%% This is file 'grid.tex', +%% +%% +%% grid.sty Copyright (C) 2009 River Valley Technologies +%% URL: http://www.river-valley.com +%% Email: +%% +%% This file may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either version 1.2 +%% of this license or (at your option) any later version. +%% The latest version of this license is in +%% http://www.latex-project.org/lppl.txt +%% and version 1.2 or later is part of all distributions of LaTeX +%% version 1999/12/01 or later. +%% +%% $Id: grid.tex 16 2009-06-16 07:04:50Z cvr $ +%% $URL: http://lenova.river-valley.com/svn/grid/trunk/grid.tex $ +%% + + +\documentclass[twocolumn]{article} + +% \IfFileExists{txfonts.sty} +% {\usepackage{txfonts}} +% {\usepackage{times}} +\usepackage{lipsum} + +\usepackage[xcolor]{rvdtx} + +%\usepackage[fontsize=8pt,baseline=9.6pt,lines=50]{grid} +%\usepackage[fontsize=9pt,baseline=10.8pt]{grid} +\usepackage[fontsize=10pt,baseline=12pt,lines=53]{grid} +%\usepackage[fontsize=11pt,baseline=13.2pt]{grid} +%\usepackage[fontsize=12pt,baseline=14.4pt]{grid} +%\usepackage[fontsize=20pt,baseline=24pt,lines=20]{grid} + +\newcommand{\ip}[2]{(#1, #2)} +\columnsep=20pt +\begin{document} + +\title{grid.sty --- Manual and Examples} +\author{River Valley Technologies} +\contact{latex.support@river-valley.com} +\version{1.0} +\date{2009/06/16} +%\keywords{\LaTeX, grid typesetting} + + +\maketitle + +\section{About this package} + +\texttt{grid.sty} is a \LaTeX\ package which helps to enable grid +typesetting in double column documents. Grid typesetting is a +difficult task in \LaTeX, this is only a humble attempt to help users +to achieve it in a limited way. This document has been typeset making +use of \verb+grid.sty+. The package needs a lot of improvements, this +is only a beginning. + +\subsection{Package options} +Three options were added in the package: +\begin{description} +\item[fontsize] sets the font size of the file. Default value is + \textit{10pt}. +\item[baseline] sets the baseline skip of the document. Default value + is \textit{12pt}. +\item[lines] sets the textheight of the document, which is calulated + by multiplying number of lines and baselineskip. The default value + is \textit{40}. +\end{description} + +\subsection{Package specific coding:} +Equations should be put inside \verb+\begin{gridenv}+ ... + \verb+\end{gridenv}+ environment. For example: +\begin{gridenv} +{\footnotesize +\begin{verbatim} +\begin{gridenv} +\begin{equation} +\ip{\Gamma}{\psi'} = x'' + y^{2} + z_{i}^{n} +\end{equation} +\end{gridenv} +\end{verbatim} +} +\begin{equation} +\ip{\Gamma}{\psi'} = x'' + y^{2} + z_{i}^{n}\label{eq1} +\end{equation} +\end{gridenv} + +\subsection{Limitations of the package} +\begin{itemize} +\item Enunciations (theorem, lemma etc) were not added in the package. +\item Optional argument of floats (poisitioning of floats) are not + currently supported. +\item Footnotes are not aligned correctly. +\end{itemize} + +These are some of the limitations of the package. The user manual ends here. + +The following text is taken from an example of \LaTeX. This can be +considered as an example input file for our purpose. Playing with this +file by changing the options and looking at the the generated output, +you can get a grip of how to produce a simple document of your own. + +\section{Ordinary Text} + +The ends of words and sentences are marked by spaces. It doesn't +matter how many spaces you type; one is as good as 100. The end of a +line counts as a space. + +One or more blank lines denote the end of a paragraph. +\begin{figure} +\vbox{\centering\fcolorbox{orange}{orange!20}{% + \hbox to 9.3pc{\vbox to 5pc{\hsize=9.3pc% + \vfill\centering \Huge + \color{orange!70}Grid and \LaTeX\par\vfill}}}} +\caption{Test figure.} +\end{figure} + +Since any number of consecutive spaces are treated like a single one, +the formatting of the input file makes no difference to \LaTeX, but it +makes a difference to you. When you use \LaTeX, making your input file +as easy to read as possible will be a great help as you write your +document and when you change it. This sample file shows how you can +add comments to your own input file. + +Because printing is different from typewriting, there are a number of +things that you have to do differently when preparing an input file +than if you were just typing the document directly. Quotation marks +like ``this'' have to be handled specially, as do quotes within +quotes: ``\,`this' is what I just wrote, not `that'\,''. + +Dashes come in three sizes: an intra-word dash, a medium dash for +number ranges like 1--2, and a punctuation dash---like this. +\begin{table}%[!b] +\centering +\begin{tabular}{l|c|r} +\hline +First & Second & Third \\ +\hline +Left & Center & Right \\ +Start & Middle& End\\ +\hline +\end{tabular} +\caption{Test table.} +\end{table} +\begin{table*}%[!b] +\tabcolsep=20pt +\centering +\begin{tabular}{l|c|r} +\hline +First & Second & Third \\ +\hline +Left & Center & Right \\ +Start & Middle& End\\ +\hline +\end{tabular} +\caption{Test table.} +\end{table*} + +A sentence-ending space should be larger than the space between words +within a sentence. You sometimes have to type special commands in +conjunction with punctuation characters to get this right, as in the +\begin{gridenv} +\begin{equation} +\ip{\Gamma}{\psi'} = x'' + y^{2} + z_{i}^{n}\label{eq1} +\end{equation} +\end{gridenv} +following sentence. Gnats, gnus, etc.\ all begin with G\@. You should +check the spaces after periods when reading your output to make sure +you haven't forgotten any special cases. Generating an ellipsis +\ldots\ with the right spacing around the periods requires a special +command. +\begin{gridenv} +\begin{eqnarray} +\frac{\sum^X_Y}{\prod'_C} = x'' + y^{2} + z_{i}^{n}\label{eq2}%\\ +%\frac{\int^\sum}{\int_prod'} = x'' + y^{2} + z_{i}^{n}\label{eq3}\\ +%\ip{\Gamma}{\psi'} = x'' + y^{2} + z_{i}^{n}\label{eq4} +\end{eqnarray} +\end{gridenv} +\LaTeX\ interprets some common characters as commands, so you must +type special commands to generate them. These characters include the +following: \$ \& \% \# \{ and \}. +\begin{gridenv} +\begin{equation} +\ip{\Gamma}{\psi'} = x'' + y^{2} + z_{i}^{n}\label{eq5} +\end{equation} +\end{gridenv} + +In printing, text is usually emphasized with an \emph{italic} type +style. + +\begin{em} + A long segment of text can also be emphasized in this way. Text + within such a segment can be given \emph{additional} emphasis. +\end{em} + +It is sometimes necessary to prevent \LaTeX\ from breaking a line +where it might otherwise do so. This may be at a space, as between the +``Mr.'' and ``Jones'' in ``Mr.~Jones'', or within a word---especially +when the word is a symbol like \mbox{\emph{itemnum}} that makes little +sense when hyphenated across lines. +\begin{figure} +\vbox{\centering\fcolorbox{brown!90}{brown!10}{\hbox to 14.3pc{% + \vbox to 15pc{% + \hsize=14.3pc% + \vfill\centering \fontsize{30}{40}\selectfont + \color{brown!50}Grid and \LaTeX\par\vfill}}}} +\caption{Test figure.} +\end{figure} + +\LaTeX\ is good at typesetting mathematical formulas like + \( x-3y + z = 7 \) +or + \( a_{1} > x^{2n} + y^{2n} > x' \) +or + \( \ip{A}{B} = \sum_{i} a_{i} b_{i} \). +The spaces you type in a formula are ignored. Remember that a letter +like $x$ is a formula when it denotes a mathematical symbol, and it +should be typed as one. + +\section{Displayed Text} + +Text is displayed by indenting it from the left margin. Quotations are +commonly displayed. There are short quotations +\begin{quote} + This is a short a quotation. It consists of a single paragraph of + text. See how it is formatted. +\end{quote} +and longer ones. +\begin{quotation} + This is a longer quotation. It consists of two paragraphs of text, + neither of which are particularly interesting. + + This is the second paragraph of the quotation. It is just as dull as + the first paragraph. +\end{quotation} +Another frequently-displayed structure is a list. The following is an +example of an \emph{itemized} list. +\begin{itemize} +\item This is the first item of an itemized list. Each item in the + list is marked with a ``tick''. You don't have to worry about what + kind of tick mark is used. + +\item This is the second item of the list. It contains another list + nested inside it. The inner list is an \emph{enumerated} list. + \begin{enumerate} + \item This is the first item of an enumerated list that is nested + within the itemized list. + + \item This is the second item of the inner list. \LaTeX\ allows you + to nest lists deeper than you really should. + \end{enumerate} + This is the rest of the second item of the outer list. It is no more + interesting than any other part of the item. + +\item This is the third item of the list. +\end{itemize} +You can even display poetry. +\begin{verse} + There is an environment for verse \\ + Whose features some poets will curse. + + For instead of making\\ + Them do \emph{all} line breaking, \\ + It allows them to put too many words on a line when they'd rather be + forced to be terse. +\end{verse} + +Mathematical formulas may also be displayed. A displayed formula is +one-line long; multiline formulas require special formatting +instructions. +\[ \ip{\Gamma}{\psi'} = x'' + y^{2} + z_{i}^{n}\] +Don't start a paragraph with a displayed equation, nor make one a +paragraph by itself. + +\section{Some bizarre text} + +\lipsum[1] +\begin{gridenv} +\begin{eqnarray} +\frac{\sum^X_Y}{\prod'_C} = x'' + y^{2} + z_{i}^{n}\label{eq2}\\ +\frac{\int^\sum}{\int_prod'} = x'' + y^{2} + z_{i}^{n}\label{eq3}\\ +\ip{\Gamma}{\psi'} = x'' + y^{2} + z_{i}^{n}\label{eq4} +\end{eqnarray} +\end{gridenv} +\lipsum[2] +\begin{gridenv} +\begin{equation} +\ip{\Gamma}{\psi'} = x'' + y^{2} + z_{i}^{n}\label{eq1} +\end{equation} +\end{gridenv} +\lipsum[3] +\begin{gridenv} +\begin{eqnarray} +\frac{\sum^X_Y}{\prod'_C} = x'' + y^{2} + z_{i}^{n}\label{eq2}\\ +\ip{\Gamma}{\psi'} = x'' + y^{2} + z_{i}^{n}\label{eq4} +\end{eqnarray} +\end{gridenv} +\lipsum[4] +\begin{gridenv} +\begin{equation} +\ip{\Gamma}{\psi'} = x'' + y^{2} + z_{i}^{n}\label{eq1} +\end{equation} +\end{gridenv} +\lipsum[5] +\begin{gridenv} +\begin{eqnarray} +\frac{\sum^X_Y}{\prod'_C} = x'' + y^{2} + z_{i}^{n}\label{eq2} +%\\ +%\frac{\int^\sum}{\int_prod'} = x'' + y^{2} + z_{i}^{n}\label{eq3}\\ +%\ip{\Gamma}{\psi'} = x'' + y^{2} + z_{i}^{n}\label{eq4}\\ +%\frac{\int^\sum}{\int_prod'} = x'' + y^{2} + z_{i}^{n}\label{eq3}\\ +%\ip{\Gamma}{\psi'} = x'' + y^{2} + z_{i}^{n}\label{eq4} +\end{eqnarray} +\end{gridenv} +\lipsum[10] +\begin{gridenv} +\begin{eqnarray} +\frac{\sum^X_Y}{\prod'_C} = x'' + y^{2} + z_{i}^{n}\label{eq2}\\ +\end{eqnarray} +\end{gridenv} +\lipsum[11] +\begin{gridenv} +\begin{eqnarray} +\frac{\int^\sum}{\int_prod'} = x'' + y^{2} + z_{i}^{n}\label{eq3}\\ +\ip{\Gamma}{\psi'} = x'' + y^{2} + z_{i}^{n}\label{eq4}\\ +\frac{\sum^X_Y}{\prod'_C} = x'' + y^{2} + z_{i}^{n}\label{eq2}\\ +\frac{\int^\sum}{\int_prod'} = x'' + y^{2} + z_{i}^{n}\label{eq3}\\ +\ip{\Gamma}{\psi'} = x'' + y^{2} + z_{i}^{n}\label{eq4} +\end{eqnarray} +\end{gridenv} +\lipsum[3] +\begin{gridenv} +\begin{equation} +\ip{\Gamma}{\psi'} = x'' + y^{2} + z_{i}^{n}\label{eq1} +\end{equation} +\end{gridenv} + +\begin{figure*} +\vbox{\centering\fcolorbox{brown!90}{brown!10}{\hbox to .9\textwidth{% + \vbox to 10pc{% + \hsize=.9\textwidth% + \vfill\centering \fontsize{30}{40}\selectfont + \color{brown!50}Grid and \LaTeX\par\vfill}}}} +\caption{Test figure.} +\end{figure*} +\lipsum[8] +\begin{gridenv} +\begin{eqnarray} +\frac{\sum^X_Y}{\prod'_C} = x'' + y^{2} + z_{i}^{n}\label{eq2}\\ +\frac{\int^\sum}{\int_prod'} = x'' + y^{2} + z_{i}^{n}\label{eq3}\\ +\end{eqnarray} +\end{gridenv} +\lipsum[7] +\begin{gridenv} +\begin{eqnarray} +\frac{\sum^X_Y}{\prod'_C} = x'' + y^{2} + z_{i}^{n}\label{eq2}\\ +\end{eqnarray} +\end{gridenv} +\begin{figure} +\vbox{\centering\fcolorbox{brown!90}{brown!10}{\hbox to 14.3pc{% + \vbox to 15pc{% + \hsize=14.3pc% + \vfill\centering \fontsize{30}{40}\selectfont + \color{brown!50}Grid and \LaTeX\par\vfill}}}} +\caption{Test figure.} +\end{figure} +\lipsum[3] +\begin{gridenv} +\begin{equation} +\ip{\Gamma}{\psi'} = x'' + y^{2} + z_{i}^{n}\label{eq1} +\end{equation} +\end{gridenv} +\lipsum[1-3] + +\end{document} + +% End of document. diff --git a/macros/latex/contrib/grid/manifest.txt b/macros/latex/contrib/grid/manifest.txt new file mode 100644 index 0000000000..ce5e492719 --- /dev/null +++ b/macros/latex/contrib/grid/manifest.txt @@ -0,0 +1,44 @@ +% +% +% Copyright 2009, River Valley Technologies +% +% $Id: manifest.txt 13 2009-06-16 06:58:29Z cvr $ +% $URL: http://lenova.river-valley.com/svn/grid/trunk/manifest.txt $ +% +% This file is part of the 'grid' package. +% ----------------------------- +% +% It may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.2 +% of this license or (at your option) any later version. +% The latest version of this license is in +% http://www.latex-project.org/lppl.txt +% and version 1.2 or later is part of all distributions of LaTeX +% version 1999/12/01 or later. +% +% The list of all files belonging to the LaTeX 'grid' package is +% given in this file `manifest.txt'. +% +% +% CONTENTS OF THE GRID PACKAGE +% ====================== + +grid.sty + Main package + +grid.tex + User instructions and examples + +rvdtx.sty + Auxiliary package needed to typeset grid.tex + +Makefile + Makefile to process grid.tex, will work in GNU/Linux or Mac + OSX + +manifest.txt + This file + +README + A readme which tells about the basic features of grid package + diff --git a/macros/latex/contrib/grid/rvdtx.sty b/macros/latex/contrib/grid/rvdtx.sty new file mode 100644 index 0000000000..cb69425997 --- /dev/null +++ b/macros/latex/contrib/grid/rvdtx.sty @@ -0,0 +1,467 @@ +% +% +% File: rvdtx.sty +% +% Auxiliary package to format *.dtx documents. +% +% Copyright (c) 2008, CV Radhakrishnan , +% +% This file may be distributed and/or modified under the conditions +% of the LaTeX Project Public License, either version 1.2 of this +% license or (at your option) any later version. The latest version +% of this license is in: +% +% http://www.latex-project.org/lppl.txt +% +% and version 1.2 or later is part of all distributions of LaTeX +% version 1999/12/01 or later. +% +% +\newcounter{colorscheme} + +\newif\if@xcolor \@xcolorfalse +\newif\if@mylogo \@mylogofalse + +\DeclareOption{mylogo}{\global\@mylogotrue} +\DeclareOption{green}{\setcounter{colorscheme}{1}} +\DeclareOption{orange}{\setcounter{colorscheme}{0}} +\DeclareOption{xcolor}{\global\@xcolortrue} +\ProcessOptions +\def\loadXcolor{\if@xcolor\RequirePackage[dvipsnames,svgnames]{xcolor}\fi} + +\loadXcolor +\ifcase\thecolorscheme +% +% Orange color spec (default) +% + \colorlet{itemcolor}{brown} + \colorlet{verbcolor}{Sepia} + \colorlet{botrulecolor}{orange!25} + \colorlet{botbgcolor}{orange!15} + \colorlet{botcolor}{orange!80} + \colorlet{pgrulecolor}{orange} + \colorlet{pgbgcolor}{white} + + \colorlet{quicklinkrulecolor}{orange!40} + \colorlet{quicklinkcolor}{brown} + \colorlet{topverticalrule}{brown} + \colorlet{titlecolor}{brown} + \colorlet{hlinkcolor}{brown} + \colorlet{hlinktricolor}{orange!70} + \colorlet{linkcolor}{brown} + \colorlet{urlcolor}{brown} + + \colorlet{arrayrulecolor}{olive!30} + \colorlet{seccolor}{brown} + + \colorlet{toprulecolor}{orange!30} + \colorlet{topbgcolor}{orange!10} + \colorlet{topcolor}{brown!80} +% +% +\or% Green color specs +% +% + \colorlet{itemcolor}{OliveGreen} + \colorlet{verbcolor}{OliveGreen} + \colorlet{botrulecolor}{GreenYellow!25} + \colorlet{botbgcolor}{GreenYellow!30} + \colorlet{botcolor}{Green!80} + \colorlet{pgrulecolor}{GreenYellow} + \colorlet{pgbgcolor}{white} + + \colorlet{quicklinkrulecolor}{Green!40} + \colorlet{quicklinkcolor}{Green} + \colorlet{topverticalrule}{Green} + \colorlet{titlecolor}{DarkOliveGreen} + \colorlet{hlinkcolor}{DarkOliveGreen} + \colorlet{hlinktricolor}{Green!70} + \colorlet{linkcolor}{OliveGreen} + \colorlet{urlcolor}{OliveGreen} + + \colorlet{arrayrulecolor}{olive!30} + \colorlet{seccolor}{OliveGreen} + + \colorlet{toprulecolor}{GreenYellow!50} + \colorlet{topbgcolor}{GreenYellow!20} + \colorlet{topcolor}{GreenYellow!80} +\fi + +\def\floatpagefraction{.99} +\usepackage{geometry} +\geometry{top=2in, + bottom=1in, + left=1in, + right=1in, + a4paper} + +\DeclareRobustCommand{\LaTeX}{L\kern-.25em% + {\sbox\z@ T% + \vbox to\ht\z@{% + \hbox{% + \check@mathfonts + \fontsize\sf@size\z@ + \math@fontsfalse\selectfont + A}% + \vss}% + }% + \kern-.10em% + \TeX} + +\IfFileExists{pdfwidgets.sty}{\RequirePackage{pdfwidgets}}{} + +\RequirePackage{comment,xspace} +\def\xml{\textsc{xml}\xspace} +\def\latex{\LaTeX\xspace} +\def\pdf{\textsc{pdf}\xspace} +\def\pdfa{\textsc{pdf/a-1}b\xspace} +\def\pdfx{\textsc{pdf/x-1}a\xspace} +\def\xmp{\textsc{xmp}\xspace} +\def\pdftex{\textsc{pdf\TeX}\xspace} +\def\defmacro#1{\texttt{\@bsl#1}} +\def\thanh{H\`an Th\^e Th\`anh\xspace} +\def\gnulinux{\textsc{gnu/linux}\xspace} + +\let\@DRAFTout@Hook\@empty +\newcommand{\DRAFTout}{\g@addto@macro\@DRAFTout@Hook} +\newcommand{\@DRAFTout@Out}{% + \afterassignment\@DRAFTout@Test + \global\setbox\@cclv= % + } +\newcommand{\@DRAFTout@Test}{% + \ifvoid\@cclv\relax + \aftergroup\@DRAFTout@Output + \else + \@DRAFTout@Output + \fi% + } +\newcommand{\@DRAFTout@Output}{% + \@DRAFTout@Hook% + \@DRAFTout@Org@Out\box\@cclv% + } +\newcommand{\@DRAFTout@Org@Out}{} +\newcommand*{\@DRAFTout@Init}{% + \let\@DRAFTout@Org@Out\shipout + \let\shipout\@DRAFTout@Out + } +\newdimen\OHeight +\setlength\OHeight{\textheight} +\addtolength\OHeight{\headheight} +\addtolength\OHeight{\headsep} +\addtolength\OHeight{\footskip} + +\newif\ifoverlay\overlayfalse + +\AtBeginDocument{\@DRAFTout@Init} +\newcommand{\@DraftOverlay@Hook}{} +\newcommand{\AddToDraftOverlay}{\g@addto@macro\@DraftOverlay@Hook} +\newcommand{\ClearDraftOverlay}{\let\@DraftOverlay@Hook\@empty} +\newcommand{\@DraftOverlay}{% + \ifx\@DraftOverlay@Hook\@empty + \else + \bgroup + \@tempdima=1in + \@tempcnta=\@tempdima + \@tempcntb=-\@tempdima + \advance\@tempcntb\paperheight + \ifoverlay + \global\setbox\@cclv\vbox{% + \box\@cclv + \vbox{\let\protect\relax% + \unitlength=1pt% + \pictur@(0,0)(\strip@pt\@tempdima,\strip@pt\@tempdimb)% + \@DraftOverlay@Hook% + \endpicture}}% + \else + \global\setbox\@cclv\vbox{% + \vbox{\let\protect\relax% + \unitlength=1sp% + \pictur@(0,0)(\@tempcnta,\@tempcntb)% + \@DraftOverlay@Hook% + \endpicture}% + \box\@cclv}% + \fi + \egroup + \fi +} + +\definecolor{gray30}{gray}{.7} +\definecolor{gray20}{gray}{.8} +\definecolor{gray10}{gray}{.9} + +\DRAFTout{\@DraftOverlay} +\long\def\puttext(#1)#2{\AddToDraftOverlay{% + \setlength{\unitlength}{1pt}\thinlines% + \put(#1){#2}}} + +\RequirePackage{shortvrb} +%\MakeShortVerb{\|} +\RequirePackage{amsfonts,amssymb} +\IfFileExists{pxfonts.sty}{\RequirePackage{pxfonts}}{} +\IfFileExists{charter.sty}{\RequirePackage{charter}}{} +\IfFileExists{lfr.sty}{\RequirePackage[scaled=.85]{lfr}}{} +\IfFileExists{prima.sty}{\RequirePackage[scaled=.8]{prima}}{} + +\def\theCodelineNo{\reset@font\tiny\arabic{CodelineNo}} + +\def\@seccntformat#1{\llap{\csname the#1\endcsname.\hspace*{6pt}}} +\def\@seccntformat#1{{\csname the#1\endcsname.\hspace*{6pt}}} +\def\section{\@startsection {section}{1}{\z@}% + {-3.5ex \@plus -1ex \@minus -.2ex}% + {2.3ex \@plus.2ex}% + {\normalfont\large\bfseries\color{seccolor}}} +\def\subsection{\@startsection{subsection}{2}{\z@}% + {-2.25ex\@plus -1ex \@minus -.2ex}% + {1.5ex \@plus .2ex}% + {\normalfont\normalsize\bfseries\color{seccolor}}} +\def\subsubsection{\@startsection{subsubsection}{3}{\z@}% + {-1.25ex\@plus -1ex \@minus -.2ex}% + {1.5ex \@plus .2ex}% + {\normalfont\normalsize\bfseries\color{seccolor}}} + +%\RequirePackage[draft]{pdfdraftcopy} +% \draftstring{} + \puttext(0,36){\botstring}% + \puttext(0,840){\copy\topbox} +\if@mylogo + \puttext(531,829){\cvrlogo} +\fi + +\RequirePackage{colortbl} +\arrayrulecolor{arrayrulecolor} +\let\shline\hline +\def\hline{\noalign{\vskip3pt}\shline\noalign{\vskip4pt}} + +\RequirePackage[pdftex,colorlinks]{hyperref} +\def\Hlink#1#2{\hyperlink{#2}{\color{hlinktricolor}% + $\blacktriangleright$~\color{hlinkcolor}#1}} + \def\@linkcolor{linkcolor} + \def\@urlcolor{urlcolor} + +\pagestyle{empty} +\def\version#1{\gdef\@version{#1}} +\def\@version{1.0} +\def\contact#1{\gdef\@contact{#1}} +\def\author#1{\gdef\@author{#1}} +\def\@author{River Valley Technologies} +\def\@contact{\texttt{support@river-valley.com}} +\def\keywords#1{\gdef\@keywords{#1}} +\def\@keywords{\LaTeX, \xml} + +\long\def\Hrule{\\[-4pt]\hspace*{-3em}% + {\color{quicklinkrulecolor}\rule{\linewidth}{.1pt}}\\} + +\long\def\dtxmark[#1][#2]#3#4#5{\def\next{#1}% + \ifcase\next\or\Hlink{#4}{#3}\Hrule \fi} + +\newcounter{dtx} + +\long\def\ddtxmark[#1][#2]#3#4#5{\def\next{#1}% + \stepcounter{dtx}\parbox{.45\linewidth}% + {\ifcase\next\or\Hlink{#4}{#3}\fi}% + \ifodd\thedtx\relax\else\Hrule\fi} + +%\global\let\dtxmark\ddtxmark + +\newbox\topbox +\long\def\maketitle{\global\setbox\topbox=\vbox{\hsize=\paperwidth + \parindent=0pt + \fcolorbox{toprulecolor}{topbgcolor}% + {\parbox[t][1.5in][c]{\paperwidth}% + {\hspace*{15mm}% + \parbox[c]{.35\paperwidth}{\fontsize{18pt}{20pt}% + \raggedright\normalfont\sffamily \selectfont + \color{titlecolor} \@title\\[6pt] + {\normalsize\rmfamily\scshape\@author}}% +% {\footnotesize\textsc{keywords:} \@keywords}}% + \hfill + \parbox[c][1.5in][c]{1mm}{\color{topverticalrule}% + \rule{.1pt}{1.5in}}% + \hfill + \parbox[c][1.5in][c]{.35\paperwidth}% + {\normalfont\footnotesize\sffamily\color{quicklinkcolor}% + \vspace*{6pt} QUICK LINKS\Hrule + \IfFileExists{tmp.out}{\input tmp.out}{}% + }\hspace*{5mm}% + }% + }% + }% +} +\gdef\botstring{\fcolorbox{botrulecolor}{botbgcolor}% + {\parbox[t][.5in][t]{\paperwidth}% + {\normalfont\sffamily\footnotesize% + \color{botcolor}% + \hspace*{5mm}\parbox[c][.5in][c]{.45\paperwidth}% + {\raggedright River Valley Technologies, + \href{http://www.river-valley.com}{% + http://www.river-valley.com}\\ + \textsc{sjp} Building, Cotton Hills, Trivandrum + 695014, India\\ 9, Browns Court, Kennford, + Exeter, United Kingdom + }\hfill% + \parbox[c][.5in][c]{1cm} + {\centering\sffamily\mdseries + \fcolorbox{pgrulecolor}{pgbgcolor}{\thepage}% + }\hfill + \parbox[c][.5in][c]{.45\paperwidth} + {\raggedleft\tabcolsep=3pt\begin{tabular}{rl}% + Version:&\@version\\[1pt] + Date:&\@date\\[1pt] + Contact:&\@contact + \end{tabular}\hspace*{5mm}% + }% + }% + }% + } + +%\RequirePackage{enumitem} +%\setitemize[1]{label={\small\color{itemcolor}$\blacktriangleright$},itemsep=0pt} +%\setitemize[2]{label={\small\color{itemcolor}$\triangleright$},itemsep=0pt} +%\setenumerate[1]{label={\small\color{itemcolor}\arabic*.},itemsep=0pt} + +\def\MacroFont{\fontencoding\encodingdefault + \fontfamily\ttdefault + \fontseries\mddefault + \fontshape\updefault + \color{verbcolor}\small}% + +\def\verbatim@font{\normalfont\color{verbcolor}\ttfamily} + +\def\verb{\relax\ifmmode\hbox\else\leavevmode\null\fi + \bgroup + \verb@eol@error \let\do\@makeother \dospecials + \verbatim@font\@noligs + \@ifstar\@sverb\@verb} + + +\def\@lbr{\expandafter\@gobble\string\{} +\def\@rbr{\expandafter\@gobble\string\}} +\def\@bsl{\expandafter\@gobble\string\\} +\def\@Bsl#1{\texttt{\@bsl#1}\xspace} +\def\trics#1{\protect\@Bsl{#1}} +\def\onecs#1{\protect\@Bsl{#1}} +%\let\trics\onecs +\@ifundefined{c@Glossary}{}{\c@GlossaryColumns=1 + \c@IndexColumns=2} + +\def\index@prologue{\section{Index}% + \markboth{Index}{Index}% +% Numbers written in italic refer to the page +% where the corresponding entry is described; +% numbers underlined refer to the +% \ifcodeline@index +% code line of the +% \fi +% definition; numbers in roman refer to the +% \ifcodeline@index +% code lines +% \else +% pages +% \fi +% where the entry is used. + } + +\@ifundefined{theglossary}{}{% +\renewenvironment{theglossary}{% + \glossary@prologue%][\GlossaryMin]% + \GlossaryParms \let\item\@idxitem \ignorespaces}% + {}} + +\newenvironment{decl}[1][]% + {\par\small\addvspace{1.5ex plus 1ex}% + \vskip -\parskip + \ifx\relax#1\relax + \def\@decl@date{}% + \else + \def\@decl@date{\NEWfeature{#1}}% + \fi + \noindent%\hspace{-\leftmargini}% + \begin{tabular}{l}\hline\ignorespaces}% + {\\\hline\end{tabular}\nobreak\@decl@date\par\nobreak + \vspace{0.75ex}\vskip -\parskip\ignorespacesafterend\noindent} + +\newif\ifhave@multicol +\newif\ifcodeline@index + +\IfFileExists{multicol.sty}{\have@multicoltrue + \RequirePackage{multicol}% + }{} + +\newdimen\IndexMin \IndexMin = 80pt +\newcount\c@IndexColumns \c@IndexColumns = 2 +\ifhave@multicol + \renewenvironment{theindex} + {\begin{multicols}\c@IndexColumns[\index@prologue][\IndexMin]% + \IndexParms \let\item\@idxitem \ignorespaces}% + {\end{multicols}} +\else + \typeout{Can't find multicol.sty -- will use normal index layout if + necessary.} + \def\theindex{\@restonecoltrue\if@twocolumn\@restonecolfalse\fi + \columnseprule \z@ \columnsep 35\p@ + \twocolumn[\index@prologue]% + \IndexParms \let\item\@idxitem \ignorespaces} + \def\endtheindex{\if@restonecol\onecolumn\else\clearpage\fi} +\fi +\long\def\IndexPrologue#1{\@bsphack\def\index@prologue{#1}\@esphack} +\@ifundefined{index@prologue} + {\def\index@prologue{\section{Index}% + \markboth{Index}{Index}% +% Numbers written in italic refer to the page +% where the corresponding entry is described; +% numbers underlined refer to the +% \ifcodeline@index +% code line of the +% \fi +% definition; numbers in roman refer to the +% \ifcodeline@index +% code lines +% \else +% pages +% \fi +% where the entry is used. + }}{} +\@ifundefined{IndexParms} + {\def\IndexParms{% + \parindent \z@ + \columnsep 15pt + \parskip 0pt plus 1pt + \rightskip 15pt + \mathsurround \z@ + \parfillskip=-15pt + \footnotesize + \def\@idxitem{\par\hangindent 30pt}% + \def\subitem{\@idxitem\hspace*{15pt}}% + \def\subsubitem{\@idxitem\hspace*{25pt}}% + \def\indexspace{\par\vspace{10pt plus 2pt minus 3pt}}% + }}{} +\def\efill{\hfill\nopagebreak}% +\def\dotfill{\leaders\hbox to.6em{\hss .\hss}\hskip\z@ plus 1fill}% +\def\dotfil{\leaders\hbox to.6em{\hss .\hss}\hfil}% +\def\pfill{\unskip~\dotfill\penalty500\strut\nobreak + \dotfil~\ignorespaces}% + +\let\scan@allowedfalse\relax + +\def\tlformat#1{\begingroup\Large + \parbox[c][1.25em][c]{1.25em}{\centering\fontfamily{phv} + \fontseries{m}% + \selectfont\color{white}\huge#1}% + \endgroup} +\def\tlFormat#1{\begingroup\Large + \parbox[c][1.25em][c]{1.25em}{\centering\fontfamily{phv} + \fontseries{m}% + \selectfont\color{black}\huge#1}% + \endgroup} +\def\cvrlogo{\begingroup\fboxsep=2pt + \colorbox{olive}{\tlformat{c}}% + \colorbox{blue}{\tlformat{v}}% + \colorbox{red}{\tlformat{r}} + \endgroup} + + +\endinput + +%% +%% End of file 'rvdtx.sty' +%% -- cgit v1.2.3