ls and technical
designs of Utmac.
Kind Regards,
Pierre-Jean.
Hello alls,
As promised, here is my first article about Utmac. The goal is
not to convince you to use utmac, but simply to discuss about
writing macros for troff.
Today, I’ll discuss about typography and layout. Utmac aims to
produce beautiful documents, and I tried to respect some of the
good pr
f commands. Hopefully, once ported to
neatroff, it should be easy to achieve compatibility with groff.
On my next mail, I’ll probably talk about fonts.
Kind Regards,
Pierre-Jean.
ubscript
.ds L \\ER’f-f 4-\\En[f-f]’\\f[\\E*[f-l]]
.\" Final glyphs
.ds F \\ER’f-f 5-\\En[f-f]’\\f[\\E*[f-l]]
While the system may seem complex, it works perfectly, and has a
very simple user interface. It also comes with another advantage:
it is now easy to create xml documents from troff sources. But
that will be for my next topic!
Cheers,
Pierre-Jean.
L out of a *roff file, you have
> something
> worth looking at!
If not today, I'll write about this tomorrow!
Thank you for your remarks,
Pierre-Jean.
cale -mux | postxml > f.xml
xsltproc utohtml.xsl f.xml > f.html
xsltproc utofodt.xsl f.xml > f.fodt
Since I believe you want to have a look at the result, you will
find, joined to this mail, its xml, html, and fodt versions as
produced by this system (which reveals the fodt code b
For some reason, the html file was not joined, here it is...
Pierre-Jean
Steffen Nurpmeso wrote:
> Pierre-Jean wrote:
> |For some reason, the html file was not joined, here it is...
>
> No it is not. Maybe your mailer is the cause.. Or the used
> version!
It seems to be removed by the mailing list server, since I
received it on my self se
TML we want to see, not the
> rendering of it.
Here it is, thank you Ralph!
Pierre-Jean.
http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd";>
http://www.w3.org/1999/xhtml";>Utroff
Hello alls,
Resuming my little sery of articles, I am explaining today
how Utmac is linked to
t can be used to help people create summaries of
paper books. The procedure is explained on the manual of idx
<http://utroff.org/man/idx.html>.
On my next, and hopefully last, mail about Utmac, I will
effectively discuss about goodies.
Kind Regards,
Pierre-Jean.
century needs.
Kind Regards,
Pierre-Jean.
choose a license? Because in most jurisdiction,
the absence of license is far more restricting than any license you
could choose: the default copyright is applied, and would'nt even
allow us to copy the sources.
Kind Regards,
Pierre-Jean.
mances of the pre- and post- processors, configurability,
layout, syntax, and a myriad of other things. All those things
considered the couple groff/mom is a very solid choice.
Kind Regards,
Pierre-Jean.
x27;\*[sum-list]' | od -c
> $
> $ nroff -U foo
> 000 W e d 6 D e c 1 4 : 4 7
> 020 : 3 1 G M T 2 0 1 7 \n
> 035
> $
That's a bit annoying: I did not use .write because it is not
implemented in neatroff... But I'm underdestanding I should better use
it, and reserve the possible issue of .sy to neatroff only.
Thank you,
Pierre-Jean.
Ralph Corderoy writes:
> > For my last mail about Utmac
> Thanks, they've been interesting, and more digestible drip-fed over the
> days than one long email.
I'm glad to read that!
Cheers, Pierre-Jean.
(".macro\ni", ".macro\nj").
> I'm not exactly sure how I found this ability, but I think I found it by
> accident.
I have the feeling I found it by accident too. Or maybe did I saw it
in the macro ms...
Kind Regards,
Pierre-Jean.
ze spaces,
that pitfail would become much less visible, if visible at all, on a
pdf produced by heirloom troff. If it remains visible, and since
there's no "page at once" feature in heirloom, it could only be solved
by manual adjustment of interword space (.ss, .minss), and maybe by
adj
Hello alls,
Ralph Corderoy wrote:
> Today, m4(1) is still around from that era, along with troff, and is
> worth examining. https://en.wikipedia.org/wiki/M4_(computer_language)
> autoconf and sendmail still use it.
Thank you for the link. I am discovering it is worth examining indeed
nstall manually a proper arabic font.
To do so, put the font in the 'font' subdirectory, and run './fonts.sh'
from there.
If you don't receive more answer from this list, maybe could you write
directly to Ali Gholami Rudi? His email is indicated at the bottom of
his web site: http://litcave.rudi.ir
Kind Regards,
Pierre-Jean.
;s, on github).
> You’re missing neatroff — https://github.com/aligrudi/neatroff
>
> I think both Neatroff and Heirloom are based on Plan9, FWIW.
As far as I know, Neatroff is not based on any other troff. It has
been written from scratch.
Kind regards,
Pierre-Jean.
l mailing list archive at Nabble.com.
>
Hello,
As far as I understand groff:
The PD number register is used by the paragraphs macro of ms
(PP, LP, QP, XP and probably IP).
The .br operator break lines, but is not what ms consider as
a new paragraph. PP is a paragraph style, .br is only a
new line.
In your test, you should replace .br by one of the paragraph
macro.
Pierre-Jean.
with or without U and s arguments:
cat bar | groff foo >foo.ps
groff foo >foo.ps foo.ps
Could someone give me another short example or some explanations?
Thanks a lot!
Pierre-Jean
Ralph Corderoy wrote:
>
> Hi Pierre-Jean,
>
> > Could someone give me another short example or some explanations?
>
> $ cat main.tr
> A.
> .rd ignored foo bar
> B.
> .rd
> C.
> .m
> D.
> $ cat data
>
Ralph Corderoy wrote:
>
> printf 'foo\n\n' | nroff <(printf 'a\n.rd\nb\n') | grep .
>
> produces "a foo b". A friend's tried that on his ArchLinux and it also
> works. Another friend has tried on OpenBSD and it works, but on
>
> Fedora, version 1.18.1.4
>
> he gets "a b" which suggests
; | preconv -r )
Is it possible to pass the preconv "-r" option to groff?
Pierre-Jean.
ook at the place of the
glyph in the font, where groff look at his name or at his
code: the solution explained here is probably usefull for
latex, but not for groff...
Am I missing something? Should I ask help to the maintainer
of lcdf-typetools?
Thanks a lot for your help!
Pierre-Jean
they are present, and described in the
entity name field.
One can repair the groff font file using that sed
expression (if first field is "---", it is replaced it by
the fourth one):
sed -i -e "
s/---\t\([^\t]*\)\t\([^\t]*\)\t\([^\t]*\)\t\(.*\)/\4\t\1\t\2\t\3\t\4/" \
groff_font_file
Then we can use \[glyph_name]
I'll make some tests and post a complete "how-to use opentype
fonts" on the list.
Thanks a lot!
Pierre-Jean.
7) Copy the script in a file named font2macro. font2macro
need two argument: the name of the font (here it is "font")
and the name of the subfont (here it is "R"). Launch it, wait
a few, and test the new macro file:
$ chmod u+x ./font2macro
$ ./font2macro fontR
$ groff testfile > test.ps
8) You should manually edit the macro file "font.tmac" to give
a name to unnamed glyphs, and copy it in your tmac directory:
$ cp font.tmac $GROFF_TMAC_PATH/
9) Clean your dir:
$ rm fontR
$ rm font.afm
$ rm font.pfa
$ rm font.tmac
$ rm test.ps
$ rm lcdf-typetools*.tar.gz
$ cd lcdf-typetools*
$ make uninstall
$ cd ../
$ rm -rf lcdf-typetools*
10) Use the features of your font this way:
.do mso font.tmac
.smcp
My text in small caps.
.S_smcp
My text in normal caps.
Enjoy!
Pierre-Jean.
It has more than 2400 glyphs and many glyph variants.
Very nice font! My script works as expected with it. But,
since it only deal with variants glyphs (named
glyph.variation), a lot of things must be manually done:
looking at the glyphs in the font, and building handy macro to
access them easilly.
Pierre-Jean.
ish it somewhere (but where?) in a
few weeks (after some more tests and probably some fixes),
but since it could help now, here it is (if the mailing list
accept attachments).
Comments and bugs are welcome.
Pierre-Jean.
isobib.tgz
Description: Binary data
r usual fonts.
So, fontforge produce better results than lcdf-typetools
here.
Thanks for your help and for the link to the Libertine font.
Pierre-Jean.
your README and manpage.
I'd be proud of that. But there's probably more work to do in that
proofread that you can imagine.
Pierre-Jean.
2/
They could probably be usefull before using an html to epub tool,
One such tool, simply named html2epub is for example given with
Calibre: http://calibre-ebook.com/about
Please, send your solution on the list if you find something
usefull.
Pierre-Jean.
Ralph Graulich wrote:
> "The optional second argument to de changes this to a macro to ‘.end’."
>
> For me this sentence is difficult to understand, although the meaning is
> obvious.
It was the same thing for me, I couldn't exactly
understand this until I saw examples in om.tmac.
But I'
econd argument is given to de (for exemple .de name end),
the two dots must (can?) be replaced by this argument (.end in
our example)."
Or this:
"The optional second argument to de define a replacement (substitution?)
for the two dots."
Pierre-Jean.
ro.
I think that doing like that is doing things "as soon as you can"
and also "doing one thing but doing it well".
Troff has been made for that, why not using it in that case?
This is a real question, and this question is the reason of
my present mail: Is there any reason why troff would not be
able to do that well?
Cheers,
Pierre-Jean.
d troff,
about one year ago.
I hope to may write one - one day...
Pierre-Jean.
y macros.
* It is now possible to find the best paragraph that should be
modified to avoid widows and orphans: it's a long one, with the
last word near the beginning or the end of the line, with no
page break between him and the widow.
* A filter could calculate that and add '.min
mething else?
Would you be interested to work on that Werner? Is there a way to
help?
Last but not least, all this is not only a matter of taste, it's
based on optic laws, and is a way of dealing with optic
illusions. People who are making fonts are also dealing with
optic illusions: to get a perfect visual alignment of glyphs, some must
be higher than others.
Cheers,
Pierre-Jean.
7;t exist in groff.
tmac.srefs seems to be part of the plan9 troff. It is the code of tmac.s
which format refer output. There is a modified version of it in Heirloom
troff, which I join to this mail.
It should be compatible with groff, if you use the corresponding pm macro,
which I
ridiculous_fish wrote:
> Our intent is to produce a shell with less internal complexity, and far less
> user-facing
> complexity, than popular shells.
>
Hello,
I suppose that you know the shell fish: It's doing what you
want concerning completion of options. You could have a look
at it.
It ha
off, but for most of the printers. The CSS
style sheet *must* define if a tag is an inline or a block
element to render properly an xhtml page - we usually forget
this because most of the tags have a default definition.
Cheers,
Pierre-Jean.
f transforming troff to xml is the
easiest one and the correct one. It's a troff way, because
end user can build it's own xml macro, but it's also the xml
way, because it let xml do the most difficult thing, say use
some standart (like odt).
As a proof of concept, here is a macro t
s
and need something to translate my troff files to xml ; but
I'll maybe try to hack doclifter for my needs.
Last but not least, I'm happy to learn about pic2plot, to
convert pic to svg. Does someone know if there's something
for tbl?
Thanks,
Pierre-Jean.
off) is that
it's easy to create and hack macro. The disadvantage is that
the macro you need probably doesn't exist yet. Less is more...
> Sorry for my English, and thanks to all.
Sorry for mine !
Cheers,
Pierre-Jean.
Anton Shterenlikht wrote:
> Another factor is size. A modern latex
> distribution, i.e. texlive is enormous.
That's why some people are building the minimal Kertex
distribution. They want Tex to be like Troff !
Pierre-Jean.
ext processing. This is
well explained in the introduction of _Unix Text
Processing_, which relates this strange moment of our recent
history: tools made to develop software can be used to write
texts, because they have been made to manipulate the
language using the language itself.
Cheers,
Pierre-Jean.
As you can see, these questions are absolutely essentials. I
hope that a good english speaker could explain me what does
that mean.
Cheers,
Pierre-Jean.
re probably right. In one of the source file (regexp.c),
a comment explain the situation: "loop till expression
string is exhausted (or at least pretty tired)". That's
maybe why the manual page says: "grind nice listings of
programms".
Thanks for your explanations,
Pierre-Jean.
a %.
Here follow the refer.xml file which add this mime type, and
a simple makefile to install it. Most of the translation
should be corrected.
I also have got a set of icons for troff files, based on a
famous icon theme. I can share them if wanted.
Cheers,
Pierre-Jean.
refer.xml
Descr
part of the definition of another file.
WIth such a definition, Tex and Matlab files will not be
recognized correctly if 1) they don't have extension, and 2)
they only match the single "%" expression.
Here is a corrected refer.xml, in wich the bug is fixed, and
the priority defined to 40.
Cheers,
Pierre-Jean.
refer.xml
Description: XML document
Hello alls,
It appears that I inserted some escape sequence in the
content of my previous mail, which explain it appears empty.
That was not my intention, of course. Here was my message,
and sorry for the noise...
Pierre-Jean.
> Shiv Shankar Dayal wrote:
>
> > Also, how can
tnotes and headers. It's, in my opinion, the
best troff documentation. The manual can be found on
heirloom troff website (take care of some incompatibilities
between heirloom troff and groff):
http://heirloom.sourceforge.net/doctools/troff.pdf
Cheers,
Pierre-Jean.
ef
In both case, references not cited inline, but present in
your bibliography file will appear in the bibliography list.
Cheers,
Pierre-Jean.
eciate to understand why.
Cheers,
Pierre-Jean.
"Bernd Warken" wrote:
> In groff_lilypond there are now 2 modes for generating the EPS
> files:
> --ly2eps (the new default) and
> --pdf2eps (that's the old mode from version v0.1 with pdf to ps to eps).
>
> With
have been added or modified to
handle syntax highlighting (Ugrind), the iso-690
bibliography standart (Refer), and greek polytonic
(Tchars).
I've released the first public version today: utroff-0.1.
Enjoy !
Pierre-Jean.
have been added or modified to
handle syntax highlighting (Ugrind), the iso-690
bibliography standart (Refer), and greek polytonic
(Tchars).
I've released the first public version today: utroff-0.1.
Enjoy !
Pierre-Jean.
Dear troffers,
I wish we could simply cross the street to offer to Werner
some champagne for the long time spent working on groff, and
for the success of his next projects...
Werner LEMBERG wrote:
> Here's my e-mail sent to gnu.org.
For now, since our small community now search for some more
but
it is also a major problem for the whole troff community.
Should'nt we begin the extension discussion by a discussion
about the "state of the art" in the troff land ?
Cheers,
Pierre-Jean.
t we're discussing about.
But, in the other hand, an overview of the state of the art
in the troff land (and probably also latex), a precise
roadmap, and an organized community is probably needed to
find a developper.
Maybe that we could continue this discussion in the aim of
producing a public document that would encourage people to
come and work on groff.
> Again, sorry for the long post.
So do I.
Cheers,
Pierre-Jean.
set:
.NOTESTART
.NOTESTOP
.NOTESTART
.NOTESTOP
.NOTESTART
.NOTESTOP
.LINETRAP-1
.NOTETRAP-1
.LINETRAP-2
.NOTETRAP-2
.FOOTER
.PRINTNOTES
.LINETRAP-3
.NOTETRAP-3
.FOOTER
.PRINTNOTES
Funny isn't it ?
Cheers,
Pierre-Jean.
om
> the bottom).
I thought that ms could handle that correctly. There's a
long time that I did not use it, so I might be wrong.
In my own macros, I'm using two footer traps: one to begin
the notes, and another one to divert the text of the note
that does not fit on a page to the next one.
Cheers,
Pierre-Jean.
e are, IMHO, missing here.
And why not mentionning heirloom implementation ? Isn't it
an important reference for anyone wishing to work on these
features ?
Cheers,
Pierre-Jean.
to define in which point mdoc would have to
be improved.
Eric knows the solution and is the most competent person to
implement it. It would be a great gift to the community if
he would agree to do the job. It would also be a great
example of community conciliation.
Cheers,
Pierre-Jean.
Hello folks,
Peter Schaffter wrote:
> Here's the second draft of the mission statement, incorporating
> suggestions from Ingo, Eric, Pierre-Jean, and others. It's starting
> to come into focus, although a third pass will probably be necessary
> before we commit to it.
I
quot; lightly use glyph size
.letadj 99 99 15 101 101
.lorem
.br
.\" Define default interword space
.ss 10 0
.\" Define minimal interword space
.minss 9
.lorem
Cheers,
Pierre-Jean.
f.ps
Description: PostScript document
ight be a nice part of groff to be able to
check that a document is strictly semantic. With that in
mind, instead of an hardcoded lock in the macro package, I'd
prefer and external tool, a kind of `checknr`, or a command
line option.
Saying that, I still don't exactly know what to think about
that idea.
Cheers,
Pierre-Jean.
Peter Schaffter wrote:
> this represents the final version of the mission statement.
This is a fine final version.
Pierre-Jean.
that there's place to some
coordination even if we are working on different projects,
with different goals, and using different troff
implementations. Diversity with compatibility is one of the
strength of troff, giving a place to that diversity is the
goal of this list.
Cheers,
Pierre-Jean.
27;s another goal than the Groff development.
That's why I think it's not a so easy decision.
Cheers,
Pierre-Jean.
e with that: let's try, and take another
decision later if it appears it's not constructive.
Cheers,
Pierre-Jean.
can do it if needed.
Cheers,
Pierre-Jean.
e other documents, which show how to
use the font features and how to tweak the typographic
details. I believe we should go with Linux Libertine, since
it is packaged in most distributions -- at least, I'm gonna
try with this one.
Cheers,
Pierre-Jean.
ch are sometimes
mentionned on man pages.
> 4) The programs in Heirloom and refer history
> - addbib
I find easier to add papers manually.
> - roffbib
This one can be replaced easilly by
refer -B file.ref | troff -ms
> - sortbib
Since refer is able to sort, I don't use this one a lot.
Cheers,
Pierre-Jean.
.tm B is like B
Output "A is like A" and "B is like B" only once.
I've recently seen the usage of the ^G character as field
separator. That is a good idea, since it should avoid most
possible conflicts with user input. But does anyone know
what does this character means, an
exts) can also deal (input and
output) with the refer format (also known there as 'RIS'
format).
Pierre-Jean.
Ralph Corderoy wrote:
> See ascii(7), as others have said, and 10.1 in http://troff.org/54.pdf
> around where it says
I should probably stop skim through this document to look
for command definition, and start reading it from the begin
to the end... :)
Thanks !
Pierre-Jean.
is there:
http://litcave.rudi.ir
Kind Regards,
Pierre-Jean.
Karsten
Kunze seemed to be the only other person on earth interested with
that software. I'm not certain it is worth your time working on
compatibility with heirloom troff.
Kind Regards,
Pierre-Jean.
ng desktop applications. This foundation is what's enabled me to
> share my work as an online previewer. But the full experience can't be
> ported to the browser, since it needs to shell out to Troff to process its
> output.
Ah... I thought atom was an online editor of some kind... Thank you
for the details!
Pierre-Jean.
simply has to have a particular need in term of
data input format, layout, or localization (think at the macros formatting
refer output) to need a custom macro set or a hacked one.
Kind regards,
Pierre-Jean.
understand than the other troff sources I looked at.
It also contains features that worth being considered today: paragraph at
once adjustment and right to left scriptures.
Here it is: https://github.com/aligrudi/neatroff
Kind regards,
Pierre-Jean.
John Gardner wrote:
> Well, I assume his reasons were to have a Troff variant which supported
> right-to-left languages (which, if you think about it, is a pretty glaring
> oversight in a typesetting system...) Ali also has tonnes of other
> non-trivial projects, so his patience is obviously in gr
Hello alls,
Actually, neatroff's documentation has a figure which quickly shows
where Neatroff's major layers and features are implemented in its
source tree: http://litcave.rudi.ir/neatroff.pdf#page
Pierre-Jean.
Unix!
Do we have any copy or source of these early troff formatted legal
documents? Was there a macro dedicated for that task?
Pierre-Jean.
nce, would become "éLéMENT", which is the ugliest
thing you can get. And yes, there are man pages in french, and I believe,
in a lot of other languages.
Cheers,
Pierre-Jean.
ee on the fact that a typographical enhancement of manual
pages should involve a regression for all languages but english.
I mean, people allready believe that groff/troff is a tool of the past,
they don't need to come back to the nineties when computers were unable
to display accented uppercase letters. Or should they ?
Kind regards,
Pierre-Jean.
make
That being said, I would personaly advise you to use the troff version
you are comfortable with, because all the above mentionned will require some
(probably long) set up.
Kind Regards,
Pierre-Jean.
aksr wrote:
> On Tue, Jan 22, 2019 at 08:27:08AM +0100, Pierre-Jean Fichet wrote:
> > Neatroff do both of these. It suports OpenType fonts, but does not offer
> > as much control as Heirloom Troff does.
> Are you sure about that?
Heirloom troff is able to set ligatures with .f
Hellor Roy,
Roy Fisher wrote:
> On 1/24/19 12:58 AM, Pierre-Jean Fichet wrote:
> > - heirloom paragraph at once adjustment behaves sometimes oddly (and seems
> > buggy).
>
> What sort of odd/buggy issues are you seeing with paragraph adjustment?
> Which version
ill online:
https://github.com/pjfichet/utmac/branches
Kind regards,
Pierre-Jean.
Hello Roy,
Roy Fisher wrote:
> On 1/28/19 4:51 AM, Pierre-Jean Fichet wrote:
> > masterpieces of typographic details.
> > 1) https://github.com/reffort/troffmanual/blob/master/troffdoc-mk.pdf
>
> While I won't disagree too loudly with the first part, that particul
oes anyone know if such a tool exist yet ?
If none exist I might attempt to hack refer... Though, a vcard compatible
tool would certainly be more compatible... I'm gladly receiving people's
advises, ideas, and opinions about all that.
Kind regards,
Pierre-Jean.
t's the kind of things I will end up doing, indeed. I was wondering
if some kind of pre-processor existed back in the time, since filling
letter's fields seems like a common task...
There's a python library to handle vcards, which may be a good starting
point for me.
Kind regards,
Pierre-Jean.
values ('Pierre'), ('Paul'), ('Jacques');
select * from T;
sqlend
TE
Cheers,
Pierre-Jean.
on?
Did you consider sending a request to Ali Gholami Rudi? He always
seems happy interacting with neatroff's users.
Cheers,
Pierre-Jean.
rythm), and occasionnal glitches, but, on a day to day basis, it's
a simple way to get a much better quality. I really think that's a
situation where we benefit from automation.
Cheers,
Pierre-Jean.
ffect the "colour" (i.e., density) of the
> text.
>
Allright, I understand now. Thank you !
Pierre-Jean.
, the troff
formatting language is easy. I quickly could have my first working
layout. Then comes the harder part of the work when complexity
increases the risk of glitches, and glitches become harder to track
and fix. But in the end, the journey is worth the effort, imho.
Hoping that helps!
Pierre-Jean.
o your libertine font (/usr/share/fonts)
FONTS: the names of the various fonts you want to convert.
And you can run:
make fonts
And it should work... Though, please note that I'm not using the
default neatroff_make installation, but a custom one, using the
makefile in utmac/neatroff.
Warm regards,
Pierre-Jean.
1 - 100 of 106 matches
Mail list logo