From 0d0778a39975e8293bde2267504f53bd9d3610a6 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Tue, 5 Mar 2013 00:32:05 +0000 Subject: he-she (4mar13) git-svn-id: svn://tug.org/texlive/trunk@29290 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/tex/latex/he-she/he-she.sty | 74 ++++++++++++++++++++++++--- 1 file changed, 67 insertions(+), 7 deletions(-) (limited to 'Master/texmf-dist/tex/latex/he-she') diff --git a/Master/texmf-dist/tex/latex/he-she/he-she.sty b/Master/texmf-dist/tex/latex/he-she/he-she.sty index be39aad6b0b..a3f2f03a626 100644 --- a/Master/texmf-dist/tex/latex/he-she/he-she.sty +++ b/Master/texmf-dist/tex/latex/he-she/he-she.sty @@ -25,8 +25,6 @@ % This package consists of the file he-she.sty and documentation files % he-she.tex and he-she.pdf % -% Version 1.0 2011/02/13 -% % Option noxspace % % xspace can cause problems if the macro is e.g. enclosed in other markup such @@ -47,15 +45,25 @@ % As a result, this is probably not intended to be a robust alternative! % You have been warned! (And you will be if you use it too.) % -\ProvidesPackage{he-she}[2011/02/12 Semi-automatic pronoun switching with anaphora v1.0] +% Version history +% Version 1.0 2011/02/13 Initial release. +% Version 1.1 2013/03/04 Added [para] option and reflexive forms. +% +\ProvidesPackage{he-she}[2013/03/04 Semi-automatic pronoun switching with anaphora v1.1] \RequirePackage{xspace} \newif\ifxspace\xspacetrue -\newif\ifthey\theyfalse +\newif\ifHS@they\HS@theyfalse +\newif\ifHS@para \DeclareOption{noxspace}{\xspacefalse} \DeclareOption{they}{% -\theytrue -\PackageWarning{he-she}{*** WARNING: Use of option `\CurrentOption` will screw up subject/verb agreement for most nominative pronouns. It is only present for for its comic value! USE AT YOUR OWN RISK! ***} + \HS@theytrue + \PackageWarning{he-she}{*** WARNING: Use of option `\CurrentOption` will screw up subject/verb agreement for most nominative pronouns. It is only present for for its comic value! USE AT YOUR OWN RISK! ***} } +% +\DeclareOption{para}{ + \HS@paratrue + \PackageWarning{he-she}{*** WARNING: Use the `\CurrentOption` at your own risk. ***}} +% \DeclareOption*{% \PackageWarning{he-she}{Unknown option `\CurrentOption`}% } @@ -64,19 +72,27 @@ \newif\ifhe\hetrue % % -\ifthey +\ifHS@para% + \RequirePackage{everyhook} + \PushPreHook{par}{\makebox[0pt][0pt]{\xspacefalse\heshe}} +\fi +\ifHS@they % Implement the (somewhat useless) 'they' option % \newcommand*{\heshe}{they\ifxspace\xspace\fi} \newcommand*{\Heshe}{They\ifxspace\xspace\fi} \newcommand*{\himher}{them\ifxspace\xspace\fi} +\newcommand*{\himherself}{themselves\ifxspace\xspace\fi} \newcommand*{\Himher}{Them\ifxspace\xspace\fi} +\newcommand*{\Himherself}{Themselves\ifxspace\xspace\fi} \newcommand*{\hisher}{their\ifxspace\xspace\fi} \newcommand*{\Hisher}{Their\ifxspace\xspace\fi} \newcommand*{\he}{they\ifxspace\xspace\fi} \newcommand*{\He}{They\ifxspace\xspace\fi} \newcommand*{\him}{them\ifxspace\xspace\fi} +\newcommand*{\himself}{themselves\ifxspace\xspace\fi} \newcommand*{\Him}{Them\ifxspace\xspace\fi} +\newcommand*{\Him}{Themselves\ifxspace\xspace\fi} \newcommand*{\his}{their\ifxspace\xspace\fi} \newcommand*{\His}{Their\ifxspace\xspace\fi} % @@ -117,6 +133,16 @@ \fi% \ifxspace\xspace\fi }% +% Lowercase switching reflexive form \himherself +% +\newcommand*\himherself{% +\ifhe% + herself% + \else% + himself% + \fi + \ifxspace\xspace\fi +} % % Accusative lowercase anaphoric form \him \newcommand*\him{% @@ -127,6 +153,16 @@ \fi \ifxspace\xspace\fi } +% Lowercase anaphoric reflexive form \himself +% +\newcommand*\himself{% +\ifhe% + herself% + \else% + himself% + \fi + \ifxspace\xspace\fi +} % % Genitive lowercase switching form \hisher \newcommand*\hisher{% @@ -185,6 +221,17 @@ \fi% \ifxspace\xspace\fi }% + +% Uppercase switching reflexive form \Himherself +% +\newcommand*\Himherself{% +\ifhe% + Herself% + \else% + Himself% + \fi + \ifxspace\xspace\fi +} % % Accusative uppercase anaphoric form \Him \newcommand*\Him{% @@ -196,6 +243,17 @@ \ifxspace\xspace\fi } % +% Uppercase anaphoric reflexive form \Himself +% +\newcommand*\Himself{% +\ifhe% + Herself% + \else% + Himself% + \fi + \ifxspace\xspace\fi +} +% % Genitive uppercase switching form \Hisher \newcommand*\Hisher{% \ifhe% @@ -221,7 +279,9 @@ \let\she\he \let\She\He \let\her\him +\let\herself\himself \let\Her\Him +\let\Herself\Himself \let\hir\his \let\Hir\His \endinput \ No newline at end of file -- cgit v1.2.3