From aliqrudi@gmail.com Fri Jul 26 17:19:57 2013 Date: Fri, 26 Jul 2013 17:18:30 From: Ali Gholami Rudi To: groff@gnu.org Subject: [Groff] Announcing Neatroff Hello, Neatroff is a new troff implementation in C programming language and under the Modified BSD Licence. Although it does not implement most of the extensions available in Groff or Heirloom troff, it does implement a few of their convenient features: * Assumes UTF-8 encoding * Named environments * Long macro, register and environment names * Color support * Font pairwise kerning and arbitrary font ligatures * Text direction for right-to-left languages Links: * A brief introduction: http://litcave.rudi.ir/neatroff.pdf * Neatroff's Git repository: git://repo.or.cz/neatroff.git * Neatpost's Git repository: git://repo.or.cz/neatpost.git (neatroff's postscript postprocessor) Ali From aliqrudi@gmail.com Fri Jul 26 21:10:02 2013 Date: Fri, 26 Jul 2013 20:35:06 From: Ali Gholami Rudi To: Heinz-Jürgen Oertel Cc: groff@gnu.org Subject: Re: [Groff] Announcing Neatroff Heinz-Jürgen Oertel wrote: > > > * Assumes UTF-8 encoding > > > * Named environments > > > * Long macro, register and environment names > > > * Color support > > > * Font pairwise kerning and arbitrary font ligatures > > > * Text direction for right-to-left languages > > > > > > Links: > > > * A brief introduction: http://litcave.rudi.ir/neatroff.pdf > > > * Neatroff's Git repository: git://repo.or.cz/neatroff.git > > > * Neatpost's Git repository: git://repo.or.cz/neatpost.git > > > (neatroff's postscript postprocessor) > > > > > > Ali > > > > > > > May I ask for the reasons to start a new development? > > Regards > > Heinz > > OK, i read the introduction at http://litcave.rudi.ir/neatroff.pdf. Actually I was long contemplating starting a modern pure C implementation of troff; Plan 9 troff, Open Solaris troff, and Heirloom troff are all derived from the original troff; very short and difficult to decipher global variable and function names make their source code very difficult to follow. When I needed a fully UTF-8 compatible troff clone with features such as text direction, I naturally decided to modify one of the available implementations. After some examination, I decided to extend Plan 9 troff, which was already UTF-8 compatible; I ported it to Linux (git://repo.or.cz/troff.git), changed its font handling to make it more similar to the original troff or Groff, included a few fixes, and implemented text direction. However, the difficulty of changing this implementation for some of my needs and importing some of the features absent in Plan9 troff convinced me to start neatroff. Ali