misc/libfreetype/src/gxvalid/gxvfgen.c
changeset 9372 915436ff64ab
parent 9371 f3840de881bd
child 9373 b769a8e38cbd
--- a/misc/libfreetype/src/gxvalid/gxvfgen.c	Thu Jul 25 23:16:06 2013 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,482 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  gxfgen.c                                                               */
-/*                                                                         */
-/*    Generate feature registry data for gxv `feat' validator.             */
-/*    This program is derived from gxfeatreg.c in gxlayout.                */
-/*                                                                         */
-/*  Copyright 2004, 2005, 2006 by Masatake YAMATO and Redhat K.K.          */
-/*                                                                         */
-/*  This file may only be used,                                            */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-/***************************************************************************/
-/*                                                                         */
-/*  gxfeatreg.c                                                            */
-/*                                                                         */
-/*    Database of font features pre-defined by Apple Computer, Inc.        */
-/*    http://developer.apple.com/fonts/Registry/                           */
-/*    (body).                                                              */
-/*                                                                         */
-/*  Copyright 2003 by                                                      */
-/*  Masatake YAMATO and Redhat K.K.                                        */
-/*                                                                         */
-/*  This file may only be used,                                            */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-/***************************************************************************/
-/*                                                                         */
-/* Development of gxfeatreg.c is supported by                              */
-/* Information-technology Promotion Agency, Japan.                         */
-/*                                                                         */
-/***************************************************************************/
-
-
-/***************************************************************************/
-/*                                                                         */
-/* This file is compiled as a stand-alone executable.                      */
-/* This file is never compiled into `libfreetype2'.                        */
-/* The output of this file is used in `gxvfeat.c'.                         */
-/* ----------------------------------------------------------------------- */
-/* Compile: gcc `pkg-config --cflags freetype2` gxvfgen.c -o gxvfgen       */
-/* Run: ./gxvfgen > tmp.c                                                  */
-/*                                                                         */
-/***************************************************************************/
-
-  /*******************************************************************/
-  /* WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING */
-  /*******************************************************************/
-
-  /*
-   * If you add a new setting to a feature, check the number of settings
-   * in the feature.  If the number is greater than the value defined as
-   * FEATREG_MAX_SETTING, update the value.
-   */
-#define FEATREG_MAX_SETTING  12
-
-  /*******************************************************************/
-  /* WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING */
-  /*******************************************************************/
-
-
-#include <stdio.h>
-#include <string.h>
-
-
-  /*************************************************************************/
-  /*************************************************************************/
-  /*****                                                               *****/
-  /*****                      Data and Types                           *****/
-  /*****                                                               *****/
-  /*************************************************************************/
-  /*************************************************************************/
-
-#define APPLE_RESERVED         "Apple Reserved"
-#define APPLE_RESERVED_LENGTH  14
-
-  typedef struct  GX_Feature_RegistryRec_
-  {
-    const char*  feat_name;
-    char         exclusive;
-    char*        setting_name[FEATREG_MAX_SETTING];
-
-  } GX_Feature_RegistryRec;
-
-
-#define EMPTYFEAT {0, 0, {NULL}}
-
-
-  static GX_Feature_RegistryRec featreg_table[] = {
-    {                                       /* 0 */
-      "All Typographic Features",
-      0,
-      {
-        "All Type Features",
-        NULL
-      }
-    }, {                                    /* 1 */
-      "Ligatures",
-      0,
-      {
-        "Required Ligatures",
-        "Common Ligatures",
-        "Rare Ligatures",
-        "Logos",
-        "Rebus Pictures",
-        "Diphthong Ligatures",
-        "Squared Ligatures",
-        "Squared Ligatures, Abbreviated",
-        NULL
-      }
-    }, {                                    /* 2 */
-      "Cursive Connection",
-      1,
-      {
-        "Unconnected",
-        "Partially Connected",
-        "Cursive",
-        NULL
-      }
-    }, {                                    /* 3 */
-      "Letter Case",
-      1,
-      {
-        "Upper & Lower Case",
-        "All Caps",
-        "All Lower Case",
-        "Small Caps",
-        "Initial Caps",
-        "Initial Caps & Small Caps",
-        NULL
-      }
-    }, {                                    /* 4 */
-      "Vertical Substitution",
-      0,
-      {
-        /* "Substitute Vertical Forms", */
-        "Turns on the feature",
-        NULL
-      }
-    }, {                                    /* 5 */
-      "Linguistic Rearrangement",
-      0,
-      {
-        /* "Linguistic Rearrangement", */
-        "Turns on the feature",
-        NULL
-      }
-    }, {                                    /* 6 */
-      "Number Spacing",
-      1,
-      {
-        "Monospaced Numbers",
-        "Proportional Numbers",
-        NULL
-      }
-    }, {                                    /* 7 */
-      APPLE_RESERVED " 1",
-      0,
-      {NULL}
-    }, {                                    /* 8 */
-      "Smart Swashes",
-      0,
-      {
-        "Word Initial Swashes",
-        "Word Final Swashes",
-        "Line Initial Swashes",
-        "Line Final Swashes",
-        "Non-Final Swashes",
-        NULL
-      }
-    }, {                                    /* 9 */
-      "Diacritics",
-      1,
-      {
-        "Show Diacritics",
-        "Hide Diacritics",
-        "Decompose Diacritics",
-        NULL
-      }
-    }, {                                    /* 10 */
-      "Vertical Position",
-      1,
-      {
-        /* "Normal Position", */
-        "No Vertical Position",
-        "Superiors",
-        "Inferiors",
-        "Ordinals",
-        NULL
-      }
-    }, {                                    /* 11 */
-      "Fractions",
-      1,
-      {
-        "No Fractions",
-        "Vertical Fractions",
-        "Diagonal Fractions",
-        NULL
-      }
-    }, {                                    /* 12 */
-      APPLE_RESERVED " 2",
-      0,
-      {NULL}
-    }, {                                    /* 13 */
-      "Overlapping Characters",
-      0,
-      {
-        /* "Prevent Overlap", */
-        "Turns on the feature",
-        NULL
-      }
-    }, {                                    /* 14 */
-      "Typographic Extras",
-      0,
-      {
-        "Hyphens to Em Dash",
-        "Hyphens to En Dash",
-        "Unslashed Zero",
-        "Form Interrobang",
-        "Smart Quotes",
-        "Periods to Ellipsis",
-        NULL
-      }
-    }, {                                    /* 15 */
-      "Mathematical Extras",
-      0,
-      {
-        "Hyphens to Minus",
-        "Asterisk to Multiply",
-        "Slash to Divide",
-        "Inequality Ligatures",
-        "Exponents",
-        NULL
-      }
-    }, {                                    /* 16 */
-      "Ornament Sets",
-      1,
-      {
-        "No Ornaments",
-        "Dingbats",
-        "Pi Characters",
-        "Fleurons",
-        "Decorative Borders",
-        "International Symbols",
-        "Math Symbols",
-        NULL
-      }
-    }, {                                    /* 17 */
-      "Character Alternatives",
-      1,
-      {
-        "No Alternates",
-        /* TODO */
-        NULL
-      }
-    }, {                                    /* 18 */
-      "Design Complexity",
-      1,
-      {
-        "Design Level 1",
-        "Design Level 2",
-        "Design Level 3",
-        "Design Level 4",
-        "Design Level 5",
-        /* TODO */
-        NULL
-      }
-    }, {                                    /* 19 */
-      "Style Options",
-      1,
-      {
-        "No Style Options",
-        "Display Text",
-        "Engraved Text",
-        "Illuminated Caps",
-        "Tilling Caps",
-        "Tall Caps",
-        NULL
-      }
-    }, {                                    /* 20 */
-      "Character Shape",
-      1,
-      {
-        "Traditional Characters",
-        "Simplified Characters",
-        "JIS 1978 Characters",
-        "JIS 1983 Characters",
-        "JIS 1990 Characters",
-        "Traditional Characters, Alternative Set 1",
-        "Traditional Characters, Alternative Set 2",
-        "Traditional Characters, Alternative Set 3",
-        "Traditional Characters, Alternative Set 4",
-        "Traditional Characters, Alternative Set 5",
-        "Expert Characters",
-        NULL                           /* count => 12 */
-      }
-    }, {                                    /* 21 */
-      "Number Case",
-      1,
-      {
-        "Lower Case Numbers",
-        "Upper Case Numbers",
-        NULL
-      }
-    }, {                                    /* 22 */
-      "Text Spacing",
-      1,
-      {
-        "Proportional",
-        "Monospaced",
-        "Half-width",
-        "Normal",
-        NULL
-      }
-    }, /* Here after Newer */  { /* 23 */
-      "Transliteration",
-      1,
-      {
-        "No Transliteration",
-        "Hanja To Hangul",
-        "Hiragana to Katakana",
-        "Katakana to Hiragana",
-        "Kana to Romanization",
-        "Romanization to Hiragana",
-        "Romanization to Katakana",
-        "Hanja to Hangul, Alternative Set 1",
-        "Hanja to Hangul, Alternative Set 2",
-        "Hanja to Hangul, Alternative Set 3",
-        NULL
-      }
-    }, {                                    /* 24 */
-      "Annotation",
-      1,
-      {
-        "No Annotation",
-        "Box Annotation",
-        "Rounded Box Annotation",
-        "Circle Annotation",
-        "Inverted Circle Annotation",
-        "Parenthesis Annotation",
-        "Period Annotation",
-        "Roman Numeral Annotation",
-        "Diamond Annotation",
-        NULL
-      }
-    }, {                                    /* 25 */
-      "Kana Spacing",
-      1,
-      {
-        "Full Width",
-        "Proportional",
-        NULL
-      }
-    }, {                                    /* 26 */
-      "Ideographic Spacing",
-      1,
-      {
-        "Full Width",
-        "Proportional",
-        NULL
-      }
-    }, EMPTYFEAT, EMPTYFEAT, EMPTYFEAT, EMPTYFEAT,         /* 27-30 */
-    EMPTYFEAT, EMPTYFEAT, EMPTYFEAT, EMPTYFEAT, EMPTYFEAT, /* 31-35 */
-    EMPTYFEAT, EMPTYFEAT, EMPTYFEAT, EMPTYFEAT, EMPTYFEAT, /* 36-40 */
-    EMPTYFEAT, EMPTYFEAT, EMPTYFEAT, EMPTYFEAT, EMPTYFEAT, /* 40-45 */
-    EMPTYFEAT, EMPTYFEAT, EMPTYFEAT, EMPTYFEAT, EMPTYFEAT, /* 46-50 */
-    EMPTYFEAT, EMPTYFEAT, EMPTYFEAT, EMPTYFEAT, EMPTYFEAT, /* 51-55 */
-    EMPTYFEAT, EMPTYFEAT, EMPTYFEAT, EMPTYFEAT, EMPTYFEAT, /* 56-60 */
-    EMPTYFEAT, EMPTYFEAT, EMPTYFEAT, EMPTYFEAT, EMPTYFEAT, /* 61-65 */
-    EMPTYFEAT, EMPTYFEAT, EMPTYFEAT, EMPTYFEAT, EMPTYFEAT, /* 66-70 */
-    EMPTYFEAT, EMPTYFEAT, EMPTYFEAT, EMPTYFEAT, EMPTYFEAT, /* 71-75 */
-    EMPTYFEAT, EMPTYFEAT, EMPTYFEAT, EMPTYFEAT, EMPTYFEAT, /* 76-80 */
-    EMPTYFEAT, EMPTYFEAT, EMPTYFEAT, EMPTYFEAT, EMPTYFEAT, /* 81-85 */
-    EMPTYFEAT, EMPTYFEAT, EMPTYFEAT, EMPTYFEAT, EMPTYFEAT, /* 86-90 */
-    EMPTYFEAT, EMPTYFEAT, EMPTYFEAT, EMPTYFEAT, EMPTYFEAT, /* 91-95 */
-    EMPTYFEAT, EMPTYFEAT, EMPTYFEAT,                       /* 96-98 */
-    EMPTYFEAT, /* 99 */ {                   /* 100 => 22 */
-      "Text Spacing",
-      1,
-      {
-        "Proportional",
-        "Monospaced",
-        "Half-width",
-        "Normal",
-        NULL
-      }
-    }, {                                    /* 101 => 25 */
-      "Kana Spacing",
-      1,
-      {
-        "Full Width",
-        "Proportional",
-        NULL
-      }
-    }, {                                    /* 102 => 26 */
-      "Ideographic Spacing",
-      1,
-      {
-        "Full Width",
-        "Proportional",
-        NULL
-      }
-    }, {                                    /* 103 */
-      "CJK Roman Spacing",
-      1,
-      {
-        "Half-width",
-        "Proportional",
-        "Default Roman",
-        "Full-width Roman",
-        NULL
-      }
-    }, {                                    /* 104 => 1 */
-      "All Typographic Features",
-      0,
-      {
-        "All Type Features",
-        NULL
-      }
-    }
-  };
-
-
-  /*************************************************************************/
-  /*************************************************************************/
-  /*****                                                               *****/
-  /*****                         Generator                             *****/
-  /*****                                                               *****/
-  /*************************************************************************/
-  /*************************************************************************/
-
-  int
-  main( void )
-  {
-    int  i;
-
-
-    printf( "  {\n" );
-    printf( "   /* Generated from %s */\n", __FILE__ );
-
-    for ( i = 0;
-          i < sizeof ( featreg_table ) / sizeof ( GX_Feature_RegistryRec );
-          i++ )
-    {
-      const char*  feat_name;
-      int          nSettings;
-
-
-      feat_name = featreg_table[i].feat_name;
-      for ( nSettings = 0;
-            featreg_table[i].setting_name[nSettings];
-            nSettings++)
-        ;                                   /* Do nothing */
-
-      printf( "    {%1d, %1d, %1d, %2d},   /* %s */\n",
-              feat_name ? 1 : 0,
-              ( feat_name                                                  &&
-                ( ft_strncmp( feat_name,
-                              APPLE_RESERVED, APPLE_RESERVED_LENGTH ) == 0 )
-              ) ? 1 : 0,
-              featreg_table[i].exclusive ? 1 : 0,
-              nSettings,
-              feat_name ? feat_name : "__EMPTY__" );
-    }
-
-    printf( "  };\n" );
-
-    return 0;
-  }
-
-
-/* END */