.ig
Copyright 2006 Free Software Foundation, Inc.

Written by Joachim Walsdorff <Joachim.Walsdorff@urz.uni-heidelberg.de>

This file is part of hdtbl.

hdtbl is distributed with groff, the GNU roff typesetting system.

groff is free software; you can redistribute it and/or modify it under
the terms of the GNU General Public License as published by the Free
Software Foundation, either version 3 of the License, or
(at your option) any later version.

groff is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
for more details.

You should have received a copy of the GNU General Public License
along with this program.  If not, see <http://www.gnu.org/licenses/>.
..
.
.
.\"	******************************************************************
.\"	**		groff glyphs vs. character codes:		**
.\"	**	.fontdump [font1 font2 ...]				**
.\"	**		Print glyphs of font1, font2, ..., versus	**
.\"	**		character code.					**
.\"	**		'all' as fontname prints all fonts in the	**
.\"	**		specified string 'fontpath'.			**
.\"	**		without arg: glyphs and codes of active font.	**
.\"	******************************************************************
.
.ds fonts_x fonts_x.roff\"		name for diagnostic messages
.
.if !d sopath \
.  ds sopath
.
.ds lib examples/common.roff
.soquiet \*[sopath]\*[lib]
.if !d common \{\
.  tmc \n[.F]: cannot find "\*[lib]"; specify its location
.  tm1 " with groff '-I' or '-d sopath=' option
.  ab
.\}
.
.
.if !d fontpath \
.  ds fontpath /opt/local/share/groff/1.24.1/font
.
.if !\n[.U] \{\
.  tmc \*[fonts_n]: document requires unsafe mode;
.  tm1 " use groff's '-U' option
.  ab
.\}
.
.de fontdump
.  ie \\n[.$] \
.    ds *args \\$*
.  el \
.    ds *args \\n[.fn]
.
.\" Solaris 10 `tr` barfs if POSIX character classes are used in a
.\" locale other than "C".
.  pso sh -c \
       "printf '%s' '.ds *f ' ; \
        ls \\*[fontpath]/dev\*[.T] \
        | env LC_ALL=C tr '[:cntrl:]' '[ *]'; \
        echo"
.
.  while !"\\*[*args]"" \{\
.    pops *$1 *args
.
.    if "\\*[*$1]"all" \{\
.      ds *args \\*[*f] \\*[*args]
.      pops *$1 *args
.      nr *all 1
.    \}
.
.    if \\n[*all] \{\
.      if "\\*[*$1]"." \
.        nr *all 0
.      if !F \\*[*$1] \
.        continue
.    \}
.
.    t*index "\\*[*f]" \\*[*$1]
.
.    ie (\\n[.y] > 18) \
.      if !F \\*[*$1] \{\
.        tm \\*[fonts_x]: \\n[.F]:\\n[.c]: Font \\*[*$1] not found.
.        continue
.      \}
.    el \{\
.      if !\\n[t*index] \{\
.        tm \\*[fonts_x]: \\n[.F]:\\n[.c]: Font \\*[*$1] not found.
.        continue
.      \}
.
.      nr * \\n[.f]
.      ft \\*[*$1]
.      nr ** \\n[.f]
.      ft
.
.      if (\\n[**] == \\n[*]) \
.        continue
.    \}
.
.    if \\n[t*cptn] \
.      bp
.
.    tm \\*[fonts_x]: listing font '\\*[*$1]'...
.
.    TBL border=.1n bc=red cpd=0 csp=.1n bgc=
.      CPTN groff font name \\*[*$1]; \
            .br \
            val=b ".pso /usr/bin/grep -E internalname \\*[fontpath]/dev\*[.T]/\\*[*$1]" \
            .br \
            Grid is blank if font is not installed.
.      TR
.        TD
.          TBL cols=18 border=.1n bc=red csp=.1n cpd=.2n fgc=red4 bgc=beige \
               hal=c fsz='1.2 1.7' fst=\\*[*$1]
.            nr c# 0-1 1
.            nr y# 0 1
.            TR fst=HB fgc=blue
.              TD
.              nr x# 0-1 1
.              while (\\n+[x#] < 16) \{\
.                d2x \\n[x#]
.                  TD
.                    nop \&.\\*[hex#]
.              \}
.              TD
.
.            nr y# -1
.            while (\\n+[y#] < 17) \{\
.              TR
.                TD fgc=blue fst=HB
.                d2x \\n[y#]
.                  nop \\*[hex#].
.                nr x# 0-1 1
.                while (\\n+[x#] < 16) \{\
.                  TD
.                    if c \N'\\n+[c#]' \
.                      nop \N'\\n[c#]'
.                \}
.                TD fgc=blue fst=HB
.                d2x \\n[y#]
.                  nop \\*[hex#].
.            \}
.
.            TR fst=HB fgc=blue
.              TD
.              nr x# 0-1 1
.              while (\\n+[x#] < 16) \{\
.                d2x \\n[x#]
.                TD
.                  nop \&..\\*[hex#]
.              \}
.              TD
.          ETB
.    ETB
.  \}
..
.
.tm \*[fonts_x]: listing fonts in \*[fontpath]/dev\*[.T]
.fontdump all
.
.\" Local Variables:
.\" mode: nroff
.\" fill-column: 72
.\" End:
.\" vim: set filetype=groff textwidth=72:
