On Fri, Mar 07, 2025 at 07:48:27PM +0100, Sigfrid Lundberg wrote:
> Thank you Thomas!
> 
> I had already tried \p, but it is difficult to get it to work inside the
> refer support code in the macro packages used. It seems that such code has
> to be embedded in these strings overriding the ones that  are in the macro
> package you are using.
> 
> .ds ref*spec!A     ",  " "
> .ds ref*spec!B     """ " " "in \fI" ""    "\fP"
> .ds ref*spec!D     """ " " "("      ")"
> .ds ref*spec!E     ",  " " "ed. "
> .ds ref*spec!G     """ " " "("      ")"
> .ds ref*spec!J     ",  " " "\fI"    ""    "\fP"
> .ds ref*spec!N     """ "(" ""       ")"
> .ds ref*spec!O     ".  " "
> .ds ref*spec!P     ",  " " "p.\~"
> .ds ref*spec!PP    ",  " " "pp.\~"
> .ds ref*spec!T     ",  " " "\\*Q"   ""    "\\*U"
> .ds ref*spec!T:0   ",  " " "\fI"    ""    "\fP"
> .ds ref*spec!T:2   ",  " " "\fI"    ""    "\fP"
> .ds ref*spec!V     """ " " "\fB"    "\fR"
> .ds ref*spec!dflt  ",  " "
> 
> And I could find no way to execute a request inside a string.
> 
> .nh 0
> 
> for a single refer field, in my case for field O.
> 
> My temporary solution is to override the bibliographic item start and end
> macros, which are specific for each macro package, but executed in the
> general refer code. Here I turned off the hyphenation and adjustment, but I
> do that for the entire reference, which isn't really what I want. Further,
> this  breaks if there is a page break inside a reference :(
> 
> .de ref*biblio-item-start
> .  IP "\\$1"
> .  hy 0
> .  na
> ..
> .de ref*biblio-item-start-nolabel
> .  XP
> .  hy 0
> .  na
> ..
> .de ref*biblio-item-end
> .  hy
> ..
> 
> Anyway, there is a lot to do for getting refer support that works with
> digital references....
> 
> Yours,
> 
> Sigfrid
> 
> 
> 
> On Thu, 6 Mar 2025 at 12:10, Thomas DUPOND via GNU roff typesetting system
> discussion <groff@gnu.org> wrote:
> 
> > Le 2025-03-05 à 21:37, Sigfrid Lundberg a écrit :
> > >
> > > So, now my questions have changed:
> > >
> > > How do I make sure that a URL isn't hyphenated?
> > > And how do I enforce a break using an escape sequence rather than .br?
> >
> > You could use .nh to stop hyphenation and \p to break after the next word.
> >
> > If you need to restore hyphenation after .nh you could store \n[.hy] and
> > use it to restore hyphenation status.
> >
> > All this is in groff(7) :)
> >

  Requests are generally used for global changes (or for a text block) and
escape sequences for local ones (confined to one input line).

  I find the "Troff User's Manual" (CSTR #54) to be the simplest
introduction to the basis, see for example

https://troff.org/54.pdf

  For extensions, the groff info or groff_* man pages are necessary.
[...]

Reply via email to