<!doctype refentry PUBLIC "-//OASIS//DTD DocBook V4.1//EN" [

<!-- Process this file with docbook-to-man to generate an nroff manual
     page: `docbook-to-man manpage.sgml > manpage.1'.  You may view
     the manual page with: `docbook-to-man manpage.sgml | nroff -man |
     less'.  A typical entry in a Makefile or Makefile.am is:

manpage.1: manpage.sgml
	docbook-to-man $< > $@


	The docbook-to-man binary is found in the docbook-to-man package.
	Please remember that if you create the nroff version in one of the
	debian/rules file targets (such as build), you will need to include
	docbook-to-man in your Build-Depends control field.

  -->

  <!-- Fill in your name for FIRSTNAME and SURNAME. -->
  <!ENTITY dhfirstname "<firstname>Akira</firstname>">
  <!ENTITY dhsurname   "<surname>TAGOH</surname>">
  <!-- Please adjust the date whenever revising the manpage. -->
  <!ENTITY dhdate      "<date>Sep 10, 2012</date>">
  <!-- SECTION should be 1-8, maybe w/ subsection other parameters are
       allowed: see man(7), man(1). -->
  <!ENTITY dhsection   "<manvolnum>1</manvolnum>">
  <!ENTITY dhemail     "<email>akira@tagoh.org</email>">
  <!ENTITY dhusername  "Akira TAGOH">
  <!ENTITY dhucpackage "<refentrytitle>fc-validate</refentrytitle>">
  <!ENTITY dhpackage   "fc-validate">

  <!ENTITY gnu         "<acronym>GNU</acronym>">
  <!ENTITY gpl         "&gnu; <acronym>GPL</acronym>">
]>

<refentry>
  <refentryinfo>
    <address>
      &dhemail;
    </address>
    <author>
      &dhfirstname;
      &dhsurname;
    </author>
    <copyright>
      <year>2012</year>
      <holder>&dhusername;</holder>
    </copyright>
    &dhdate;
  </refentryinfo>
  <refmeta>
    &dhucpackage;

    &dhsection;
  </refmeta>
  <refnamediv>
    <refname>&dhpackage;</refname>

    <refpurpose>validate font files</refpurpose>
  </refnamediv>
  <refsynopsisdiv>
    <cmdsynopsis>
      <command>&dhpackage;</command>

      <arg><option>-Vhv</option></arg>
      <sbr>
      <group>
        <arg><option>-i</option> <option><replaceable>index</replaceable></option></arg>
        <arg><option>--index</option> <option><replaceable>index</replaceable></option></arg>
      </group>
      <group>
	<arg><option>-l</option> <option><replaceable>lang</replaceable></option></arg>
	<arg><option>--lang</option> <option><replaceable>lang</replaceable></option></arg>
      </group>
      <arg><option>--verbose</option></arg>
      <arg><option>--version</option></arg>
      <arg><option>--help</option></arg>
      <arg choice="req" rep="repeat"><option><replaceable>font-file</replaceable></option></arg>

     </cmdsynopsis>
  </refsynopsisdiv>
  <refsect1>
    <title>DESCRIPTION</title>

    <para><command>&dhpackage;</command> validates
    <replaceable>font-file</replaceable>(s) if each fonts satisfies
    the language coverage according to the orthography files in fontconfig.
    If <option>--index</option> is given, only one face of each file is
    validated, otherwise all faces are validated.</para>

  </refsect1>
  <refsect1>
    <title>OPTIONS</title>

    <para>This program follows the usual &gnu; command line syntax,
      with long options starting with two dashes (`-').  A summary of
      options is included below.</para>

    <variablelist>
      <varlistentry>
        <term><option>-i</option>
          <option>--index</option>
	  <option><replaceable>index</replaceable></option>
        </term>
        <listitem>
          <para>Only query face indexed <replaceable>index</replaceable> of
	  each file.</para>
        </listitem>
      </varlistentry>
      <varlistentry>
	<term><option>-l</option>
	  <option>--lang</option>
	  <option><replaceable>lang</replaceable></option>
	</term>
	<listitem>
	  <para>Set <replaceable>lang</replaceable> as a language instead of current locale. this is used for <option>-m</option>.</para>
	</listitem>
      </varlistentry>
      <varlistentry>
	<term><option>-v</option>
	  <option>--verbose</option>
	</term>
	<listitem>
	  <para>Show more detailed information.</para>
	</listitem>
      </varlistentry>
      <varlistentry>
        <term><option>-V</option>
          <option>--version</option>
        </term>
        <listitem>
          <para>Show version of the program and exit.</para>
        </listitem>
      </varlistentry>
      <varlistentry>
        <term><option>-h</option>
          <option>--help</option>
        </term>
        <listitem>
          <para>Show summary of options.</para>
        </listitem>
      </varlistentry>
      <varlistentry>
        <term><option><replaceable>font-file</replaceable></option>
        </term>
        <listitem>
          <para>Query <replaceable>font-file</replaceable> for font faces.</para>
        </listitem>
      </varlistentry>
    </variablelist>
  </refsect1>

  <refsect1>
    <title>RETURN CODES</title>
    <para><command>fc-validate</command> returns error code 0 for successful parsing,
    or 1 if any errors occured or if at least one font face could not be opened.</para>
  </refsect1>

  <refsect1>
    <title>AUTHOR</title>

    <para>This manual page was updated by &dhusername; &dhemail;.</para>

  </refsect1>
</refentry>

<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:2
sgml-indent-data:t
sgml-parent-document:nil
sgml-default-dtd-file:nil
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
-->
