summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex/manuscript
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2006-01-11 23:54:51 +0000
committerKarl Berry <karl@freefriends.org>2006-01-11 23:54:51 +0000
commit622a8e8f46d7dd1f383892f3aab85290a577c020 (patch)
tree2a1d877b697b2657bd64251af104271ce9c90270 /Master/texmf-dist/source/latex/manuscript
parent105ed3d34158250f584cf5efe4e88f9f441e5cc7 (diff)
trunk/Master/texmf-dist/source/latex/manuscript
git-svn-id: svn://tug.org/texlive/trunk@370 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source/latex/manuscript')
-rw-r--r--Master/texmf-dist/source/latex/manuscript/Makefile19
-rw-r--r--Master/texmf-dist/source/latex/manuscript/manuscript.drv29
-rw-r--r--Master/texmf-dist/source/latex/manuscript/manuscript.dtx356
-rw-r--r--Master/texmf-dist/source/latex/manuscript/manuscript.ins14
4 files changed, 418 insertions, 0 deletions
diff --git a/Master/texmf-dist/source/latex/manuscript/Makefile b/Master/texmf-dist/source/latex/manuscript/Makefile
new file mode 100644
index 00000000000..f13dca7fe4a
--- /dev/null
+++ b/Master/texmf-dist/source/latex/manuscript/Makefile
@@ -0,0 +1,19 @@
+all: manuscript.dvi
+
+manuscript.dvi: manuscript.gls manuscript.ind
+ latex manuscript.drv
+
+manuscript.gls: manuscript.glo
+ makeindex -s gglo -o manuscript.gls manuscript.glo
+
+manuscript.ind: manuscript.idx
+ makeindex -s gind manuscript
+
+manuscript.glo: manuscript.drv
+ latex manuscript.drv
+
+manuscript.idx: manuscript.drv
+ latex manuscript.drv
+
+manuscript.drv: manuscript.dtx manuscript.ins
+ latex manuscript.ins
diff --git a/Master/texmf-dist/source/latex/manuscript/manuscript.drv b/Master/texmf-dist/source/latex/manuscript/manuscript.drv
new file mode 100644
index 00000000000..0efe3768a6c
--- /dev/null
+++ b/Master/texmf-dist/source/latex/manuscript/manuscript.drv
@@ -0,0 +1,29 @@
+%%
+%% This is file `manuscript.drv',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% manuscript.dtx (with options: `driver')
+%% This is a stripped version of the original file.
+%% Copyright (C) 2002 Matej Cepl
+%% $Id: manuscript.dtx,v 1.4 2002/05/23 16:34:41 matej Exp $
+%% This program 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.
+\ProvidesFile {manuscript.dtx}
+ [2003/06/17 1.5 emulate typesetting of typewriter]
+\documentclass{ltxdoc}
+\EnableCrossrefs
+\RecordChanges
+\CodelineIndex
+\begin{document}
+ \DocInput{manuscript.dtx}
+\end{document}
+%% This is the end of the stripped file.
+%%
+%% End of file `manuscript.drv'.
diff --git a/Master/texmf-dist/source/latex/manuscript/manuscript.dtx b/Master/texmf-dist/source/latex/manuscript/manuscript.dtx
new file mode 100644
index 00000000000..bd3bb561040
--- /dev/null
+++ b/Master/texmf-dist/source/latex/manuscript/manuscript.dtx
@@ -0,0 +1,356 @@
+% \CheckSum{137}
+% \iffalse
+%% Copyright (C) 2002 Matej Cepl
+%% $Id: manuscript.dtx,v 1.4 2002/05/23 16:34:41 matej Exp $
+%% This program 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.
+%
+% \CharacterTable
+% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
+% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
+% Digits \0\1\2\3\4\5\6\7\8\9
+% Exclamation \! Double quote \" Hash (number) \#
+% Dollar \$ Percent \% Ampersand \&
+% Acute accent \' Left paren \( Right paren \)
+% Asterisk \* Plus \+ Comma \,
+% Minus \- Point \. Solidus \/
+% Colon \: Semicolon \; Less than \<
+% Equals \= Greater than \> Question mark \?
+% Commercial at \@ Left bracket \[ Backslash \\
+% Right bracket \] Circumflex \^ Underscore \_
+% Grave accent \` Left brace \{ Vertical bar \|
+% Right brace \} Tilde \~}
+%
+%<*package>
+\NeedsTeXFormat{LaTeX2e}[1996/06/01]
+\ProvidesPackage{manuscript}
+%</package>
+%<*!package>
+\ProvidesFile {manuscript.dtx}
+%</!package>
+ [2003/06/17 1.5 emulate typesetting of typewriter]
+%<*driver>
+\documentclass{ltxdoc}
+\EnableCrossrefs
+\RecordChanges
+\CodelineIndex
+\begin{document}
+ \DocInput{manuscript.dtx}
+\end{document}
+%</driver>
+%<*!driver>
+% \fi
+
+% \DoNotIndex{\@empty,\@ifundefined,\AtBeginDocument,\def,\else}
+% \DoNotIndex{\ExecuteOptions,\fi,\huge,\hyphenpenalty,\ifMS@ps}
+% \DoNotIndex{\LARGE,\let,\MS@psfalse,\MS@pstrue,\MS@maketitle}
+% \DoNotIndex{\newif,\ProcessOptions,\relax,\renewcommand,\RequirePackage}
+% \DoNotIndex{\typearea,\usefont}
+% \DoNotIndex{\MS@quote,\MS@questquote,\MS@next,\MS@dblq,\MS@sglq}
+% \changes{1.0}{2002 May 20}{Initial version}
+% \changes{1.2}{2002 May 22}{\cs{fileversion} and \cs{filedate}
+% which does not seem to work at all being replaced by \cs{RCS}
+% command from \texttt{rcs} package.}
+% \changes{1.4}{2002 May 23}{With help of Stepan Kasal (stepan at
+% matsrv dot mat dot cas dot cz) I have managed to get
+% \cs{fileversion} working, so I have get rid off rcs.sty again.}
+% \changes{1.5}{2003 June 26}{Something happened to all |fi|.}
+% \GetFileInfo{manuscript.dtx}
+% \title{\bfseries \texttt{Manuscript}---A Package Emulating
+% Typewriter ``Typesetting''}
+% \author{Mat\v{e}j Cepl, \texttt{matej at ceplovi dot cz}}
+% \date{This document describes package \texttt{manuscript}\\
+% version \fileversion, from \filedate}
+% \maketitle
+% \MakeShortVerb{\|}
+%
+% \changes{1.5}{2003 June 26}{Whole this section was
+% substantially rewritten---coming from defensive to the
+% offensive |:-)|.}
+% \section{Purpose}
+% Purpose of this package is to emulate appearance of the
+% document written on classical typewriter as much as possible.
+% So far, whenever backward requirement of some institutions
+% (especially universities) to provide paper or thesis in the
+% layout developed in times before personal computers emerges on
+% any TeX-related public forum, it is met with strong (and
+% sometimes even angry) resistance and many advises how to
+% overcome resistance of the institution. I totally agree with
+% the basic premise of this attempt (of course, \TeX\ was created
+% for making ``masterpieces of typography'').
+%
+% Having said that, this package goes exactly in the opposite
+% direction than these advises. Instead of trying to avoid
+% typewriter-driven layout, it tries to emulate them as much as
+% possible. Of course, the most important motivation for such
+% package is challenge and curiosity how far I can get
+% using just \TeX\ tools in this endeavor. However, there are
+% also some real reasons why this package might be useful. First
+% of all there are situations when the directives of backward
+% layout are non-negotiable (e.\,g.,~in commercial setting or
+% with too stiff university). Moreover, my conciliatory character
+% leads me more to honor other cultures (and although very
+% short-lived and feeble, there \emph{was} a typographical
+% culture of typewriters) rather then rejecting them. Actually,
+% during work on this package my appreciation of strict
+% puritanical simplicity of typewriters typesetting just grew
+% (and of course, it is obvious that in some aspects typesetting
+% documents with this package would create documents of the
+% quality never possible with the real typewriter---just \TeX{}'s
+% optimal line breaking with few divided words makes a lot of
+% difference).
+%
+% If you like it, enjoy! If not, sorry, just use another
+% package.
+%
+% Another objective was to secure compatibility both with
+% classical |article|-like packages as well as with packages from
+% |Koma-script| family.
+%
+% \StopEventually{\PrintIndex\PrintChanges}
+%
+% \section{The Coding}
+%
+% \begin{macro}{MS@ps}
+% The first of all we need to create new condition |MS@ps| to
+% control package options---whether font Courier should be used
+% (if true) or |cmtt|. We cannot use |ifthen| package as it
+% redefines catcodes and conflicts with the redefinition of
+% quotes for |cmtt| font (see below).
+% \begin{macrocode}
+\newif\ifMS@ps
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\DeclareOption}
+% \begin{macro}{\ExecuteOptions}
+% \begin{macro}{\ProcessOptions}
+% Declare the options by setting |MS@ps| variable. The options
+% |cm| and |cr| set use of font |cmtt| or Courier, respectively.
+% We want to use Courier as default option.
+% \begin{macrocode}
+\DeclareOption{cm}{\MS@psfalse}
+\DeclareOption{cr}{\MS@pstrue}
+\ExecuteOptions{cr}
+\ProcessOptions\relax
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% We need to read some additional packages which are needed for
+% good working of the package: |setspace| because whole document
+% should be doublespaced (except for footnotes etc.), |fontenc|
+% because we should be able to print all European characters (it
+% could be redefined in the document itself \emph{after} loading
+% |manuscript| package, and |ragged2e| because of linebreaking
+% and ragged justification.
+% \begin{macrocode}
+\RequirePackage{setspace}
+\RequirePackage[T1]{fontenc}
+\RequirePackage[NewCommands]{ragged2e}
+\RequirePackage{soul}
+% \end{macrocode}
+%
+% \begin{macro}{\rmdefault}
+% \changes{1.5}{2003 June 26}{With CM-Super we need not \cs{ae}
+% package anymore.}
+% We need to set up the default font for Roman characters based
+% on the boolean variable |MS@ps|.
+% \begin{macrocode}
+\ifMS@ps
+ \renewcommand{\rmdefault}{pcr}
+\else
+ \renewcommand{\rmdefault}{cmtt}
+\fi
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\descfont}
+% \begin{macro}{\sectfont}
+% \changes{1.4}{2002 May 25}{Courier is better, so that this hack
+% is better to be used only for \texttt{cmtt} font.}
+%
+% There is no bold in |cmtt|, so that I redefine also some
+% fonts---usefull only for koma-script package, because I do not
+% care too much for |article| |:-)|.
+% \begin{macrocode}
+\@ifundefined{scr@parskip}{}{%
+ \renewcommand*{\descfont}{\scshape}
+ \renewcommand*{\sectfont}{\large\scshape} }
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\MS@q*}
+% \begin{macro}{``}
+% \begin{macro}{'}
+% This is the most obscure part of the package.\footnote{I have
+% recieved substantial help with the deep TeX work from
+% Ond\v{r}ej ``Koala'' V\'acha. Thank you.} There are no problems
+% with |Courier| font, but |cmtt| does not have some characters
+% needed for normal writing---especially quotes. We have to
+% change catcode of , and ` characters and redefine couples of
+% these characters to be printed in |cmss| font in the Old
+% Knuth's coding OT1.
+%
+% Moreover, and it was the bug in the previous version, we have
+% to distinguish between single quote and double quote, where
+% each of them should be printed as different character. Now, it
+% is getting to be really messy |:-)|.
+%
+% \changes{1.5}{2003 June 26}{CM-Super fonts work even without
+% this kludge.}
+% \changes{1.4}{2002 May 22}{There is really no need to use
+% \cs{gdef}, when \cs{def} is sufficient.}
+% \changes{1.2}{2002 May 22}{Macro \cs{`} is protected.
+% Unbelieavable construction in the \cs{change} changed to use
+% \cs{cs} macro.}
+% \changes{1.1}{2002/05/21}{Whole group of
+% \cs{MS@*} macros in this section was added. The previous
+% version did not allow use of single apostrophe.}
+% \begin{macrocode}
+\iffalse
+ \catcode96=13
+ \def``{{\usefont{OT1}{cmss}{m}{n}\symbol{92}}}
+ \catcode39=13
+ \def'{\protect\MS@quote}
+ \def\MS@quote{\futurelet \nextchar \MS@questquote}
+ \def\MS@questquote{\ifx `\nextchar \let\MS@next=\MS@dblq
+ \else \let\MS@next=\MS@sglq
+ \fi \MS@next}
+ \def\MS@dblq{{\usefont{OT1}{cmss}{m}{n}\symbol{125}}}
+ \def\MS@sglq{{\usefont{OT1}{cmss}{m}{n}\symbol{39}}}
+\fi
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\sfdefault}
+% \begin{macro}{\ttdefault}
+% Of course, in typewritter there are no different fonts for
+% sans-serif characters and there is no distinction between
+% normal and |tt| characters, thus both of these are set to be
+% same as roman characters.
+% \begin{macrocode}
+\renewcommand{\sfdefault}{\rmdefault}
+\renewcommand{\ttdefault}{\rmdefault}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+
+% \begin{macro}{typearea}
+% Of course, typewritter should follow classical ``one inch on
+% all sides'' margins (later, variant supporting European
+% equivalent on A4 paper may be added). The best is to use
+% special package |fullpage|. However, that does not work well
+% with |koma-script| family of packages, there we have to
+% distinguish between the two and use macro |\typearea| native of
+% |koma-script|.
+% \begin{macrocode}
+\@ifundefined{typearea}
+ {\RequirePackage{fullpage}}
+ {\typearea[0pt]{13}}
+% \end{macrocode}
+% \end{macro}
+
+% \begin{macro}{\textbf}
+% \begin{macro}{\bfseries}
+% \begin{macro}{\emph}
+% \begin{macro}{\em}
+% Italic characters are not enough distinctive in |cmtt| font, so
+% we shall redefine macro |\emph| to be same as in the
+% typewritter age---underlining characters.
+% \changes{1.5}{2003 June 26}{It is handy redefine |em| as
+% well---thanks to Petr Ol\v{s}\'ak for this. Also redefine
+% bold to small caps.}
+% \begin{macrocode}
+\renewcommand{\textbf}[1]{\textsc{#1}}
+\def\bfseries{\scshape}
+
+\setul{0.3ex}{0.15ex}
+\renewcommand{\emph}[1]{\ul{#1}}
+\def\em{\egroup \expandafter \ul \expandafter{\iffalse}\fi}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+
+% \begin{macro}{\spaceskip}
+% There are some additional characteristics which should be
+% set-up emulating behavior of typewritter: footnotes should be
+% set in the normal-size font, document should be double-spaced,
+% ragged right. Space between characters have to be set via
+% |\spaceskip|---it is zero on default for |tt| fonts.
+% \begin{macrocode}
+\let\footnotesize\@empty
+\doublespacing
+\AtBeginDocument{%
+ \raggedright
+ \parindent 1em
+ \spaceskip .333333 em plus .333333 em minus .111111 em }
+% \end{macrocode}
+% \end{macro}
+%
+
+% \begin{macro}{\thefootnote}
+% \begin{macro}{\@makefnmark}
+% \begin{macro}{\@makefntext}
+% If the idea of the whole package is to emulate typewriter
+% style, then we have to do something about footnotes. There is
+% obviously nothing like superscripted footnote mark on
+% typewriters. Moreover, I have also changed indentation of the
+% body of footnote.
+%
+% \changes{1.5}{2003 June 26}{Whole redefinition of footnotes
+% added.}
+% \begin{macrocode}
+\def\thefootnote{\@arabic\c@footnote/}
+\def\@makefnmark%
+ {\hbox{\normalfont\@thefnmark}}
+\renewcommand\@makefntext[1]{%
+ \leftskip 1.8em \noindent
+ \llap{\normalfont\@thefnmark\ }#1}%
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\@maketitle}
+% \changes{1.5}{2003 June 26}{When \cs{titlepage} option is on,
+% we need not singlespacing.}
+% The standard titlehead of the document is really ugly when
+% doublespaced. Therefore we should redefine |\@maketitle| macro.
+% However, the trick below (creation of new macro which envelopes
+% the original macro) is better, because it is compatible both
+% with standard |article|-like classes and |koma-script| family.
+% Redefinition of |\huge| is a kind of ugly hack, but it should
+% be enough robust and simple to be OK.
+% \begin{macrocode}
+\let\MS@maketitle=\@maketitle
+ \if@titlepage
+ \def\@maketitle{%
+ \hyphenpenalty=5000
+ \let\huge\LARGE
+ \MS@maketitle }
+ \else
+ \def\@maketitle{%
+ \singlespacing
+ \hyphenpenalty=5000
+ \let\huge\LARGE
+ \MS@maketitle }
+ \fi
+% \end{macrocode}
+% \end{macro}
+%
+% That's all folks! |:-)|
+% \Finale
+%\iffalse
+%</!driver>
+%\fi
diff --git a/Master/texmf-dist/source/latex/manuscript/manuscript.ins b/Master/texmf-dist/source/latex/manuscript/manuscript.ins
new file mode 100644
index 00000000000..e77ecf7078e
--- /dev/null
+++ b/Master/texmf-dist/source/latex/manuscript/manuscript.ins
@@ -0,0 +1,14 @@
+\def\batchfile{manuscript.ins}
+\input docstrip.tex
+
+\preamble
+This is a stripped version of the original file.
+\endpreamble
+
+\postamble
+This is the end of the stripped file.
+\endpostamble
+
+\generateFile{manuscript.sty}{f}{\from{manuscript.dtx}{package}}
+\generateFile{manuscript.drv}{f}{\from{manuscript.dtx}{driver}}
+