hep version 1.0 default tip

Sun, 24 Jun 2007 13:46:51 +0100

author
Andy Buckley <andy@insectnation.org>
date
Sun, 24 Jun 2007 13:46:51 +0100
changeset 0
61baaa59b244

hep version 1.0

ChangeLog file | annotate | diff | comparison | revisions
README file | annotate | diff | comparison | revisions
hep.sty file | annotate | diff | comparison | revisions
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/ChangeLog	Sun Jun 24 13:46:51 2007 +0100
     1.3 @@ -0,0 +1,7 @@
     1.4 +2005-12-13  Andy Buckley  <andy@insectnation.org>
     1.5 +
     1.6 +	* First release.
     1.7 +
     1.8 +	* Added option passing to the hepnames and hepunits packages.
     1.9 +
    1.10 +	* Started ChangeLog.
     2.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     2.2 +++ b/README	Sun Jun 24 13:46:51 2007 +0100
     2.3 @@ -0,0 +1,53 @@
     2.4 +hep --- convenience wrapper for high-energy physics packages
     2.5 +by Andy Buckley <andy@insectnation.org>
     2.6 +-----------------------------------------------------------
     2.7 +
     2.8 +The hep package is a relatively thin wrapper package on a variety of packages
     2.9 +useful for typesetting high-energy physics documents. It is aimed at HEP users
    2.10 +who just want to write papers without having to worry about which packages are
    2.11 +useful. hep includes a useful minimal set of packages by default, with more
    2.12 +specialist ones being available via package options.
    2.13 +
    2.14 +The default packages (activated just by placing \usepackage{hep} in the document
    2.15 +preamble) are:
    2.16 +  * url: provides \url{} macro for typestting (you guessed it) URLs. For example,
    2.17 +    \url{http://www.mysite.org}.
    2.18 +  * cite: gathers consecutive citations to show e.g. [21-23] rather than [21,22,23]
    2.19 +  * amsmath: extended maths stymbols etc.
    2.20 +  * braket: provides \bra{}, \ket{} and \braket{} macros for Dirac notation
    2.21 +  * cancel/slashed: two different ways to do Feynman slash notation
    2.22 +  * hepnicenames: collection of macros for typesetting particle names. Also includes
    2.23 +    heppennames and hepparticles. See 
    2.24 +    http://www.tex.ac.uk/tex-archive/help/Catalogue/entries/hepnames.html  and
    2.25 +    http://www.tex.ac.uk/tex-archive/help/Catalogue/entries/hepparticles.html
    2.26 +    for details.
    2.27 +  * hepunits: extends the SIunits package to provide HEP specific units, accessed
    2.28 +    via e.g. \unit{114.5}{\GeVovercsq} (the LEP2 lower bound on the Higgs mass).
    2.29 +    See http://www.tex.ac.uk/tex-archive/help/Catalogue/entries/hepunits.html
    2.30 +    for details.
    2.31 +
    2.32 +Options for these default packages can be passed using \usepackage[option1,option2,...]{hep}
    2.33 +The available options are:
    2.34 +  * HNitalic, HNitforce, HNmaybess, HNnoss,
    2.35 +    corresponding to the hepnames/hepparticles options (without the "HN" prefix)
    2.36 +
    2.37 +  * HUnoprefixcmds, HUcdot, HUthickspace, HUmediumspace, HUthinspace,
    2.38 +    HUthickqspace, HUmediumqspace, HUthinqspace, HUnoamssquareissue,
    2.39 +    HUamssymb, HUsquaren, HUpstricks, HUGray, HUitalian, HUtextstyle
    2.40 +    HUnotextstyle, HUbinary, HUnoams, HUderivedinbase, HUderived
    2.41 +    corresponding to the hepunits options (without the "HU" prefix)
    2.42 +
    2.43 +Additionally, the "fd", "hyper", "layout" and "float" options add useful
    2.44 +packages for Feynman diagrams, hyperlinking (with sensible default options),
    2.45 +layout additions (the booktabs, setspace, fancyhdr and tocbibind packages) and
    2.46 +additional float handling (via the morefloats, afterpage, ccaption, subfigure
    2.47 +and caption packages). The convenience option "all" includes all of the optional
    2.48 +packages. While the hyper, layout and float options are not HEP-specific, they
    2.49 +reflect the package author's prejudice that not enough authors know about these
    2.50 +packages and that they should be encouraged to use them :-)
    2.51 +
    2.52 +Comments, criticism etc. should be directed at andy-texpkg@insectnation.org.
    2.53 +
    2.54 +This material is subject to the LaTeX Project Public License. 
    2.55 +See http://www.ctan.org/tex-archive/help/Catalogue/licenses.lppl.html
    2.56 +for the details of that license.
     3.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     3.2 +++ b/hep.sty	Sun Jun 24 13:46:51 2007 +0100
     3.3 @@ -0,0 +1,129 @@
     3.4 +%% hep package for LaTeX --- convenience wrapper for High Energy Physics packages
     3.5 +%% Author: Andy Buckley <andy@insectnation.org>
     3.6 +%%
     3.7 +%% This material is subject to the LaTeX Project Public License.
     3.8 +%% See http://www.ctan.org/tex-archive/help/Catalogue/licenses.lppl.html
     3.9 +%% for the details of that license.
    3.10 +%%
    3.11 +%% Usage: \usepackage[options]{hep}
    3.12 +%%   where "options" are any of: fd     --- includes feynmf and axodraw for making Feynman diagrams
    3.13 +%%                               layout --- some nice layout tweaks like booktabs, setspace and fancyhdr
    3.14 +%%                               hyper  --- include hyperref with some sensible default options
    3.15 +%%                               float  --- include morefloats and afterpage for extra float handling flexibility
    3.16 +%%                               all    --- all of the above
    3.17 +
    3.18 +%% Admin
    3.19 +\def\fileversion{1.0}
    3.20 +\def\filedate{2005/12/13}
    3.21 +\NeedsTeXFormat{LaTeX2e}
    3.22 +\ProvidesPackage{hep}[\filedate\space Convenience wrapper for HEP packages (v\fileversion)]
    3.23 +
    3.24 +
    3.25 +%% Handle package options
    3.26 +\def\@empty{}
    3.27 +\def\@requirefdpkgs{}
    3.28 +\def\@requirelayoutpkgs{}%
    3.29 +\def\@requirehyper{}%
    3.30 +\def\@requirefloatpkgs{}%
    3.31 +\DeclareOption{fd}{% Include packages for drawing Feynman diagrams?
    3.32 +  \def\@requirefdpkgs{yes}}
    3.33 +\DeclareOption{layout}{% Include packages for nice layout?
    3.34 +  \def\@requirelayoutpkgs{yes}}
    3.35 +\DeclareOption{hyper}{% Include hyperref package (with decent options)
    3.36 +  \def\@requirehyper{yes}}
    3.37 +\DeclareOption{float}{% Include packages for extra float handling
    3.38 +  \def\@requirefloatpkgs{yes}}
    3.39 +\DeclareOption{all}{% Convenience handle to include all the optional bits
    3.40 +  \def\@requirefdpkgs{yes}%
    3.41 +  \def\@requirelayoutpkgs{yes}%
    3.42 +  \def\@requirehyper{yes}%
    3.43 +  \def\@requirefloatpkgs{yes}%
    3.44 +}
    3.45 +
    3.46 +%% Pass options to hepnames packages
    3.47 +\DeclareOption{HNitalic}{\PassOptionsToPackage{italic}{hepnicenames}}
    3.48 +\DeclareOption{HNitforce}{\PassOptionsToPackage{itforce}{hepnicenames}}
    3.49 +\DeclareOption{HNmaybess}{\PassOptionsToPackage{maybess}{hepnicenames}}
    3.50 +\DeclareOption{HNnoss}{\PassOptionsToPackage{noss}{hepnicenames}}
    3.51 +
    3.52 +%% Pass options to hepunits package
    3.53 +\DeclareOption{HUnoprefixcmds}{\PassOptionsToPackage{noprefixcmds}{hepunits}}
    3.54 +\DeclareOption{HUcdot}{\PassOptionsToPackage{cdot}{hepunits}}
    3.55 +\DeclareOption{HUthickspace}{\PassOptionsToPackage{thickspace}{hepunits}}
    3.56 +\DeclareOption{HUmediumspace}{\PassOptionsToPackage{mediumspace}{hepunits}}
    3.57 +\DeclareOption{HUthinspace}{\PassOptionsToPackage{thinspace}{hepunits}}
    3.58 +\DeclareOption{HUthickqspace}{\PassOptionsToPackage{thickqspace}{hepunits}}
    3.59 +\DeclareOption{HUmediumqspace}{\PassOptionsToPackage{mediumqspace}{hepunits}}
    3.60 +\DeclareOption{HUthinqspace}{\PassOptionsToPackage{thinqspace}{hepunits}}
    3.61 +\DeclareOption{HUnoamssquareissue}{\PassOptionsToPackage{noamssquareissue}{hepunits}}
    3.62 +\DeclareOption{HUamssymb}{\PassOptionsToPackage{amssymb}{hepunits}}
    3.63 +\DeclareOption{HUsquaren}{\PassOptionsToPackage{squaren}{hepunits}}
    3.64 +\DeclareOption{HUpstricks}{\PassOptionsToPackage{pstricks}{hepunits}}
    3.65 +\DeclareOption{HUGray}{\PassOptionsToPackage{Gray}{hepunits}}
    3.66 +\DeclareOption{HUitalian}{\PassOptionsToPackage{italian}{hepunits}}
    3.67 +\DeclareOption{HUtextstyle}{\PassOptionsToPackage{textstyle}{hepunits}}
    3.68 +\DeclareOption{HUnotextstyle}{\PassOptionsToPackage{notextstyle}{hepunits}}
    3.69 +\DeclareOption{HUbinary}{\PassOptionsToPackage{binary}{hepunits}}
    3.70 +\DeclareOption{HUnoams}{\PassOptionsToPackage{noams}{hepunits}}
    3.71 +\DeclareOption{HUderivedinbase}{\PassOptionsToPackage{derivedinbase}{hepunits}}
    3.72 +\DeclareOption{HUderived}{\PassOptionsToPackage{derived}{hepunits}}
    3.73 +
    3.74 +\ProcessOptions
    3.75 +
    3.76 +
    3.77 +%% Useful packages for citations
    3.78 +\RequirePackage{url}
    3.79 +\RequirePackage{cite}
    3.80 +
    3.81 +
    3.82 +%% Hyperlinks (optional, has to come early in the package list)
    3.83 +\ifx\@requirehyper\@empty\else
    3.84 +\RequirePackage[colorlinks=true,bookmarks=true]{hyperref}
    3.85 +%pdfpagemode=FullScreen
    3.86 +\fi
    3.87 +
    3.88 +
    3.89 +%% Maths typesetting packages
    3.90 +\RequirePackage{amsmath} % ``Proper'' math commands and environments
    3.91 +\RequirePackage{braket} % Dirac bra-ket notation
    3.92 +\RequirePackage{cancel} % useful for Feynman slash notation
    3.93 +\RequirePackage{slashed} % also for slash notation: take your pick!
    3.94 +%\RequirePackage{maybemath} % contextual math typesetting
    3.95 +%\RequirePackage{hepmath} % Common HEP mathematical constructs and use-anywhere Greek letters
    3.96 +
    3.97 +
    3.98 +%% Particle names (should be specified *after* hyperref)
    3.99 +%\RequirePackage{hepparticles} % particle name typesetting (uses maybemath)
   3.100 +%\RequirePackage{heppennames} % Particle Entity Notation macros for particle symbols
   3.101 +\RequirePackage{hepnicenames} % A ``friendly'' macro set for selected PEN symbols 
   3.102 +                              % which includes hepparticles and heppennames
   3.103 +
   3.104 +
   3.105 +%% SIunits package and HEP extensions
   3.106 +\RequirePackage{hepunits} % imports SIunits with sensible options and HEP-specific units
   3.107 +
   3.108 +
   3.109 +%% Feynman diagrams (optional)
   3.110 +\ifx\@requirefdpkgs\@empty\else
   3.111 +\RequirePackage{axodraw}
   3.112 +\RequirePackage{feynmf}
   3.113 +%\RequirePackage{feynmp}
   3.114 +\fi
   3.115 +
   3.116 +
   3.117 +%% Layout improvements (optional)
   3.118 +\ifx\@requirelayoutpkgs\@empty\else
   3.119 +\RequirePackage{booktabs} % elegant table design
   3.120 +\RequirePackage{setspace} % proper line spacing handling
   3.121 +\RequirePackage{fancyhdr} % configurable headers and footers
   3.122 +\RequirePackage[nottoc]{tocbibind} % biblio but not ToC in ToC
   3.123 +\fi
   3.124 +
   3.125 +%% Extra float handling (optional)
   3.126 +\ifx\@requirefloatpkgs\@empty\else
   3.127 +\RequirePackage{morefloats} % extra floats
   3.128 +\RequirePackage{afterpage} % float handling
   3.129 +\RequirePackage[subfigure]{ccaption} % continued captions
   3.130 +\RequirePackage{subfigure} % subfigures
   3.131 +\RequirePackage[margin=20pt,labelfont=bf]{caption} % nice-looking captions
   3.132 +\fi

mercurial