Take the 2-minute tour ×
TeX - LaTeX Stack Exchange is a question and answer site for users of TeX, LaTeX, ConTeXt, and related typesetting systems. It's 100% free, no registration required.

I have found the source code within octavo.dtx (from the octavo package) and it has some parts called \p@. I have searched throughout the document, but cannot understand what this is defined as or what it does and it is too short a term to do a Web search. Is this specific to the document or common to TeX? Here is a portion of the code:

\if@titlepage

    \newcommand\maketitle{\begin{titlepage}%

    \let\footnotesize\small

    \let\footnoterule\relax

    \let\footnote\thanks

%    \end{macrocode}

%    The title itself is centered vertically, with a little offset brought by

%    a |\vskip|.

%    \begin{macrocode}

    \null\vfil

    \vskip 60\p@

%    \end{macrocode}
  • What does the \p@ do?
share|improve this question
    
This is also explained in the macros2e document mentioned and linked by my answer to the related Documentation reference for LaTeX internal commands? question. –  Martin Scharrer Dec 18 '11 at 10:32

1 Answer 1

up vote 18 down vote accepted

This is abbreviated notation for a 1pt dimension, as included in latex.ltx and therefore common to all LaTeX documents:

\newdimen\p@ \p@=1pt % this saves macro space and time
\newdimen\z@ \z@=0pt % can be used both for 0pt and 0

As such, you can use it in calculation with dimensions, such that 60\p@ translates to 60 times 1pt, or 60pt. In a similar fashion, \z@ provides a 0pt dimension.

Using

\makeatletter
\show\p@
\makeatother

yields

\p@=\dimen11

indicating that it is a TeX dimension (number 11). Consequently, issuing \showthe\p@ yields 1.0pt in your .log.

share|improve this answer
11  
Perhaps it should be added that these shorthands are from the days when space and speed was much more limited than it is today and using them gives some tiny advantage in both dimensions. However, these days I would recomment for newly designed class files to use explicit dimensions for better readability. –  Frank Mittelbach Dec 18 '11 at 8:37
1  
@FrankMittelbach: Welcome to TeX.SX, Frank! What took you so long? :) Yes, it shows the longevity of the code. –  Werner Dec 18 '11 at 15:23
    
simply the fact that my day has only 24 hours and no posting ever told me how to double it - if you know the answer to THAT then ... –  Frank Mittelbach Dec 18 '11 at 18:31

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.