lout-users
[Top][All Lists]
Advanced

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

RE: Arbitrary Accents


From: Ted Harding
Subject: RE: Arbitrary Accents
Date: Wed, 24 Nov 1999 12:20:51 -0000 (GMT)

On 24-Nov-99 Stewart C. Russell wrote:
> How might I add arbitrary accents to characters? I'm not talking about
> characters that are available in local encodings of fonts
> but ones like:
> 
>       - macron        (or "overbar", usually denotes a lengthened vowel)
> 
>       - underdot      (denotes stress)
> 
>       - w-circumflex  (Welsh* long 'oo' sound)
> 
> These are the sort of things I need to typeset quite often, and
> probably no-one else would ever need to, unless they're Unicode types,
> just to show they can.

You could be surprised who needs weird accents ...

I'm not sure to what extent Lout explicitly supports your needs (though
I'm sure it should be capable of it).

What's needed -- if it isn't already in there -- is the equivalent
of what's available, for instance, in [g]troff's "improved accents"
module in the ms macros.

This defines various formatting macros such as

.acc*over-def
.acc*under-def
.acc*prefix-def

which enable you to define input strings which will act as accent
characters. For instance, you can define the string \*^ to mean
a "circumflex-over" (and nothing stops you defining a
"circumflex-under" if you need it). Therefore, you could achieve
"w with circunflex-over" as  w\*^  and you could also encapsulate
this as a defined character-object by a definition like

.char \(w^ w\*^

The effect of say

.acc*over-def x y  ( e.g. .acc*over-def ^ ^ )


is that using the string \*x thereafter puts whatever 'y' is as
an accent over what precedes \*x, according to the mechanism

  In A\*^, determine the metrics of the object "A" and place "^"
  at a suitable height above the top of "A" and centred on the
  appropriate horizontal "accent-over" position.

The mechanism therefore depends on consulting the font metrics
for "A" (if "A" is a glyph in some installed font) or on obtaining
them from the internal variables of the program in the case that
"A" has already been constructed as a composite object.

Although the above is about [g]troff rather than lout (because I know
troff really well), I hope it may be helpful in proceeding with the issue
in lout (if help is needed).

With best wishes to all,
Ted.

--------------------------------------------------------------------
E-Mail: (Ted Harding) <address@hidden>
Date: 24-Nov-99                                       Time: 12:20:51
------------------------------ XFMail ------------------------------


reply via email to

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