TeXhax Digest   Wednesday, March 23, 1988   Volume 88 : Issue 27
                     [SCORE.STANFORD.EDU]<TEX.TEXHAX>TEXHAX27.88

Editor: Malcolm Brown

Today's Topics:

                           BITNET miseries
        Reply: Single and Double Spacing in Figures (v88 n23)
                    1. enumerate  2. script fonts
         OH NO!!! ANOTHER tex-to-c!!! (TeXhax Digest V88 #23)
    Vanishing pixels (or write-white fonts) TeXhax Digest V88 #23
                              Makeindex
                      VAX/VMS TeX on DECNET/SPAN
                    Superscripted citation format
                         Style files for bib

----------------------------------------------------------------------

Date: 21 March 88
From: Malcolm
Subject: BITNET miseries

%%% Yes, I'm quite aware of the repeats of digest #26 over BITNET.
%%% Cause is being investigated.  I'm hoping that whatever caused
%%% it might have have been a temporary haunting of the mailers.
%%% So I'm sending this out, since there's a backlog of submissions
%%% building.
%%%
%%% Once again, my thanks to those on BITNET who have migrated over
%%% to the list server system.  To those who haven't: please do so!
%%% I have wanted to keep the request cordial and the migration
%%% voluntary, but I can't continue to do so indefinitely. 
%%% The end is nigh!
%%%
%%% subscribe, simply send a one line mail message to LISTSERV@TAMVM1
%%% that reads:
%%%  SUBSCRIBE TEX-L <your "real time" name>
%%% thanks Malcolm

------------------------------

Date: Fri, 11 Mar 88 22:13 EST
From: NAME "Stephen Azuma" <SAZUMA%utorphys.bitnet@RELAY.CS.NET>
Subject: Reply: Single and Double Spacing in Figures (v88 n23)

Tom Schneider notes that it is difficult (if not impossible) to obtain double
spacing in the body of his text and single spacing in the figure captions by
doing this:  \renewcommand{\baselinestretch}{1.8}.  A simple (read crude) way
around this, avoiding \baselinestretch altogther:
     
\documentstyle[12pt]{article}
     
\newcommand{\ssp}{\setlength{\baselineskip}{15pt}}   % for single spacing
\newcommand{\dsp}{\setlength{\baselineskip}{22pt}}   % for double spacing
     
\begin{document}
     
\dsp
Here is where Tom wants to begin double spacing his text.  All of the remaining
text will be double spaced except for the environments.
     
\begin{figure}[h]
  \caption{Some environments will automatically revert to single spacing, for
  example, figure, table, within footnotes, etc.}
\end{figure}
     
\begin{quote}
  \ssp
  ``Other environments will appear double spaced but may be forced to single
  spacing with the $\backslash$ssp command above, for example, quote, quotation,
  titlepage, abstract, etc.''
\end{quote}
     
I would appreciate it if a \TeX nician could explain why this is.  Also, if any
reader has the energy to test all the environments, please submit the results
to TeXHaX.
     
\end{document}
     
Reader Beware: I am not a \TeXnician.  You have no guarantee that this method
will work reliably in all situations.  If you have a superior solution to
Tom's problem, please submit it.  I will then gladly return to the obscurity
from whence I came.  If you experiment with this method and find limitations
and/or other applications, please submit those as well.
     
Steve Azuma                                             CPU cycles courtesy:
Mineral Exploration                                     Department of Physics
Faculty of Engineering                                  and the System People
University of Toronto
CANADA                                                  Sazuma@UtorPhys.BitNet

------------------------------

Date:     Sat, 12 Mar 88 00:11 EST
From: <MS361%ALBNY1VX.BITNET@forsythe.stanford.edu>
Subject:  1. enumerate  2. script fonts

I'm using version 2.09 of Latex, released 18 December 1985.

1. I've attempted to obtain a classically labelled outline from
``enumerate'' by a couple of different means. First, at the suggestion
of Dr. Lamport's book (fifth printing, Sept. '86), page 92, I tried

    \renewcommand{\theenumi}{\Roman{enumi}},

and similarly for the deeper nestings. The result was the same old
default labels, but the value of \theenumi, when called by name, was
the appropriate one.   Second, I noticed a suggestion in texhax Digest,
V88 #22, to try

     \renewcommand{\labelitemi}{\Roman{itemi}}.

I tried this with no better effect. What on earth is going on here?

2. In mathematical writing, there is a long tradition of the use of
script capital letters for certain symbols. Once upon a time, these
were handwritten into a typescript. Then, when IBM produced its
marvelous ``typing balls,'' we finally had access to the real thing.
Now, in the computer age, we have gone backwards. For one bloody
symbol, we have to search high and low for the privilege of paying
through the nose to add a font. Is there a script font in the public
domain with a driver for an HP LaserJet+?

Sincerely,

Mark Steinberger
Department of Math. and Stat.
SUNY at Albany
Albany, NY 12222
ms361@uacsc1.albany.edu

------------------------------

Date: Fri, 11 Mar 88 22:32:42 PST
From: mackay@june.cs.washington.edu (Pierre MacKay)
Subject: OH NO!!! ANOTHER tex-to-c!!! (TeXhax Digest V88 #23)

A response to some of Per Bergsten's comments.

First, a little background.  As the TUG site-coordinator for Unix flavored
TeX, I have watched the proliferation of LARGE system-dependent change files
and faced the problem of upgrading an ever increasing number of them
whenever a new version of TeX appears.  Since I can only check on Suns
and Vaxen, I often have to do this blind.  Moreover, there has never been
a public-domain pascal generally available for systemV, and until Lou
Salkind provided the change files for the 3B2 we had to tell SystemV
sites (including sites in the AT&T family) that TeX was essentially
out of their reach.  We could suggest that other commercial pascal
compilers might work, but we could not provide change files for them.

Pascal has always been rather an orphan in the Unix environment.  System V
pascals are slightly, but only slightly more common than hens' teeth, and
even BSD pc, though it comes with the Berkeley license, is rather an oddity.
Despite the concession to upper-and-lower case source code, it is quaintly
loyal to the old CDC 6400 conventions that were imposed on the initial
design of pascal.  Under BSD4.1, we had to ship out modifications of the
compiler source code (remember when we used to ask for the Berkeley license?)
and even now, we have to steer people to the still undocumented feature
in pxp that so cleverly wraps up case statements in a set-inclusion statement.
Our instructions for the 3B2 say "beg, borrow or steal the source for
pxp, modify it, and compile it before you try to compile TeX."

The real problem however is in the basic statement about Berkeley pc arrays.
I quote:
"The calculations involving array subscripts and set elements are done
with 16-bit arithmetic."  
When your TeX boxes hit that boundary, you can pound on your systems
programmer all you like, there is not much can be done about it.  And that
boundary is being hit all the time nowadays.  

TeX-to-C gets around both of the above problems.  In the Unix environment,
and often outside it as well, well-coded C is more portable than well-coded
pascal, largely because of the simpler and more efficient I/O, but also
because C allows you to bank on your knowledge of the binary word-length
of your target system in ways that pascal was specifically designed to
prohibit.  A bit dangerous, perhaps, but power-of-2 word-lengths are 
rather common these days.  If you have Unix, you have C, (there seem to have  
been exceptions to that rule in the past, but few, if any, survive).  It is not
true, however, that if you have Unix you have pascal.  Moreover, there is
a free public-domain C compiler now, which has been outperforming commercial
compilers pretty consistently (at least in TeX compilations) for several 
months.  (NOTE: I refer, of course to the Free Software Foundation's gcc)

>  you should treat the Pascal-to-C conversion simply as another pass of the
>  Pascal compiler and never be aware of the fact that C is involved at all.
A nice idea, but not practical at present.  Maybe in 2 years, when we are sure
that absolutely no interpreter-related bugs can possibly remain, it should
be reconsidered.  Till then, it is very important to know that "better"
"worse" or simply "strange" behaviour is characteristic of a specific
style of compilation.

>  I specifically don't agree with changing the banner to say 'TeX in C' !!!
The reason for this is outlined above.  TeX-in-C IS different.  On any given
system, the object code produced by a direct compilation of the pascal
brick will be quite different from the object code produced after 
interpretation into C.  We hope the user will not need to know that, but
the information should be made available for cases when something strange
appears to be happening.

>  (which I think should be reserved for the one written entirely in C from
>  scratch.)
Absolutely not.  TeX-in-C is compiled from the WEB, mediated by one extra step.
The basic WEB structure is still there, and can still be of use.  When I
put together a change file for TeX-XeT, using Don Knuth's WAITS change file,
I was able to refer continuously to Computers and Typesetting Volume B,
even though the ultimate source fed into the compiler was not what
appears in the WEB source.  C-TeX, or Common-TeX is another animal altogether.
It may be a very good animal, but it no longer bears the same close relation
to the WEB that TeX-in-C does.  Purists may, if they wish, consider
the name TeX-in-C as an elliptical pronunciation of TeX-in[terpreted-into]-C

Tim Morgan's lex and yacc code may be somewhat TeX-specific.  He has been
trying for the maximum efficiency in the specific subset of C that is
relevant to TeX, METAFONT, TeXware and MFware.  That may not be the right
balance for a generic, all-purpose interpreter.  Does it matter?  His programs
don't take up all that much space, and they need not be left resident on
the system after succesful compilation.  I certainly wouldn't turn down
the offer of another, more generic pascal-to-C interpreter, assuming that
it too is free software, but the development of TeX-to-C is moving along
very nicely, and I would not want to tell all the eager people waiting
for its release that we were about add another two or three months to
development while working on fine-tuning another approach.  TeX-to-C
does not, at the moment, claim to be a solution to generic coding problems;
It claims only to offer a faster, tighter and more widely usable TeX.

						Pierre A. MacKay
						TUG Site Coordinator for
						Unix-flavored TeX

------------------------------

Date: Fri, 11 Mar 88 22:50:56 PST
From: mackay@june.cs.washington.edu (Pierre MacKay)
Subject: Vanishing pixels (or write-white fonts) TeXhax Digest V88 #23

I hope TeXhax will have room for this, which is a shar of a mode-def and
the write-white adjustment to font-def.  put these into your MFINPUTS
path, make up a cmplain.base with U_Wash.mf as your mode_def file,
and rerun all needed fonts (save, or remove the write-black versions)

						Pierre A. MacKay
						TUG Site Coordinator for
						Unix-flavored TeX

#	This is a shell archive.
#	Remove everything above and including the cut line.
#	Then run the rest of the file through sh.
#-----cut here-----cut here-----cut here-----cut here-----
#!/bin/sh
# shar:	Shell Archiver
#	Run the following text with /bin/sh to create:
#	white_setup.mf
#	U_Wash.mf
# This archive created: Fri Mar 11 22:45:24 1988
cat << \SHAR_EOF > white_setup.mf
% The basic correction for write-white fonts occurs in the definition
%	font_setup.  This can be used to overwrite the write-black
% 	definition in cmbase.mf
%
def white_setup =
 if monospace: let adjust_fit=mono_adjust_fit;
  def mfudged=fudged enddef;
  mono_charic#:=body_height#*slant;
  if mono_charic#<0: mono_charic#:=0; fi
  mono_charwd#:=9u#; define_whole_pixels(mono_charwd);
 else: let adjust_fit=normal_adjust_fit;
  def mfudged= enddef; fi
 if math_fitting: let math_fit=do_math_fit
 else: let math_fit=ignore_math_fit fi;
 define_pixels(u,width_adj,serif_fit,cap_serif_fit,jut,cap_jut,beak,
  bar_height,dish,bracket,beak_jut,stem_corr,vair_corr,apex_corr);
 define_blacker_pixels(notch_cut,cap_notch_cut);
 forsuffixes $=notch_cut,cap_notch_cut: if $<3: $:=3; fi endfor
 define_whole_pixels(letter_fit,fine,crisp,tiny);
 define_whole_vertical_pixels(body_height,asc_height,
  cap_height,fig_height,x_height,comma_depth,desc_depth,serif_drop);
 define_whole_blacker_pixels(thin_join,hair,stem,curve,flare,
  dot_size,cap_hair,cap_stem,cap_curve);
 define_whole_vertical_blacker_pixels(vair,bar,slab,cap_bar,cap_band);
 define_corrected_pixels(o,apex_o);
 forsuffixes $=hair,stem,cap_stem:
  fudged$.#:=fudge*$.#; fudged$:=hround(fudged$.#*hppp+blacker);
  forever: exitif fudged$>.9fudge*$; fudged$:=fudged$+1; endfor endfor
 rule_thickness:=ceiling(rule_thickness#*hppp);
 heavy_rule_thickness:=ceiling(3rule_thickness#*hppp);
 oo:=vround(.5o#*hppp*o_correction)+eps;
 apex_oo:=vround(.5apex_o#*hppp*o_correction)+eps;
 lowres_fix(stem,curve,flare) 1.3;
 lowres_fix(stem,curve) 1.2;
 lowres_fix(cap_stem,cap_curve) 1.2;
 lowres_fix(hair,cap_hair) 1.2;
 lowres_fix(cap_band,cap_bar,bar,slab) 1.2;
 stem':=hround(stem-stem_corr); cap_stem':=hround(cap_stem-stem_corr);
 vair':=vround(vair+vair_corr);
 vstem:=vround .8[vair,stem]; cap_vstem:=vround .8[vair,cap_stem];
 ess:=(ess#/stem#)*stem; cap_ess:=(cap_ess#/cap_stem#)*cap_stem;
 dw:=(curve#-stem#)*hppp; bold:=curve#*hppp+blacker;
 dh#:=.6designsize;
 stem_shift#:=if serifs: 2stem_corr# else: 0 fi;
 more_super:=max(superness,sqrt .77superness);
 hein_super:=max(superness,sqrt .81225258superness); % that's $2^{-.3}$
 clear_pen_memory;
 if fine=0: fine:=1; fi
 forsuffixes $=fine,crisp,tiny:
%%% fine $ %%%% temporary formatting convention for MFT
  if $>fudged.hair: $:=fudged.hair; fi
  $.breadth:=$;
  pickup if $=0: nullpen else: pencircle scaled $; $:=$-eps fi;
  $.nib:=savepen; breadth_[$.nib]:=$;
  forsuffixes $$=lft,rt,top,bot: shiftdef($.$$,$$ 0); endfor endfor
%%% @ $ %%%% restore ordinary formatting for $
 min_Vround:=max(fine.breadth,crisp.breadth,tiny.breadth,2); % "WRITE WHITE" ONLY!
 if min_Vround<vround min_Vround: min_Vround:=vround min_Vround; fi
 if flare<vround flare: flare:=vround flare; fi
 forsuffixes $=vair,bar,slab,cap_bar,cap_band,vair',vstem,cap_vstem,bold:
  if $<min_Vround: $:=min_Vround; fi endfor
 pickup pencircle scaled rule_thickness; rule.nib:=savepen;
 math_axis:=good.y(math_axis#*hppp);
 pickup pencircle scaled if hefty:(.6[vair,fudged.hair]) else:fudged.hair fi;
 light_rule.nib:=savepen;
 pickup pencircle xscaled cap_curve yscaled cap_hair rotated 30;
 cal.nib:=savepen;
 pair cal.extension; cal.extension:=(.75cap_curve,0) rotated 30;
 pickup pencircle xscaled cap_curve yscaled cap_hair rotated 70;
 tilted.nib:=savepen;
 pickup pencircle xscaled curve yscaled cap_hair rotated 70;
 med_tilted.nib:=savepen;
 pickup pencircle xscaled cap_stem yscaled cap_hair rotated 30;
 med_cal.nib:=savepen;
 pickup pencircle xscaled stem yscaled cap_hair rotated 30;
 light_cal.nib:=savepen;
 pickup pencircle xscaled(cap_curve+dw) yscaled cap_hair rotated 30;
 heavy_cal.nib:=savepen;
 bot_flourish_line:=-.5u-o;
 pair bend; bend=(.5u,0);
 pair flourish_change; flourish_change=(4u,.2asc_height);
 join_radius:=u;
 currenttransform:=identity slanted slant
  yscaled aspect_ratio scaled granularity;
 if currenttransform=identity: let t_=relax
 else: def t_ = transformed currenttransform enddef fi;
 numeric paren_depth#; .5[body_height#,-paren_depth#]=math_axis#;
 numeric asc_depth#; .5[asc_height#,-asc_depth#]=math_axis#;
 body_depth:=desc_depth+body_height-asc_height;
 shrink_fit:=1+hround(2letter_fit#*hppp)-2letter_fit;
 if not string mode: if mode<=smoke: shrink_fit:=0; fi fi
forsuffixes $=thin_join,hair,curve,flare,dot_size,cap_hair,cap_curve,
 vair,bar,slab,cap_bar,cap_band,stem',cap_stem',vair',fudged.hair,
 fudged.stem,fudged.cap_stem: $:=max($,2); endfor % "WRITE WHITE" ONLY!
 enddef;

SHAR_EOF
cat << \SHAR_EOF > U_Wash.mf
% This is the University of Washington collection of mode_defs, and some
% other things as well. This file was created on 24 January, 1988
% by Pierre MacKay, mackay@june.cs.washington.edu
% Some of the modes have never actually been tested

base_version:=base_version&"/U_Wash";

input white_setup               

% if a mode_def includes the statement: let font_setup = white_setup,
% it will replace the cmbase.mf font_setup with this corrected version

mode_def help =               % What modes exist in this preload?
 for i=1 upto number_of_modes:
   message mode_name[i];
 endfor; 
 save ?; % only use this once.  it doesn't make sense to repeat
enddef;

let ? = help_;

% Canon CX mode: for the Laser-writer (same as WAITS.MF Imagen)
mode_def CanonCX =
 proofing:=0;                   % no, we're not making proofs
 fontmaking:=1;                 % yes, we are making a font
 tracingtitles:=0;              % no, don't show titles at all
 pixels_per_inch:=300;          % the new Canon engine at 300/inch
 blacker:=0;                    % Canon engine is black enough
 fillin:=.2;                    % very small compensation for diagonal fillin
 o_correction:=.6;              % but don't overshoot as much
 enddef;

% Ricoh 4080: for the TI Omnilaser (Stan Osborne's values TUGboat 8,2,134)
mode_def RicohFortyEighty =
 let font_setup=white_setup;    % use the write-white font_setup
 proofing:=0;                   % no, we're not making proofs
 fontmaking:=1;                 % yes, we are making a font
 tracingtitles:=0;              % no, don't show titles at all
 pixels_per_inch:=300;          % Ricoh write-white engine.
 blacker:=.2;                   % Don't overblack the small fonts
 fillin:=-.2;                   % reverse compensation for diagonal fillin
 o_correction:=.5;              % but don't overshoot as much
 enddef;



localfont:=RicohFortyEighty;    % the mode most commonly used to make fonts

% It is customary to input another file to supplement the PLAIN base.
% This supplementary file adds analogous modes, corresponding to
% local output devices, and it redefines `localfont' as appropriate.
% The values of screen_rows and screen_cols should also be updated.
% The auxiliary file should set base_version:=base_version&"/localname".
% Remember that the present file PLAIN.MF should not be changed;
% all local changes should be confined to a separate file.

% Macros to add mode information specials to fonts.

def mode_special(suffix $) =
  string s,d;
  s:=str$; d:=decimal scantokens s;
  special s&":="&d&";" enddef;

def font_mode_specials =
 p_p_i=pixels_per_inch/mag; 
 if fontmaking > 0:
 begingroup; save d,s,p; save pixels_per_inch;
  string p;
  pixels_per_inch:=p_p_i;
  special jobname;
  mode_special(mag);
  p:=substring(0,length(mode_name[mode])-1) of mode_name[mode];
  special "mode:="&p&";";
  mode_special(pixels_per_inch);
  mode_special(blacker);
  mode_special(fillin);
  mode_special(o_correction);
 endgroup;
 fi
enddef;

inner end;
def bye=
 if fontmaking > 0: font_mode_specials; fi
 end
 enddef;

outer bye,end;SHAR_EOF
#	End of shell archive
exit 0

------------------------------

Date:     Sat, 12 Mar 88 09:33 N
From: <FISICA%ASTRPD.INFNET%IBOINFN.BITNET@forsythe.stanford.edu>
Subject:  Makeindex

I am also interested in getting Makeindex.
Does anybody know if there is one for vax/vms and how to get it?
Thanks
Max Calvani

Decnet/span:          39003::fisica
Bitnet:               fisica%astrpd.infnet@iboinfn.bitnet

------------------------------

Date:     Sat, 12 Mar 88 10:05 N
From: <FISICA%ASTRPD.INFNET%IBOINFN.BITNET@forsythe.stanford.edu>
Subject:  VAX/VMS TeX on DECNET/SPAN

Here is a list of what is at present available.
All following  material is for Vax/Vms.
For information please send a decnet/span message to:

                          39937::luvisetto
or                        39003::fisica

            Marisa Luvisetto and Massimo Calvani


AA_NEWS.DIR             Change files to produce TeX2.9
AMSFONTS.DIR            The Ams, Cyrillic and Eu* fonts
AMSTEX.DIR              The Amstex package
BASES.DIR               Basic PLAIN files for Tex and Metafont
BEEBE.DIR               Beebe's driver family (thanks Beebe)
BIBTEX.DIR              The Bibtex package
CLARK.DIR               Clark's program for halftone output
CLD.DIR                 *.cld files to install TeX in DCL tables
CM.DIR                  CM fonts definitions
DOC.DIR                 *.Tex files for Tex and Metafont manuals
DVIDIS.DIR              Preview for Vaxstation
DVITOVDU.DIR            Preview by Andrew Trevorrow (thanks Andrew)
EXE.DIR                 All *.exe files
FONTS.DIR               All *.TFM files
FORMATS.DIR             Basic *.fmt files
INPUTS.DIR              *.sty files for Latex
LATEX.DIR               The Latex package
LATEXSTYLE.DIR          The Latexstyle collection of Ken Yap (thanks Ken)
LN03.DIR                Driver for DEC LN03 laserprinter by F. Rose
LN_FONTS.DIR            Fonts for Ln03 in PK format
LN_FONTS_GF.DIR         Fonts for LN03 in GF format (thanks John Sauter)
LSEDIT.DIR              Lse module for Latex
MF.DIR                  Metafont
MFWARE.DIR              Metafont
MLLCNAF.DIR             Drivers for VT125-240-241-330-340, GPX, mVAX 2000
PIXEL.DIR               *.pxl files at \magstep 1 --> 6
PSFIGTEX.DIR            Package to include Postscript files in TeX docs
PSPRINT.DIR             Driver for Postscript Laserprinters by A. Trevorrow
QMS.DIR                 Driver for Qms/quick laserprinter
QMS_FONTS.DIR           Fonts for Qms Laserprinter in GF format
SAMPLES.DIR             Sample files for Tex and Latex
SPELL.DIR               English speller utility
SVI.DIR                 Modules to produce 'save image' of exec. file
TEX.DIR                 .EXE files for Tex and Virtex
TEXHAX.DIR              The TexHax magazine (thanks Malcolm Brown)
TEXMAG.DIR              The Texmag magazine (thanks Don Hosek)
TEXSIS.DIR              The TeXsis macros by E. Myers and F. Paige
TEXTYL.DIR              Curve drawing postprocessor
TEXUK.DIR               The Uktex magazine  (thanks Peter Abbott)
TEXWARE.DIR             Tex related software as DViTYPE, TFTOPL, PLTOTF
TIB.DIR                 Reference formatting program
TRAP.DIR                Metafont torture test
TRIP.DIR                Tex torture test
WEB.DIR                 Source for WEB programs, WEAVE and Tangle

------------------------------

Date: Sat, 12 Mar 88 13:19:35 EST
From: crl@maxwell.physics.purdue.edu (Charles R. LaBrec)
Subject: Superscripted citation format

Here is a \documentstyle option to perform superscripted citations.
It also defines a \cite* macro to give an unsuperscripted citation for
cases like "See reference~\cite*{foo}"

Charles LaBrec
crl @ maxwell.physics.purdue.edu

% SUPERCITE DOCUMENT-STYLE OPTION FOR ANY STYLE
% RELEASED 6 December 1987 -- for LaTeX version 2.09
% Written by C. LaBrec @ newton.physics.purdue.edu

%
% This redefines the \@cite macro to perhaps produce raised citations
% while keeping the spacefactor unchanged.  This is so that a citation
% can properly follow a sentence-ending punctuation mark.  A kluge is 
% involved since the macro that calls this puts the citation in an \hbox
% which causes it not to be made smaller in math mode
% 
\newif\if@raisedcite
\def\@cite#1#2{\if@raisedcite\leavevmode\penalty10000
  \ifhmode
   \edef\@x@sf{\spacefactor\the\spacefactor}\else\let\@x@sf\relax\fi
   \hbox{\let\hbox\relax $^{\rm #1\if@tempswa, #2\fi}$}\@x@sf{}\else
  #1\if@tempswa , #2\fi\fi{}}
%
% this redefines \cite to have a *-option.  This option uses \if@raisedcite
% to produce either an unadorned citation, i.e., just the number, or a 
% raised citation
%
\def\cite{\@ifstar{\@raisedcitefalse\@@citex}{\@raisedcitetrue\@@citex}}
\def\@@citex{\@ifnextchar [{\@tempswatrue\@citex}{\@tempswafalse\@citex[]}}

------------------------------

Date: Sat, 12 Mar 88 13:27:42 EST
From: uglevine@cs.Buffalo.EDU (Jeremy Levine)
Subject: Style files for bib

	The only ones available heree are

	plain --> [1] ....
	alpha --> [Sha87] ...

	and some variations on sorting...

	However, if one wanted

	[Shapiro 1987] .....

	then the labels have to be changed. One can do this easily in
	\thebibliography, however if one is using .bib files one needs
	to define a style. Anybody tried this?

Any and all *.bst fil;es that allow us to do the above would be
welcome

				Jeremy D. Levine 

		SUNY/Buffalo Computer Science (716-636-3181)
		csnet:  uglevine@buffalo.CSNET
		uucp:	..!{nike|watmath,alegra,decvax}!sunybcs!uglevine
		BITNET:	uglevine@sunybcs.BITNET , v107gysk@ubvmsa.BITNET

------------------------------
%%%
%%% subscriptions, address changes to: texhax-request@score.stanford.edu
%%%     please send a valid arpanet address!!
%%%
%%% BITNET distribution: subscribe by sending the following
%%%   line to LISTSERV@TAMVM1.BITNET:
%%%       SUBSCRIBE TEX-L <your name>
%%%
%%% submissions to: texhax@score.stanford.edu
%%%
%%%\bye
%%%
------------------------------

End of TeXhax Digest
**************************
-------