[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Refer database fields (was: Re: Why does refer(1) have no database f

From: G. Branden Robinson
Subject: Re: Refer database fields (was: Re: Why does refer(1) have no database field for =?UTF-8?Q?=20"edition"?)?=
Date: Wed, 11 Aug 2021 00:14:44 +1000
User-agent: NeoMutt/20180716

Hi, Pierre-Jean!

At 2021-08-09T13:42:39+0200, wrote:
> To add to the discussion concerning refer, here is an excerpt of my
> past work and choices on that subject.
> There's an ISO standart which defines the needed and optional fields
> of a bibliography list, as well as their order: ISO-690.
> It's unfortunately not much used, and even worst, not freely
> available... But the idea to define fields and their order and let the
> choice of typography and punctuation to the user is valuable.

Agreed on all points.  I find proprietary standards to be dubious

> For my thesis, I had to hack refer to make it sort the bibliography
> list according to the order of fields defined by that standart.

Yes, this is certainly something for which a communication channel is
needed to the preprocessor, to suit the many different citation styles
that control this aspect of formatting as well.

> I needed the following fields, that I implemented in u-ref.tmac, for
> utmac:
> %H information about the publication (first edition, french edition,
> etc.)

This would serve the need I raised (for an edition number) just fine.

> %h heading of the section in which the citation appears.
> %M the collection in which the book in published.

Doesn't %B already do this?

       %B     For an article that is part of a book, the  title  of  the

> %P total number of pages of the book.

This collides with an existing usage.

       %P     Page number.  A range of pages can be specified as m-n.

> %p page of the citation.

Any chance you might consider swapping %p and %P in utmac?  Also,
because I'm curious, is there really a citation format that demands the
total number of pages in the book?  :-O  (Checking your Wikipedia's apparently the ISO 690 practice for citing an entire work.
Good grief.)

> %U co-author, translator, etc.

For GNU refer(1) I think we'd want to tighten the semantics of this to
just the translator; %A already supports multiple authors.

       %A     The name of an author.  If the name contains a title  such
              as  Jr.  at  the end, it should be separated from the last
              name by a comma.  There can be multiple occurrences of the
              %A  field.   The  order is significant.  It is a good idea
              always to supply an %A field or a %Q field.

> %w which kind of electronic document (CDROM, online, etc.)
> %x url of an electronic document.
> %y update date of an electronic document.
> %z last access to an electronic document.

I think most of your extensions seem sound, with the exceptions of %B
and %P, and with a tweak to %U.

> I also implemented:
> - two formats: one for notes, and another for the bibliography list,

I think there's already infrastructure for this but it might not be
sufficiently developed in groff's macro packages.

> - a contextual substitution of the references by "ibid." or "op. cit.
> p. xx."

No loc. cit.?  ;-)

For reference, here's how the field letters were "standardized" in the
old days[1].

 %A Author's name
 %B Book containing article referenced
 %C City (place of publication)
 %D Date of publication
 %E Editor of book containing article referenced
 %F Footnote number or label (supplied by \fIrefer\fP\|)
 %G Government order number
 %H Header commentary, printed before reference
 %I Issuer (publisher)
 %J Journal containing article
 %K Keywords to use in locating reference
 %L Label field used by \fB\-k\fP option of \fIrefer\fP
 %M Bell Labs Memorandum (undefined)
 %N Number within volume
 %O Other commentary, printed at end of reference
 %P Page number(s)
 %Q Corporate or Foreign Author (unreversed)
 %R Report, paper, or thesis (unpublished)
 %S Series title
 %T Title of article or book
 %V Volume number
 %X Abstract \(em used by \fIroffbib\fP, not by \fIrefer\fP
 %Y,Z ignored by \fIrefer\fP

At a glance, these semantics were unchanged from 4.2BSD (1983) through
to 4.4BSD (1994).

We can see here how %F, %M, and %X got freed up.  (GNU refer(1) now
calls "%X" the "annotation".)



Attachment: signature.asc
Description: PGP signature

reply via email to

[Prev in Thread] Current Thread [Next in Thread]