--- _build/pango/Pango-1.0.gir	2012-03-15 14:28:31.056103623 +0100
+++ pango/Pango-1.0.gir	2012-03-15 14:29:30.309731118 +0100
@@ -36,10 +36,22 @@
               c:type="PANGO_ATTR_INDEX_FROM_TEXT_BEGINNING">
       <type name="gint" c:type="gint"/>
     </constant>
-    <enumeration name="Alignment" c:type="PangoAlignment">
-      <member name="left" value="0" c:identifier="PANGO_ALIGN_LEFT"/>
-      <member name="center" value="1" c:identifier="PANGO_ALIGN_CENTER"/>
-      <member name="right" value="2" c:identifier="PANGO_ALIGN_RIGHT"/>
+    <enumeration name="Alignment"
+                 glib:type-name="PangoAlignment"
+                 glib:get-type="pango_alignment_get_type"
+                 c:type="PangoAlignment">
+      <member name="left"
+              value="0"
+              c:identifier="PANGO_ALIGN_LEFT"
+              glib:nick="left"/>
+      <member name="center"
+              value="1"
+              c:identifier="PANGO_ALIGN_CENTER"
+              glib:nick="center"/>
+      <member name="right"
+              value="2"
+              c:identifier="PANGO_ALIGN_RIGHT"
+              glib:nick="right"/>
     </enumeration>
     <record name="Analysis" c:type="PangoAnalysis">
       <field name="shape_engine" writable="1">
@@ -622,46 +634,137 @@
         <type name="utf8" c:type="char*"/>
       </field>
     </record>
-    <enumeration name="AttrType" c:type="PangoAttrType">
-      <member name="invalid" value="0" c:identifier="PANGO_ATTR_INVALID"/>
-      <member name="language" value="1" c:identifier="PANGO_ATTR_LANGUAGE"/>
-      <member name="family" value="2" c:identifier="PANGO_ATTR_FAMILY"/>
-      <member name="style" value="3" c:identifier="PANGO_ATTR_STYLE"/>
-      <member name="weight" value="4" c:identifier="PANGO_ATTR_WEIGHT"/>
-      <member name="variant" value="5" c:identifier="PANGO_ATTR_VARIANT"/>
-      <member name="stretch" value="6" c:identifier="PANGO_ATTR_STRETCH"/>
-      <member name="size" value="7" c:identifier="PANGO_ATTR_SIZE"/>
-      <member name="font_desc" value="8" c:identifier="PANGO_ATTR_FONT_DESC"/>
+    <enumeration name="AttrType"
+                 glib:type-name="PangoAttrType"
+                 glib:get-type="pango_attr_type_get_type"
+                 c:type="PangoAttrType">
+      <member name="invalid"
+              value="0"
+              c:identifier="PANGO_ATTR_INVALID"
+              glib:nick="invalid"/>
+      <member name="language"
+              value="1"
+              c:identifier="PANGO_ATTR_LANGUAGE"
+              glib:nick="language"/>
+      <member name="family"
+              value="2"
+              c:identifier="PANGO_ATTR_FAMILY"
+              glib:nick="family"/>
+      <member name="style"
+              value="3"
+              c:identifier="PANGO_ATTR_STYLE"
+              glib:nick="style"/>
+      <member name="weight"
+              value="4"
+              c:identifier="PANGO_ATTR_WEIGHT"
+              glib:nick="weight"/>
+      <member name="variant"
+              value="5"
+              c:identifier="PANGO_ATTR_VARIANT"
+              glib:nick="variant"/>
+      <member name="stretch"
+              value="6"
+              c:identifier="PANGO_ATTR_STRETCH"
+              glib:nick="stretch"/>
+      <member name="size"
+              value="7"
+              c:identifier="PANGO_ATTR_SIZE"
+              glib:nick="size"/>
+      <member name="font_desc"
+              value="8"
+              c:identifier="PANGO_ATTR_FONT_DESC"
+              glib:nick="font-desc"/>
       <member name="foreground"
               value="9"
-              c:identifier="PANGO_ATTR_FOREGROUND"/>
+              c:identifier="PANGO_ATTR_FOREGROUND"
+              glib:nick="foreground"/>
       <member name="background"
               value="10"
-              c:identifier="PANGO_ATTR_BACKGROUND"/>
-      <member name="underline" value="11" c:identifier="PANGO_ATTR_UNDERLINE"/>
+              c:identifier="PANGO_ATTR_BACKGROUND"
+              glib:nick="background"/>
+      <member name="underline"
+              value="11"
+              c:identifier="PANGO_ATTR_UNDERLINE"
+              glib:nick="underline"/>
       <member name="strikethrough"
               value="12"
-              c:identifier="PANGO_ATTR_STRIKETHROUGH"/>
-      <member name="rise" value="13" c:identifier="PANGO_ATTR_RISE"/>
-      <member name="shape" value="14" c:identifier="PANGO_ATTR_SHAPE"/>
-      <member name="scale" value="15" c:identifier="PANGO_ATTR_SCALE"/>
-      <member name="fallback" value="16" c:identifier="PANGO_ATTR_FALLBACK"/>
+              c:identifier="PANGO_ATTR_STRIKETHROUGH"
+              glib:nick="strikethrough"/>
+      <member name="rise"
+              value="13"
+              c:identifier="PANGO_ATTR_RISE"
+              glib:nick="rise"/>
+      <member name="shape"
+              value="14"
+              c:identifier="PANGO_ATTR_SHAPE"
+              glib:nick="shape"/>
+      <member name="scale"
+              value="15"
+              c:identifier="PANGO_ATTR_SCALE"
+              glib:nick="scale"/>
+      <member name="fallback"
+              value="16"
+              c:identifier="PANGO_ATTR_FALLBACK"
+              glib:nick="fallback"/>
       <member name="letter_spacing"
               value="17"
-              c:identifier="PANGO_ATTR_LETTER_SPACING"/>
+              c:identifier="PANGO_ATTR_LETTER_SPACING"
+              glib:nick="letter-spacing"/>
       <member name="underline_color"
               value="18"
-              c:identifier="PANGO_ATTR_UNDERLINE_COLOR"/>
+              c:identifier="PANGO_ATTR_UNDERLINE_COLOR"
+              glib:nick="underline-color"/>
       <member name="strikethrough_color"
               value="19"
-              c:identifier="PANGO_ATTR_STRIKETHROUGH_COLOR"/>
+              c:identifier="PANGO_ATTR_STRIKETHROUGH_COLOR"
+              glib:nick="strikethrough-color"/>
       <member name="absolute_size"
               value="20"
-              c:identifier="PANGO_ATTR_ABSOLUTE_SIZE"/>
-      <member name="gravity" value="21" c:identifier="PANGO_ATTR_GRAVITY"/>
+              c:identifier="PANGO_ATTR_ABSOLUTE_SIZE"
+              glib:nick="absolute-size"/>
+      <member name="gravity"
+              value="21"
+              c:identifier="PANGO_ATTR_GRAVITY"
+              glib:nick="gravity"/>
       <member name="gravity_hint"
               value="22"
-              c:identifier="PANGO_ATTR_GRAVITY_HINT"/>
+              c:identifier="PANGO_ATTR_GRAVITY_HINT"
+              glib:nick="gravity-hint"/>
+      <function name="get_name"
+                c:identifier="pango_attr_type_get_name"
+                version="1.22">
+        <doc xml:whitespace="preserve">Fetches the attribute type name passed in when registering the type using
+pango_attr_type_register().
+
+The returned value is an interned string (see g_intern_string() for what
+that means) that should not be modified or freed.
+
+a built-in Pango attribute type or invalid.</doc>
+        <return-value transfer-ownership="none">
+          <doc xml:whitespace="preserve">the type ID name (which may be %NULL), or %NULL if @type is</doc>
+          <type name="utf8" c:type="char*"/>
+        </return-value>
+        <parameters>
+          <parameter name="type" transfer-ownership="none">
+            <doc xml:whitespace="preserve">an attribute type ID to fetch the name for</doc>
+            <type name="AttrType" c:type="PangoAttrType"/>
+          </parameter>
+        </parameters>
+      </function>
+      <function name="register" c:identifier="pango_attr_type_register">
+        <doc xml:whitespace="preserve">Allocate a new attribute type ID.  The attribute type name can be accessed
+later by using pango_attr_type_get_name().</doc>
+        <return-value transfer-ownership="none">
+          <doc xml:whitespace="preserve">the new type ID.</doc>
+          <type name="AttrType" c:type="PangoAttrType"/>
+        </return-value>
+        <parameters>
+          <parameter name="name" transfer-ownership="none">
+            <doc xml:whitespace="preserve">an identifier for the type</doc>
+            <type name="utf8" c:type="gchar*"/>
+          </parameter>
+        </parameters>
+      </function>
     </enumeration>
     <record name="Attribute" c:type="PangoAttribute">
       <field name="klass" writable="1">
@@ -722,29 +825,111 @@
         </parameters>
       </method>
     </record>
-    <enumeration name="BidiType" version="1.22" c:type="PangoBidiType">
+    <enumeration name="BidiType"
+                 version="1.22"
+                 glib:type-name="PangoBidiType"
+                 glib:get-type="pango_bidi_type_get_type"
+                 c:type="PangoBidiType">
       <doc xml:whitespace="preserve">The #PangoBidiType type represents the bidirectional character
 type of a Unicode character as specified by the
 &lt;ulink url="http://www.unicode.org/reports/tr9/"&gt;Unicode bidirectional algorithm&lt;/ulink&gt;.</doc>
-      <member name="l" value="0" c:identifier="PANGO_BIDI_TYPE_L"/>
-      <member name="lre" value="1" c:identifier="PANGO_BIDI_TYPE_LRE"/>
-      <member name="lro" value="2" c:identifier="PANGO_BIDI_TYPE_LRO"/>
-      <member name="r" value="3" c:identifier="PANGO_BIDI_TYPE_R"/>
-      <member name="al" value="4" c:identifier="PANGO_BIDI_TYPE_AL"/>
-      <member name="rle" value="5" c:identifier="PANGO_BIDI_TYPE_RLE"/>
-      <member name="rlo" value="6" c:identifier="PANGO_BIDI_TYPE_RLO"/>
-      <member name="pdf" value="7" c:identifier="PANGO_BIDI_TYPE_PDF"/>
-      <member name="en" value="8" c:identifier="PANGO_BIDI_TYPE_EN"/>
-      <member name="es" value="9" c:identifier="PANGO_BIDI_TYPE_ES"/>
-      <member name="et" value="10" c:identifier="PANGO_BIDI_TYPE_ET"/>
-      <member name="an" value="11" c:identifier="PANGO_BIDI_TYPE_AN"/>
-      <member name="cs" value="12" c:identifier="PANGO_BIDI_TYPE_CS"/>
-      <member name="nsm" value="13" c:identifier="PANGO_BIDI_TYPE_NSM"/>
-      <member name="bn" value="14" c:identifier="PANGO_BIDI_TYPE_BN"/>
-      <member name="b" value="15" c:identifier="PANGO_BIDI_TYPE_B"/>
-      <member name="s" value="16" c:identifier="PANGO_BIDI_TYPE_S"/>
-      <member name="ws" value="17" c:identifier="PANGO_BIDI_TYPE_WS"/>
-      <member name="on" value="18" c:identifier="PANGO_BIDI_TYPE_ON"/>
+      <member name="l"
+              value="0"
+              c:identifier="PANGO_BIDI_TYPE_L"
+              glib:nick="l"/>
+      <member name="lre"
+              value="1"
+              c:identifier="PANGO_BIDI_TYPE_LRE"
+              glib:nick="lre"/>
+      <member name="lro"
+              value="2"
+              c:identifier="PANGO_BIDI_TYPE_LRO"
+              glib:nick="lro"/>
+      <member name="r"
+              value="3"
+              c:identifier="PANGO_BIDI_TYPE_R"
+              glib:nick="r"/>
+      <member name="al"
+              value="4"
+              c:identifier="PANGO_BIDI_TYPE_AL"
+              glib:nick="al"/>
+      <member name="rle"
+              value="5"
+              c:identifier="PANGO_BIDI_TYPE_RLE"
+              glib:nick="rle"/>
+      <member name="rlo"
+              value="6"
+              c:identifier="PANGO_BIDI_TYPE_RLO"
+              glib:nick="rlo"/>
+      <member name="pdf"
+              value="7"
+              c:identifier="PANGO_BIDI_TYPE_PDF"
+              glib:nick="pdf"/>
+      <member name="en"
+              value="8"
+              c:identifier="PANGO_BIDI_TYPE_EN"
+              glib:nick="en"/>
+      <member name="es"
+              value="9"
+              c:identifier="PANGO_BIDI_TYPE_ES"
+              glib:nick="es"/>
+      <member name="et"
+              value="10"
+              c:identifier="PANGO_BIDI_TYPE_ET"
+              glib:nick="et"/>
+      <member name="an"
+              value="11"
+              c:identifier="PANGO_BIDI_TYPE_AN"
+              glib:nick="an"/>
+      <member name="cs"
+              value="12"
+              c:identifier="PANGO_BIDI_TYPE_CS"
+              glib:nick="cs"/>
+      <member name="nsm"
+              value="13"
+              c:identifier="PANGO_BIDI_TYPE_NSM"
+              glib:nick="nsm"/>
+      <member name="bn"
+              value="14"
+              c:identifier="PANGO_BIDI_TYPE_BN"
+              glib:nick="bn"/>
+      <member name="b"
+              value="15"
+              c:identifier="PANGO_BIDI_TYPE_B"
+              glib:nick="b"/>
+      <member name="s"
+              value="16"
+              c:identifier="PANGO_BIDI_TYPE_S"
+              glib:nick="s"/>
+      <member name="ws"
+              value="17"
+              c:identifier="PANGO_BIDI_TYPE_WS"
+              glib:nick="ws"/>
+      <member name="on"
+              value="18"
+              c:identifier="PANGO_BIDI_TYPE_ON"
+              glib:nick="on"/>
+      <function name="for_unichar"
+                c:identifier="pango_bidi_type_for_unichar"
+                version="1.22">
+        <doc xml:whitespace="preserve">Determines the normative bidirectional character type of a
+character, as specified in the Unicode Character Database.
+
+A simplified version of this function is available as
+pango_unichar_get_direction().
+
+Unicode bidirectional algorithm.</doc>
+        <return-value transfer-ownership="none">
+          <doc xml:whitespace="preserve">the bidirectional character type, as used in the</doc>
+          <type name="BidiType" c:type="PangoBidiType"/>
+        </return-value>
+        <parameters>
+          <parameter name="ch" transfer-ownership="none">
+            <doc xml:whitespace="preserve">a Unicode character</doc>
+            <type name="gunichar" c:type="gunichar"/>
+          </parameter>
+        </parameters>
+      </function>
     </enumeration>
     <record name="Color"
             c:type="PangoColor"
@@ -1254,17 +1439,31 @@
         </return-value>
       </function>
     </record>
-    <enumeration name="CoverageLevel" c:type="PangoCoverageLevel">
-      <member name="none" value="0" c:identifier="PANGO_COVERAGE_NONE"/>
+    <enumeration name="CoverageLevel"
+                 glib:type-name="PangoCoverageLevel"
+                 glib:get-type="pango_coverage_level_get_type"
+                 c:type="PangoCoverageLevel">
+      <member name="none"
+              value="0"
+              c:identifier="PANGO_COVERAGE_NONE"
+              glib:nick="none"/>
       <member name="fallback"
               value="1"
-              c:identifier="PANGO_COVERAGE_FALLBACK"/>
+              c:identifier="PANGO_COVERAGE_FALLBACK"
+              glib:nick="fallback"/>
       <member name="approximate"
               value="2"
-              c:identifier="PANGO_COVERAGE_APPROXIMATE"/>
-      <member name="exact" value="3" c:identifier="PANGO_COVERAGE_EXACT"/>
+              c:identifier="PANGO_COVERAGE_APPROXIMATE"
+              glib:nick="approximate"/>
+      <member name="exact"
+              value="3"
+              c:identifier="PANGO_COVERAGE_EXACT"
+              glib:nick="exact"/>
     </enumeration>
-    <enumeration name="Direction" c:type="PangoDirection">
+    <enumeration name="Direction"
+                 glib:type-name="PangoDirection"
+                 glib:get-type="pango_direction_get_type"
+                 c:type="PangoDirection">
       <doc xml:whitespace="preserve">The #PangoDirection type represents a direction in the
 Unicode bidirectional algorithm; not every value in this
 enumeration makes sense for every usage of #PangoDirection;
@@ -1280,17 +1479,34 @@
 enumeration as the writing direction of a block of
 text and are no longer used; See #PangoGravity for how
 vertical text is handled in Pango.</doc>
-      <member name="ltr" value="0" c:identifier="PANGO_DIRECTION_LTR"/>
-      <member name="rtl" value="1" c:identifier="PANGO_DIRECTION_RTL"/>
-      <member name="ttb_ltr" value="2" c:identifier="PANGO_DIRECTION_TTB_LTR"/>
-      <member name="ttb_rtl" value="3" c:identifier="PANGO_DIRECTION_TTB_RTL"/>
+      <member name="ltr"
+              value="0"
+              c:identifier="PANGO_DIRECTION_LTR"
+              glib:nick="ltr"/>
+      <member name="rtl"
+              value="1"
+              c:identifier="PANGO_DIRECTION_RTL"
+              glib:nick="rtl"/>
+      <member name="ttb_ltr"
+              value="2"
+              c:identifier="PANGO_DIRECTION_TTB_LTR"
+              glib:nick="ttb-ltr"/>
+      <member name="ttb_rtl"
+              value="3"
+              c:identifier="PANGO_DIRECTION_TTB_RTL"
+              glib:nick="ttb-rtl"/>
       <member name="weak_ltr"
               value="4"
-              c:identifier="PANGO_DIRECTION_WEAK_LTR"/>
+              c:identifier="PANGO_DIRECTION_WEAK_LTR"
+              glib:nick="weak-ltr"/>
       <member name="weak_rtl"
               value="5"
-              c:identifier="PANGO_DIRECTION_WEAK_RTL"/>
-      <member name="neutral" value="6" c:identifier="PANGO_DIRECTION_NEUTRAL"/>
+              c:identifier="PANGO_DIRECTION_WEAK_RTL"
+              glib:nick="weak-rtl"/>
+      <member name="neutral"
+              value="6"
+              c:identifier="PANGO_DIRECTION_NEUTRAL"
+              glib:nick="neutral"/>
     </enumeration>
     <constant name="ENGINE_TYPE_LANG"
               value="PangoEngineLang"
@@ -1302,16 +1518,31 @@
               c:type="PANGO_ENGINE_TYPE_SHAPE">
       <type name="utf8" c:type="gchar*"/>
     </constant>
-    <enumeration name="EllipsizeMode" c:type="PangoEllipsizeMode">
+    <enumeration name="EllipsizeMode"
+                 glib:type-name="PangoEllipsizeMode"
+                 glib:get-type="pango_ellipsize_mode_get_type"
+                 c:type="PangoEllipsizeMode">
       <doc xml:whitespace="preserve">The #PangoEllipsizeMode type describes what sort of (if any)
 ellipsization should be applied to a line of text. In
 the ellipsization process characters are removed from the
 text in order to make it fit to a given width and replaced
 with an ellipsis.</doc>
-      <member name="none" value="0" c:identifier="PANGO_ELLIPSIZE_NONE"/>
-      <member name="start" value="1" c:identifier="PANGO_ELLIPSIZE_START"/>
-      <member name="middle" value="2" c:identifier="PANGO_ELLIPSIZE_MIDDLE"/>
-      <member name="end" value="3" c:identifier="PANGO_ELLIPSIZE_END"/>
+      <member name="none"
+              value="0"
+              c:identifier="PANGO_ELLIPSIZE_NONE"
+              glib:nick="none"/>
+      <member name="start"
+              value="1"
+              c:identifier="PANGO_ELLIPSIZE_START"
+              glib:nick="start"/>
+      <member name="middle"
+              value="2"
+              c:identifier="PANGO_ELLIPSIZE_MIDDLE"
+              glib:nick="middle"/>
+      <member name="end"
+              value="3"
+              c:identifier="PANGO_ELLIPSIZE_END"
+              glib:nick="end"/>
     </enumeration>
     <record name="EngineLang" c:type="PangoEngineLang" disguised="1">
     </record>
@@ -2164,18 +2395,38 @@
         </parameters>
       </method>
     </class>
-    <bitfield name="FontMask" c:type="PangoFontMask">
-      <member name="family" value="1" c:identifier="PANGO_FONT_MASK_FAMILY"/>
-      <member name="style" value="2" c:identifier="PANGO_FONT_MASK_STYLE"/>
-      <member name="variant" value="4" c:identifier="PANGO_FONT_MASK_VARIANT"/>
-      <member name="weight" value="8" c:identifier="PANGO_FONT_MASK_WEIGHT"/>
+    <bitfield name="FontMask"
+              glib:type-name="PangoFontMask"
+              glib:get-type="pango_font_mask_get_type"
+              c:type="PangoFontMask">
+      <member name="family"
+              value="1"
+              c:identifier="PANGO_FONT_MASK_FAMILY"
+              glib:nick="family"/>
+      <member name="style"
+              value="2"
+              c:identifier="PANGO_FONT_MASK_STYLE"
+              glib:nick="style"/>
+      <member name="variant"
+              value="4"
+              c:identifier="PANGO_FONT_MASK_VARIANT"
+              glib:nick="variant"/>
+      <member name="weight"
+              value="8"
+              c:identifier="PANGO_FONT_MASK_WEIGHT"
+              glib:nick="weight"/>
       <member name="stretch"
               value="16"
-              c:identifier="PANGO_FONT_MASK_STRETCH"/>
-      <member name="size" value="32" c:identifier="PANGO_FONT_MASK_SIZE"/>
+              c:identifier="PANGO_FONT_MASK_STRETCH"
+              glib:nick="stretch"/>
+      <member name="size"
+              value="32"
+              c:identifier="PANGO_FONT_MASK_SIZE"
+              glib:nick="size"/>
       <member name="gravity"
               value="64"
-              c:identifier="PANGO_FONT_MASK_GRAVITY"/>
+              c:identifier="PANGO_FONT_MASK_GRAVITY"
+              glib:nick="gravity"/>
     </bitfield>
     <record name="FontMetrics"
             c:type="PangoFontMetrics"
@@ -2881,7 +3132,11 @@
         <type name="guint" c:type="guint"/>
       </field>
     </record>
-    <enumeration name="Gravity" version="1.16" c:type="PangoGravity">
+    <enumeration name="Gravity"
+                 version="1.16"
+                 glib:type-name="PangoGravity"
+                 glib:get-type="pango_gravity_get_type"
+                 c:type="PangoGravity">
       <doc xml:whitespace="preserve">The #PangoGravity type represents the orientation of glyphs in a segment
 of text.  This is useful when rendering vertical text layouts.  In
 those situations, the layout is rotated using a non-identity PangoMatrix,
@@ -2892,13 +3147,141 @@
 pango_context_get_base_gravity().
 
 See also: #PangoGravityHint</doc>
-      <member name="south" value="0" c:identifier="PANGO_GRAVITY_SOUTH"/>
-      <member name="east" value="1" c:identifier="PANGO_GRAVITY_EAST"/>
-      <member name="north" value="2" c:identifier="PANGO_GRAVITY_NORTH"/>
-      <member name="west" value="3" c:identifier="PANGO_GRAVITY_WEST"/>
-      <member name="auto" value="4" c:identifier="PANGO_GRAVITY_AUTO"/>
+      <member name="south"
+              value="0"
+              c:identifier="PANGO_GRAVITY_SOUTH"
+              glib:nick="south"/>
+      <member name="east"
+              value="1"
+              c:identifier="PANGO_GRAVITY_EAST"
+              glib:nick="east"/>
+      <member name="north"
+              value="2"
+              c:identifier="PANGO_GRAVITY_NORTH"
+              glib:nick="north"/>
+      <member name="west"
+              value="3"
+              c:identifier="PANGO_GRAVITY_WEST"
+              glib:nick="west"/>
+      <member name="auto"
+              value="4"
+              c:identifier="PANGO_GRAVITY_AUTO"
+              glib:nick="auto"/>
+      <function name="get_for_matrix"
+                c:identifier="pango_gravity_get_for_matrix"
+                version="1.16">
+        <doc xml:whitespace="preserve">Finds the gravity that best matches the rotation component
+in a #PangoMatrix.
+
+%PANGO_GRAVITY_AUTO, or %PANGO_GRAVITY_SOUTH if @matrix is %NULL</doc>
+        <return-value transfer-ownership="none">
+          <doc xml:whitespace="preserve">the gravity of @matrix, which will never be</doc>
+          <type name="Gravity" c:type="PangoGravity"/>
+        </return-value>
+        <parameters>
+          <parameter name="matrix" transfer-ownership="none">
+            <doc xml:whitespace="preserve">a #PangoMatrix</doc>
+            <type name="Matrix" c:type="PangoMatrix*"/>
+          </parameter>
+        </parameters>
+      </function>
+      <function name="get_for_script"
+                c:identifier="pango_gravity_get_for_script"
+                version="1.16">
+        <doc xml:whitespace="preserve">Based on the script, base gravity, and hint, returns actual gravity
+to use in laying out a single #PangoItem.
+
+If @base_gravity is %PANGO_GRAVITY_AUTO, it is first replaced with the
+preferred gravity of @script.  To get the preferred gravity of a script,
+pass %PANGO_GRAVITY_AUTO and %PANGO_GRAVITY_HINT_STRONG in.
+
+with @script.</doc>
+        <return-value transfer-ownership="none">
+          <doc xml:whitespace="preserve">resolved gravity suitable to use for a run of text</doc>
+          <type name="Gravity" c:type="PangoGravity"/>
+        </return-value>
+        <parameters>
+          <parameter name="script" transfer-ownership="none">
+            <doc xml:whitespace="preserve">#PangoScript to query</doc>
+            <type name="Script" c:type="PangoScript"/>
+          </parameter>
+          <parameter name="base_gravity" transfer-ownership="none">
+            <doc xml:whitespace="preserve">base gravity of the paragraph</doc>
+            <type name="Gravity" c:type="PangoGravity"/>
+          </parameter>
+          <parameter name="hint" transfer-ownership="none">
+            <doc xml:whitespace="preserve">orientation hint</doc>
+            <type name="GravityHint" c:type="PangoGravityHint"/>
+          </parameter>
+        </parameters>
+      </function>
+      <function name="get_for_script_and_width"
+                c:identifier="pango_gravity_get_for_script_and_width"
+                version="1.26">
+        <doc xml:whitespace="preserve">Based on the script, East Asian width, base gravity, and hint,
+returns actual gravity to use in laying out a single character
+or #PangoItem.
+
+This function is similar to pango_gravity_get_for_script() except
+that this function makes a distinction between narrow/half-width and
+wide/full-width characters also.  Wide/full-width characters always
+stand &lt;emph&gt;upright&lt;/emph&gt;, that is, they always take the base gravity,
+whereas narrow/full-width characters are always rotated in vertical
+context.
+
+If @base_gravity is %PANGO_GRAVITY_AUTO, it is first replaced with the
+preferred gravity of @script.
+
+with @script and @wide.</doc>
+        <return-value transfer-ownership="none">
+          <doc xml:whitespace="preserve">resolved gravity suitable to use for a run of text</doc>
+          <type name="Gravity" c:type="PangoGravity"/>
+        </return-value>
+        <parameters>
+          <parameter name="script" transfer-ownership="none">
+            <doc xml:whitespace="preserve">#PangoScript to query</doc>
+            <type name="Script" c:type="PangoScript"/>
+          </parameter>
+          <parameter name="wide" transfer-ownership="none">
+            <doc xml:whitespace="preserve">%TRUE for wide characters as returned by g_unichar_iswide()</doc>
+            <type name="gboolean" c:type="gboolean"/>
+          </parameter>
+          <parameter name="base_gravity" transfer-ownership="none">
+            <doc xml:whitespace="preserve">base gravity of the paragraph</doc>
+            <type name="Gravity" c:type="PangoGravity"/>
+          </parameter>
+          <parameter name="hint" transfer-ownership="none">
+            <doc xml:whitespace="preserve">orientation hint</doc>
+            <type name="GravityHint" c:type="PangoGravityHint"/>
+          </parameter>
+        </parameters>
+      </function>
+      <function name="to_rotation"
+                c:identifier="pango_gravity_to_rotation"
+                version="1.16">
+        <doc xml:whitespace="preserve">Converts a #PangoGravity value to its natural rotation in radians.
+@gravity should not be %PANGO_GRAVITY_AUTO.
+
+Note that pango_matrix_rotate() takes angle in degrees, not radians.
+So, to call pango_matrix_rotate() with the output of this function
+you should multiply it by (180. / G_PI).</doc>
+        <return-value transfer-ownership="none">
+          <doc xml:whitespace="preserve">the rotation value corresponding to @gravity.</doc>
+          <type name="gdouble" c:type="double"/>
+        </return-value>
+        <parameters>
+          <parameter name="gravity" transfer-ownership="none">
+            <doc xml:whitespace="preserve">gravity to query</doc>
+            <type name="Gravity" c:type="PangoGravity"/>
+          </parameter>
+        </parameters>
+      </function>
     </enumeration>
-    <enumeration name="GravityHint" version="1.16" c:type="PangoGravityHint">
+    <enumeration name="GravityHint"
+                 version="1.16"
+                 glib:type-name="PangoGravityHint"
+                 glib:get-type="pango_gravity_hint_get_type"
+                 c:type="PangoGravityHint">
       <doc xml:whitespace="preserve">The #PangoGravityHint defines how horizontal scripts should behave in a
 vertical context.  That is, English excerpt in a vertical paragraph for
 example.
@@ -2906,11 +3289,16 @@
 See #PangoGravity.</doc>
       <member name="natural"
               value="0"
-              c:identifier="PANGO_GRAVITY_HINT_NATURAL"/>
+              c:identifier="PANGO_GRAVITY_HINT_NATURAL"
+              glib:nick="natural"/>
       <member name="strong"
               value="1"
-              c:identifier="PANGO_GRAVITY_HINT_STRONG"/>
-      <member name="line" value="2" c:identifier="PANGO_GRAVITY_HINT_LINE"/>
+              c:identifier="PANGO_GRAVITY_HINT_STRONG"
+              glib:nick="strong"/>
+      <member name="line"
+              value="2"
+              c:identifier="PANGO_GRAVITY_HINT_LINE"
+              glib:nick="line"/>
     </enumeration>
     <record name="Item"
             c:type="PangoItem"
@@ -5004,21 +5392,29 @@
         <type name="gint" c:type="int"/>
       </field>
     </record>
-    <enumeration name="RenderPart" version="1.8" c:type="PangoRenderPart">
+    <enumeration name="RenderPart"
+                 version="1.8"
+                 glib:type-name="PangoRenderPart"
+                 glib:get-type="pango_render_part_get_type"
+                 c:type="PangoRenderPart">
       <doc xml:whitespace="preserve">#PangoRenderPart defines different items to render for such
 purposes as setting colors.</doc>
       <member name="foreground"
               value="0"
-              c:identifier="PANGO_RENDER_PART_FOREGROUND"/>
+              c:identifier="PANGO_RENDER_PART_FOREGROUND"
+              glib:nick="foreground"/>
       <member name="background"
               value="1"
-              c:identifier="PANGO_RENDER_PART_BACKGROUND"/>
+              c:identifier="PANGO_RENDER_PART_BACKGROUND"
+              glib:nick="background"/>
       <member name="underline"
               value="2"
-              c:identifier="PANGO_RENDER_PART_UNDERLINE"/>
+              c:identifier="PANGO_RENDER_PART_UNDERLINE"
+              glib:nick="underline"/>
       <member name="strikethrough"
               value="3"
-              c:identifier="PANGO_RENDER_PART_STRIKETHROUGH"/>
+              c:identifier="PANGO_RENDER_PART_STRIKETHROUGH"
+              glib:nick="strikethrough"/>
     </enumeration>
     <class name="Renderer"
            c:symbol-prefix="renderer"
@@ -5979,118 +6375,393 @@
     <constant name="SCALE" value="1024" c:type="PANGO_SCALE">
       <type name="gint" c:type="gint"/>
     </constant>
-    <enumeration name="Script" c:type="PangoScript">
+    <enumeration name="Script"
+                 glib:type-name="PangoScript"
+                 glib:get-type="pango_script_get_type"
+                 c:type="PangoScript">
       <member name="invalid_code"
               value="-1"
-              c:identifier="PANGO_SCRIPT_INVALID_CODE"/>
-      <member name="common" value="0" c:identifier="PANGO_SCRIPT_COMMON"/>
+              c:identifier="PANGO_SCRIPT_INVALID_CODE"
+              glib:nick="invalid-code"/>
+      <member name="common"
+              value="0"
+              c:identifier="PANGO_SCRIPT_COMMON"
+              glib:nick="common"/>
       <member name="inherited"
               value="1"
-              c:identifier="PANGO_SCRIPT_INHERITED"/>
-      <member name="arabic" value="2" c:identifier="PANGO_SCRIPT_ARABIC"/>
-      <member name="armenian" value="3" c:identifier="PANGO_SCRIPT_ARMENIAN"/>
-      <member name="bengali" value="4" c:identifier="PANGO_SCRIPT_BENGALI"/>
-      <member name="bopomofo" value="5" c:identifier="PANGO_SCRIPT_BOPOMOFO"/>
-      <member name="cherokee" value="6" c:identifier="PANGO_SCRIPT_CHEROKEE"/>
-      <member name="coptic" value="7" c:identifier="PANGO_SCRIPT_COPTIC"/>
-      <member name="cyrillic" value="8" c:identifier="PANGO_SCRIPT_CYRILLIC"/>
-      <member name="deseret" value="9" c:identifier="PANGO_SCRIPT_DESERET"/>
+              c:identifier="PANGO_SCRIPT_INHERITED"
+              glib:nick="inherited"/>
+      <member name="arabic"
+              value="2"
+              c:identifier="PANGO_SCRIPT_ARABIC"
+              glib:nick="arabic"/>
+      <member name="armenian"
+              value="3"
+              c:identifier="PANGO_SCRIPT_ARMENIAN"
+              glib:nick="armenian"/>
+      <member name="bengali"
+              value="4"
+              c:identifier="PANGO_SCRIPT_BENGALI"
+              glib:nick="bengali"/>
+      <member name="bopomofo"
+              value="5"
+              c:identifier="PANGO_SCRIPT_BOPOMOFO"
+              glib:nick="bopomofo"/>
+      <member name="cherokee"
+              value="6"
+              c:identifier="PANGO_SCRIPT_CHEROKEE"
+              glib:nick="cherokee"/>
+      <member name="coptic"
+              value="7"
+              c:identifier="PANGO_SCRIPT_COPTIC"
+              glib:nick="coptic"/>
+      <member name="cyrillic"
+              value="8"
+              c:identifier="PANGO_SCRIPT_CYRILLIC"
+              glib:nick="cyrillic"/>
+      <member name="deseret"
+              value="9"
+              c:identifier="PANGO_SCRIPT_DESERET"
+              glib:nick="deseret"/>
       <member name="devanagari"
               value="10"
-              c:identifier="PANGO_SCRIPT_DEVANAGARI"/>
-      <member name="ethiopic" value="11" c:identifier="PANGO_SCRIPT_ETHIOPIC"/>
-      <member name="georgian" value="12" c:identifier="PANGO_SCRIPT_GEORGIAN"/>
-      <member name="gothic" value="13" c:identifier="PANGO_SCRIPT_GOTHIC"/>
-      <member name="greek" value="14" c:identifier="PANGO_SCRIPT_GREEK"/>
-      <member name="gujarati" value="15" c:identifier="PANGO_SCRIPT_GUJARATI"/>
-      <member name="gurmukhi" value="16" c:identifier="PANGO_SCRIPT_GURMUKHI"/>
-      <member name="han" value="17" c:identifier="PANGO_SCRIPT_HAN"/>
-      <member name="hangul" value="18" c:identifier="PANGO_SCRIPT_HANGUL"/>
-      <member name="hebrew" value="19" c:identifier="PANGO_SCRIPT_HEBREW"/>
-      <member name="hiragana" value="20" c:identifier="PANGO_SCRIPT_HIRAGANA"/>
-      <member name="kannada" value="21" c:identifier="PANGO_SCRIPT_KANNADA"/>
-      <member name="katakana" value="22" c:identifier="PANGO_SCRIPT_KATAKANA"/>
-      <member name="khmer" value="23" c:identifier="PANGO_SCRIPT_KHMER"/>
-      <member name="lao" value="24" c:identifier="PANGO_SCRIPT_LAO"/>
-      <member name="latin" value="25" c:identifier="PANGO_SCRIPT_LATIN"/>
+              c:identifier="PANGO_SCRIPT_DEVANAGARI"
+              glib:nick="devanagari"/>
+      <member name="ethiopic"
+              value="11"
+              c:identifier="PANGO_SCRIPT_ETHIOPIC"
+              glib:nick="ethiopic"/>
+      <member name="georgian"
+              value="12"
+              c:identifier="PANGO_SCRIPT_GEORGIAN"
+              glib:nick="georgian"/>
+      <member name="gothic"
+              value="13"
+              c:identifier="PANGO_SCRIPT_GOTHIC"
+              glib:nick="gothic"/>
+      <member name="greek"
+              value="14"
+              c:identifier="PANGO_SCRIPT_GREEK"
+              glib:nick="greek"/>
+      <member name="gujarati"
+              value="15"
+              c:identifier="PANGO_SCRIPT_GUJARATI"
+              glib:nick="gujarati"/>
+      <member name="gurmukhi"
+              value="16"
+              c:identifier="PANGO_SCRIPT_GURMUKHI"
+              glib:nick="gurmukhi"/>
+      <member name="han"
+              value="17"
+              c:identifier="PANGO_SCRIPT_HAN"
+              glib:nick="han"/>
+      <member name="hangul"
+              value="18"
+              c:identifier="PANGO_SCRIPT_HANGUL"
+              glib:nick="hangul"/>
+      <member name="hebrew"
+              value="19"
+              c:identifier="PANGO_SCRIPT_HEBREW"
+              glib:nick="hebrew"/>
+      <member name="hiragana"
+              value="20"
+              c:identifier="PANGO_SCRIPT_HIRAGANA"
+              glib:nick="hiragana"/>
+      <member name="kannada"
+              value="21"
+              c:identifier="PANGO_SCRIPT_KANNADA"
+              glib:nick="kannada"/>
+      <member name="katakana"
+              value="22"
+              c:identifier="PANGO_SCRIPT_KATAKANA"
+              glib:nick="katakana"/>
+      <member name="khmer"
+              value="23"
+              c:identifier="PANGO_SCRIPT_KHMER"
+              glib:nick="khmer"/>
+      <member name="lao"
+              value="24"
+              c:identifier="PANGO_SCRIPT_LAO"
+              glib:nick="lao"/>
+      <member name="latin"
+              value="25"
+              c:identifier="PANGO_SCRIPT_LATIN"
+              glib:nick="latin"/>
       <member name="malayalam"
               value="26"
-              c:identifier="PANGO_SCRIPT_MALAYALAM"/>
+              c:identifier="PANGO_SCRIPT_MALAYALAM"
+              glib:nick="malayalam"/>
       <member name="mongolian"
               value="27"
-              c:identifier="PANGO_SCRIPT_MONGOLIAN"/>
-      <member name="myanmar" value="28" c:identifier="PANGO_SCRIPT_MYANMAR"/>
-      <member name="ogham" value="29" c:identifier="PANGO_SCRIPT_OGHAM"/>
+              c:identifier="PANGO_SCRIPT_MONGOLIAN"
+              glib:nick="mongolian"/>
+      <member name="myanmar"
+              value="28"
+              c:identifier="PANGO_SCRIPT_MYANMAR"
+              glib:nick="myanmar"/>
+      <member name="ogham"
+              value="29"
+              c:identifier="PANGO_SCRIPT_OGHAM"
+              glib:nick="ogham"/>
       <member name="old_italic"
               value="30"
-              c:identifier="PANGO_SCRIPT_OLD_ITALIC"/>
-      <member name="oriya" value="31" c:identifier="PANGO_SCRIPT_ORIYA"/>
-      <member name="runic" value="32" c:identifier="PANGO_SCRIPT_RUNIC"/>
-      <member name="sinhala" value="33" c:identifier="PANGO_SCRIPT_SINHALA"/>
-      <member name="syriac" value="34" c:identifier="PANGO_SCRIPT_SYRIAC"/>
-      <member name="tamil" value="35" c:identifier="PANGO_SCRIPT_TAMIL"/>
-      <member name="telugu" value="36" c:identifier="PANGO_SCRIPT_TELUGU"/>
-      <member name="thaana" value="37" c:identifier="PANGO_SCRIPT_THAANA"/>
-      <member name="thai" value="38" c:identifier="PANGO_SCRIPT_THAI"/>
-      <member name="tibetan" value="39" c:identifier="PANGO_SCRIPT_TIBETAN"/>
+              c:identifier="PANGO_SCRIPT_OLD_ITALIC"
+              glib:nick="old-italic"/>
+      <member name="oriya"
+              value="31"
+              c:identifier="PANGO_SCRIPT_ORIYA"
+              glib:nick="oriya"/>
+      <member name="runic"
+              value="32"
+              c:identifier="PANGO_SCRIPT_RUNIC"
+              glib:nick="runic"/>
+      <member name="sinhala"
+              value="33"
+              c:identifier="PANGO_SCRIPT_SINHALA"
+              glib:nick="sinhala"/>
+      <member name="syriac"
+              value="34"
+              c:identifier="PANGO_SCRIPT_SYRIAC"
+              glib:nick="syriac"/>
+      <member name="tamil"
+              value="35"
+              c:identifier="PANGO_SCRIPT_TAMIL"
+              glib:nick="tamil"/>
+      <member name="telugu"
+              value="36"
+              c:identifier="PANGO_SCRIPT_TELUGU"
+              glib:nick="telugu"/>
+      <member name="thaana"
+              value="37"
+              c:identifier="PANGO_SCRIPT_THAANA"
+              glib:nick="thaana"/>
+      <member name="thai"
+              value="38"
+              c:identifier="PANGO_SCRIPT_THAI"
+              glib:nick="thai"/>
+      <member name="tibetan"
+              value="39"
+              c:identifier="PANGO_SCRIPT_TIBETAN"
+              glib:nick="tibetan"/>
       <member name="canadian_aboriginal"
               value="40"
-              c:identifier="PANGO_SCRIPT_CANADIAN_ABORIGINAL"/>
-      <member name="yi" value="41" c:identifier="PANGO_SCRIPT_YI"/>
-      <member name="tagalog" value="42" c:identifier="PANGO_SCRIPT_TAGALOG"/>
-      <member name="hanunoo" value="43" c:identifier="PANGO_SCRIPT_HANUNOO"/>
-      <member name="buhid" value="44" c:identifier="PANGO_SCRIPT_BUHID"/>
-      <member name="tagbanwa" value="45" c:identifier="PANGO_SCRIPT_TAGBANWA"/>
-      <member name="braille" value="46" c:identifier="PANGO_SCRIPT_BRAILLE"/>
-      <member name="cypriot" value="47" c:identifier="PANGO_SCRIPT_CYPRIOT"/>
-      <member name="limbu" value="48" c:identifier="PANGO_SCRIPT_LIMBU"/>
-      <member name="osmanya" value="49" c:identifier="PANGO_SCRIPT_OSMANYA"/>
-      <member name="shavian" value="50" c:identifier="PANGO_SCRIPT_SHAVIAN"/>
-      <member name="linear_b" value="51" c:identifier="PANGO_SCRIPT_LINEAR_B"/>
-      <member name="tai_le" value="52" c:identifier="PANGO_SCRIPT_TAI_LE"/>
-      <member name="ugaritic" value="53" c:identifier="PANGO_SCRIPT_UGARITIC"/>
+              c:identifier="PANGO_SCRIPT_CANADIAN_ABORIGINAL"
+              glib:nick="canadian-aboriginal"/>
+      <member name="yi"
+              value="41"
+              c:identifier="PANGO_SCRIPT_YI"
+              glib:nick="yi"/>
+      <member name="tagalog"
+              value="42"
+              c:identifier="PANGO_SCRIPT_TAGALOG"
+              glib:nick="tagalog"/>
+      <member name="hanunoo"
+              value="43"
+              c:identifier="PANGO_SCRIPT_HANUNOO"
+              glib:nick="hanunoo"/>
+      <member name="buhid"
+              value="44"
+              c:identifier="PANGO_SCRIPT_BUHID"
+              glib:nick="buhid"/>
+      <member name="tagbanwa"
+              value="45"
+              c:identifier="PANGO_SCRIPT_TAGBANWA"
+              glib:nick="tagbanwa"/>
+      <member name="braille"
+              value="46"
+              c:identifier="PANGO_SCRIPT_BRAILLE"
+              glib:nick="braille"/>
+      <member name="cypriot"
+              value="47"
+              c:identifier="PANGO_SCRIPT_CYPRIOT"
+              glib:nick="cypriot"/>
+      <member name="limbu"
+              value="48"
+              c:identifier="PANGO_SCRIPT_LIMBU"
+              glib:nick="limbu"/>
+      <member name="osmanya"
+              value="49"
+              c:identifier="PANGO_SCRIPT_OSMANYA"
+              glib:nick="osmanya"/>
+      <member name="shavian"
+              value="50"
+              c:identifier="PANGO_SCRIPT_SHAVIAN"
+              glib:nick="shavian"/>
+      <member name="linear_b"
+              value="51"
+              c:identifier="PANGO_SCRIPT_LINEAR_B"
+              glib:nick="linear-b"/>
+      <member name="tai_le"
+              value="52"
+              c:identifier="PANGO_SCRIPT_TAI_LE"
+              glib:nick="tai-le"/>
+      <member name="ugaritic"
+              value="53"
+              c:identifier="PANGO_SCRIPT_UGARITIC"
+              glib:nick="ugaritic"/>
       <member name="new_tai_lue"
               value="54"
-              c:identifier="PANGO_SCRIPT_NEW_TAI_LUE"/>
-      <member name="buginese" value="55" c:identifier="PANGO_SCRIPT_BUGINESE"/>
+              c:identifier="PANGO_SCRIPT_NEW_TAI_LUE"
+              glib:nick="new-tai-lue"/>
+      <member name="buginese"
+              value="55"
+              c:identifier="PANGO_SCRIPT_BUGINESE"
+              glib:nick="buginese"/>
       <member name="glagolitic"
               value="56"
-              c:identifier="PANGO_SCRIPT_GLAGOLITIC"/>
-      <member name="tifinagh" value="57" c:identifier="PANGO_SCRIPT_TIFINAGH"/>
+              c:identifier="PANGO_SCRIPT_GLAGOLITIC"
+              glib:nick="glagolitic"/>
+      <member name="tifinagh"
+              value="57"
+              c:identifier="PANGO_SCRIPT_TIFINAGH"
+              glib:nick="tifinagh"/>
       <member name="syloti_nagri"
               value="58"
-              c:identifier="PANGO_SCRIPT_SYLOTI_NAGRI"/>
+              c:identifier="PANGO_SCRIPT_SYLOTI_NAGRI"
+              glib:nick="syloti-nagri"/>
       <member name="old_persian"
               value="59"
-              c:identifier="PANGO_SCRIPT_OLD_PERSIAN"/>
+              c:identifier="PANGO_SCRIPT_OLD_PERSIAN"
+              glib:nick="old-persian"/>
       <member name="kharoshthi"
               value="60"
-              c:identifier="PANGO_SCRIPT_KHAROSHTHI"/>
-      <member name="unknown" value="61" c:identifier="PANGO_SCRIPT_UNKNOWN"/>
-      <member name="balinese" value="62" c:identifier="PANGO_SCRIPT_BALINESE"/>
+              c:identifier="PANGO_SCRIPT_KHAROSHTHI"
+              glib:nick="kharoshthi"/>
+      <member name="unknown"
+              value="61"
+              c:identifier="PANGO_SCRIPT_UNKNOWN"
+              glib:nick="unknown"/>
+      <member name="balinese"
+              value="62"
+              c:identifier="PANGO_SCRIPT_BALINESE"
+              glib:nick="balinese"/>
       <member name="cuneiform"
               value="63"
-              c:identifier="PANGO_SCRIPT_CUNEIFORM"/>
+              c:identifier="PANGO_SCRIPT_CUNEIFORM"
+              glib:nick="cuneiform"/>
       <member name="phoenician"
               value="64"
-              c:identifier="PANGO_SCRIPT_PHOENICIAN"/>
-      <member name="phags_pa" value="65" c:identifier="PANGO_SCRIPT_PHAGS_PA"/>
-      <member name="nko" value="66" c:identifier="PANGO_SCRIPT_NKO"/>
-      <member name="kayah_li" value="67" c:identifier="PANGO_SCRIPT_KAYAH_LI"/>
-      <member name="lepcha" value="68" c:identifier="PANGO_SCRIPT_LEPCHA"/>
-      <member name="rejang" value="69" c:identifier="PANGO_SCRIPT_REJANG"/>
+              c:identifier="PANGO_SCRIPT_PHOENICIAN"
+              glib:nick="phoenician"/>
+      <member name="phags_pa"
+              value="65"
+              c:identifier="PANGO_SCRIPT_PHAGS_PA"
+              glib:nick="phags-pa"/>
+      <member name="nko"
+              value="66"
+              c:identifier="PANGO_SCRIPT_NKO"
+              glib:nick="nko"/>
+      <member name="kayah_li"
+              value="67"
+              c:identifier="PANGO_SCRIPT_KAYAH_LI"
+              glib:nick="kayah-li"/>
+      <member name="lepcha"
+              value="68"
+              c:identifier="PANGO_SCRIPT_LEPCHA"
+              glib:nick="lepcha"/>
+      <member name="rejang"
+              value="69"
+              c:identifier="PANGO_SCRIPT_REJANG"
+              glib:nick="rejang"/>
       <member name="sundanese"
               value="70"
-              c:identifier="PANGO_SCRIPT_SUNDANESE"/>
+              c:identifier="PANGO_SCRIPT_SUNDANESE"
+              glib:nick="sundanese"/>
       <member name="saurashtra"
               value="71"
-              c:identifier="PANGO_SCRIPT_SAURASHTRA"/>
-      <member name="cham" value="72" c:identifier="PANGO_SCRIPT_CHAM"/>
-      <member name="ol_chiki" value="73" c:identifier="PANGO_SCRIPT_OL_CHIKI"/>
-      <member name="vai" value="74" c:identifier="PANGO_SCRIPT_VAI"/>
-      <member name="carian" value="75" c:identifier="PANGO_SCRIPT_CARIAN"/>
-      <member name="lycian" value="76" c:identifier="PANGO_SCRIPT_LYCIAN"/>
-      <member name="lydian" value="77" c:identifier="PANGO_SCRIPT_LYDIAN"/>
+              c:identifier="PANGO_SCRIPT_SAURASHTRA"
+              glib:nick="saurashtra"/>
+      <member name="cham"
+              value="72"
+              c:identifier="PANGO_SCRIPT_CHAM"
+              glib:nick="cham"/>
+      <member name="ol_chiki"
+              value="73"
+              c:identifier="PANGO_SCRIPT_OL_CHIKI"
+              glib:nick="ol-chiki"/>
+      <member name="vai"
+              value="74"
+              c:identifier="PANGO_SCRIPT_VAI"
+              glib:nick="vai"/>
+      <member name="carian"
+              value="75"
+              c:identifier="PANGO_SCRIPT_CARIAN"
+              glib:nick="carian"/>
+      <member name="lycian"
+              value="76"
+              c:identifier="PANGO_SCRIPT_LYCIAN"
+              glib:nick="lycian"/>
+      <member name="lydian"
+              value="77"
+              c:identifier="PANGO_SCRIPT_LYDIAN"
+              glib:nick="lydian"/>
+      <function name="for_unichar"
+                c:identifier="pango_script_for_unichar"
+                version="1.4">
+        <doc xml:whitespace="preserve">Looks up the #PangoScript for a particular character (as defined by
+Unicode Standard Annex #24). No check is made for @ch being a
+valid Unicode character; if you pass in invalid character, the
+result is undefined.
+
+As of Pango 1.18, this function simply returns the return value of
+g_unichar_get_script().</doc>
+        <return-value transfer-ownership="none">
+          <doc xml:whitespace="preserve">the #PangoScript for the character.</doc>
+          <type name="Script" c:type="PangoScript"/>
+        </return-value>
+        <parameters>
+          <parameter name="ch" transfer-ownership="none">
+            <doc xml:whitespace="preserve">a Unicode character</doc>
+            <type name="gunichar" c:type="gunichar"/>
+          </parameter>
+        </parameters>
+      </function>
+      <function name="get_sample_language"
+                c:identifier="pango_script_get_sample_language"
+                version="1.4">
+        <doc xml:whitespace="preserve">Given a script, finds a language tag that is reasonably
+representative of that script. This will usually be the
+most widely spoken or used language written in that script:
+for instance, the sample language for %PANGO_SCRIPT_CYRILLIC
+is &lt;literal&gt;ru&lt;/literal&gt; (Russian), the sample language
+for %PANGO_SCRIPT_ARABIC is &lt;literal&gt;ar&lt;/literal&gt;.
+
+For some
+scripts, no sample language will be returned because there
+is no language that is sufficiently representative. The best
+example of this is %PANGO_SCRIPT_HAN, where various different
+variants of written Chinese, Japanese, and Korean all use
+significantly different sets of Han characters and forms
+of shared characters. No sample language can be provided
+for many historical scripts as well.
+
+As of 1.18, this function checks the environment variables
+PANGO_LANGUAGE and LANGUAGE (checked in that order) first.
+If one of them is set, it is parsed as a list of language tags
+separated by colons or other separators.  This function
+will return the first language in the parsed list that Pango
+believes may use @script for writing.  This last predicate
+is tested using pango_language_includes_script().  This can
+be used to control Pango's font selection for non-primary
+languages.  For example, a PANGO_LANGUAGE enviroment variable
+set to "en:fa" makes Pango choose fonts suitable for Persian (fa) 
+instead of Arabic (ar) when a segment of Arabic text is found
+in an otherwise non-Arabic text.  The same trick can be used to
+choose a default language for %PANGO_SCRIPT_HAN when setting
+context language is not feasible.
+
+of the script, or %NULL if no such language exists.</doc>
+        <return-value transfer-ownership="full">
+          <doc xml:whitespace="preserve">a #PangoLanguage that is representative</doc>
+          <type name="Language" c:type="PangoLanguage*"/>
+        </return-value>
+        <parameters>
+          <parameter name="script" transfer-ownership="none">
+            <doc xml:whitespace="preserve">a #PangoScript</doc>
+            <type name="Script" c:type="PangoScript"/>
+          </parameter>
+        </parameters>
+      </function>
     </enumeration>
     <record name="ScriptIter" c:type="PangoScriptIter" disguised="1">
       <doc xml:whitespace="preserve">A #PangoScriptIter is used to iterate through a string
@@ -6174,39 +6845,73 @@
         </parameters>
       </function>
     </record>
-    <enumeration name="Stretch" c:type="PangoStretch">
+    <enumeration name="Stretch"
+                 glib:type-name="PangoStretch"
+                 glib:get-type="pango_stretch_get_type"
+                 c:type="PangoStretch">
       <member name="ultra_condensed"
               value="0"
-              c:identifier="PANGO_STRETCH_ULTRA_CONDENSED"/>
+              c:identifier="PANGO_STRETCH_ULTRA_CONDENSED"
+              glib:nick="ultra-condensed"/>
       <member name="extra_condensed"
               value="1"
-              c:identifier="PANGO_STRETCH_EXTRA_CONDENSED"/>
+              c:identifier="PANGO_STRETCH_EXTRA_CONDENSED"
+              glib:nick="extra-condensed"/>
       <member name="condensed"
               value="2"
-              c:identifier="PANGO_STRETCH_CONDENSED"/>
+              c:identifier="PANGO_STRETCH_CONDENSED"
+              glib:nick="condensed"/>
       <member name="semi_condensed"
               value="3"
-              c:identifier="PANGO_STRETCH_SEMI_CONDENSED"/>
-      <member name="normal" value="4" c:identifier="PANGO_STRETCH_NORMAL"/>
+              c:identifier="PANGO_STRETCH_SEMI_CONDENSED"
+              glib:nick="semi-condensed"/>
+      <member name="normal"
+              value="4"
+              c:identifier="PANGO_STRETCH_NORMAL"
+              glib:nick="normal"/>
       <member name="semi_expanded"
               value="5"
-              c:identifier="PANGO_STRETCH_SEMI_EXPANDED"/>
-      <member name="expanded" value="6" c:identifier="PANGO_STRETCH_EXPANDED"/>
+              c:identifier="PANGO_STRETCH_SEMI_EXPANDED"
+              glib:nick="semi-expanded"/>
+      <member name="expanded"
+              value="6"
+              c:identifier="PANGO_STRETCH_EXPANDED"
+              glib:nick="expanded"/>
       <member name="extra_expanded"
               value="7"
-              c:identifier="PANGO_STRETCH_EXTRA_EXPANDED"/>
+              c:identifier="PANGO_STRETCH_EXTRA_EXPANDED"
+              glib:nick="extra-expanded"/>
       <member name="ultra_expanded"
               value="8"
-              c:identifier="PANGO_STRETCH_ULTRA_EXPANDED"/>
+              c:identifier="PANGO_STRETCH_ULTRA_EXPANDED"
+              glib:nick="ultra-expanded"/>
     </enumeration>
-    <enumeration name="Style" c:type="PangoStyle">
+    <enumeration name="Style"
+                 glib:type-name="PangoStyle"
+                 glib:get-type="pango_style_get_type"
+                 c:type="PangoStyle">
       <doc xml:whitespace="preserve">An enumeration specifying the various slant styles possible for a font.</doc>
-      <member name="normal" value="0" c:identifier="PANGO_STYLE_NORMAL"/>
-      <member name="oblique" value="1" c:identifier="PANGO_STYLE_OBLIQUE"/>
-      <member name="italic" value="2" c:identifier="PANGO_STYLE_ITALIC"/>
+      <member name="normal"
+              value="0"
+              c:identifier="PANGO_STYLE_NORMAL"
+              glib:nick="normal"/>
+      <member name="oblique"
+              value="1"
+              c:identifier="PANGO_STYLE_OBLIQUE"
+              glib:nick="oblique"/>
+      <member name="italic"
+              value="2"
+              c:identifier="PANGO_STYLE_ITALIC"
+              glib:nick="italic"/>
     </enumeration>
-    <enumeration name="TabAlign" c:type="PangoTabAlign">
-      <member name="tab_left" value="0" c:identifier="PANGO_TAB_LEFT"/>
+    <enumeration name="TabAlign"
+                 glib:type-name="PangoTabAlign"
+                 glib:get-type="pango_tab_align_get_type"
+                 c:type="PangoTabAlign">
+      <member name="left"
+              value="0"
+              c:identifier="PANGO_TAB_LEFT"
+              glib:nick="left"/>
     </enumeration>
     <record name="TabArray"
             c:type="PangoTabArray"
@@ -6401,44 +7106,109 @@
               c:type="PANGO_UNKNOWN_GLYPH_WIDTH">
       <type name="gint" c:type="gint"/>
     </constant>
-    <enumeration name="Underline" c:type="PangoUnderline">
-      <member name="none" value="0" c:identifier="PANGO_UNDERLINE_NONE"/>
-      <member name="single" value="1" c:identifier="PANGO_UNDERLINE_SINGLE"/>
-      <member name="double" value="2" c:identifier="PANGO_UNDERLINE_DOUBLE"/>
-      <member name="low" value="3" c:identifier="PANGO_UNDERLINE_LOW"/>
-      <member name="error" value="4" c:identifier="PANGO_UNDERLINE_ERROR"/>
+    <enumeration name="Underline"
+                 glib:type-name="PangoUnderline"
+                 glib:get-type="pango_underline_get_type"
+                 c:type="PangoUnderline">
+      <member name="none"
+              value="0"
+              c:identifier="PANGO_UNDERLINE_NONE"
+              glib:nick="none"/>
+      <member name="single"
+              value="1"
+              c:identifier="PANGO_UNDERLINE_SINGLE"
+              glib:nick="single"/>
+      <member name="double"
+              value="2"
+              c:identifier="PANGO_UNDERLINE_DOUBLE"
+              glib:nick="double"/>
+      <member name="low"
+              value="3"
+              c:identifier="PANGO_UNDERLINE_LOW"
+              glib:nick="low"/>
+      <member name="error"
+              value="4"
+              c:identifier="PANGO_UNDERLINE_ERROR"
+              glib:nick="error"/>
     </enumeration>
-    <enumeration name="Variant" c:type="PangoVariant">
-      <member name="normal" value="0" c:identifier="PANGO_VARIANT_NORMAL"/>
+    <enumeration name="Variant"
+                 glib:type-name="PangoVariant"
+                 glib:get-type="pango_variant_get_type"
+                 c:type="PangoVariant">
+      <member name="normal"
+              value="0"
+              c:identifier="PANGO_VARIANT_NORMAL"
+              glib:nick="normal"/>
       <member name="small_caps"
               value="1"
-              c:identifier="PANGO_VARIANT_SMALL_CAPS"/>
+              c:identifier="PANGO_VARIANT_SMALL_CAPS"
+              glib:nick="small-caps"/>
     </enumeration>
-    <enumeration name="Weight" c:type="PangoWeight">
-      <member name="thin" value="100" c:identifier="PANGO_WEIGHT_THIN"/>
+    <enumeration name="Weight"
+                 glib:type-name="PangoWeight"
+                 glib:get-type="pango_weight_get_type"
+                 c:type="PangoWeight">
+      <member name="thin"
+              value="100"
+              c:identifier="PANGO_WEIGHT_THIN"
+              glib:nick="thin"/>
       <member name="ultralight"
               value="200"
-              c:identifier="PANGO_WEIGHT_ULTRALIGHT"/>
-      <member name="light" value="300" c:identifier="PANGO_WEIGHT_LIGHT"/>
-      <member name="book" value="380" c:identifier="PANGO_WEIGHT_BOOK"/>
-      <member name="normal" value="400" c:identifier="PANGO_WEIGHT_NORMAL"/>
-      <member name="medium" value="500" c:identifier="PANGO_WEIGHT_MEDIUM"/>
+              c:identifier="PANGO_WEIGHT_ULTRALIGHT"
+              glib:nick="ultralight"/>
+      <member name="light"
+              value="300"
+              c:identifier="PANGO_WEIGHT_LIGHT"
+              glib:nick="light"/>
+      <member name="book"
+              value="380"
+              c:identifier="PANGO_WEIGHT_BOOK"
+              glib:nick="book"/>
+      <member name="normal"
+              value="400"
+              c:identifier="PANGO_WEIGHT_NORMAL"
+              glib:nick="normal"/>
+      <member name="medium"
+              value="500"
+              c:identifier="PANGO_WEIGHT_MEDIUM"
+              glib:nick="medium"/>
       <member name="semibold"
               value="600"
-              c:identifier="PANGO_WEIGHT_SEMIBOLD"/>
-      <member name="bold" value="700" c:identifier="PANGO_WEIGHT_BOLD"/>
+              c:identifier="PANGO_WEIGHT_SEMIBOLD"
+              glib:nick="semibold"/>
+      <member name="bold"
+              value="700"
+              c:identifier="PANGO_WEIGHT_BOLD"
+              glib:nick="bold"/>
       <member name="ultrabold"
               value="800"
-              c:identifier="PANGO_WEIGHT_ULTRABOLD"/>
-      <member name="heavy" value="900" c:identifier="PANGO_WEIGHT_HEAVY"/>
+              c:identifier="PANGO_WEIGHT_ULTRABOLD"
+              glib:nick="ultrabold"/>
+      <member name="heavy"
+              value="900"
+              c:identifier="PANGO_WEIGHT_HEAVY"
+              glib:nick="heavy"/>
       <member name="ultraheavy"
               value="1000"
-              c:identifier="PANGO_WEIGHT_ULTRAHEAVY"/>
+              c:identifier="PANGO_WEIGHT_ULTRAHEAVY"
+              glib:nick="ultraheavy"/>
     </enumeration>
-    <enumeration name="WrapMode" c:type="PangoWrapMode">
-      <member name="word" value="0" c:identifier="PANGO_WRAP_WORD"/>
-      <member name="char" value="1" c:identifier="PANGO_WRAP_CHAR"/>
-      <member name="word_char" value="2" c:identifier="PANGO_WRAP_WORD_CHAR"/>
+    <enumeration name="WrapMode"
+                 glib:type-name="PangoWrapMode"
+                 glib:get-type="pango_wrap_mode_get_type"
+                 c:type="PangoWrapMode">
+      <member name="word"
+              value="0"
+              c:identifier="PANGO_WRAP_WORD"
+              glib:nick="word"/>
+      <member name="char"
+              value="1"
+              c:identifier="PANGO_WRAP_CHAR"
+              glib:nick="char"/>
+      <member name="word_char"
+              value="2"
+              c:identifier="PANGO_WRAP_WORD_CHAR"
+              glib:nick="word-char"/>
     </enumeration>
     <record name="_ScriptForLang" c:type="_PangoScriptForLang">
       <field name="lang" writable="1">
@@ -6712,6 +7482,7 @@
     </function>
     <function name="attr_type_get_name"
               c:identifier="pango_attr_type_get_name"
+              moved-to="AttrType.get_name"
               version="1.22">
       <doc xml:whitespace="preserve">Fetches the attribute type name passed in when registering the type using
 pango_attr_type_register().
@@ -6732,7 +7503,8 @@
       </parameters>
     </function>
     <function name="attr_type_register"
-              c:identifier="pango_attr_type_register">
+              c:identifier="pango_attr_type_register"
+              moved-to="AttrType.register">
       <doc xml:whitespace="preserve">Allocate a new attribute type ID.  The attribute type name can be accessed
 later by using pango_attr_type_get_name().</doc>
       <return-value transfer-ownership="none">
@@ -6827,6 +7599,7 @@
     </function>
     <function name="bidi_type_for_unichar"
               c:identifier="pango_bidi_type_for_unichar"
+              moved-to="BidiType.for_unichar"
               version="1.22">
       <doc xml:whitespace="preserve">Determines the normative bidirectional character type of a
 character, as specified in the Unicode Character Database.
@@ -7054,6 +7827,7 @@
     </function>
     <function name="gravity_get_for_matrix"
               c:identifier="pango_gravity_get_for_matrix"
+              moved-to="Gravity.get_for_matrix"
               version="1.16">
       <doc xml:whitespace="preserve">Finds the gravity that best matches the rotation component
 in a #PangoMatrix.
@@ -7072,6 +7846,7 @@
     </function>
     <function name="gravity_get_for_script"
               c:identifier="pango_gravity_get_for_script"
+              moved-to="Gravity.get_for_script"
               version="1.16">
       <doc xml:whitespace="preserve">Based on the script, base gravity, and hint, returns actual gravity
 to use in laying out a single #PangoItem.
@@ -7102,6 +7877,7 @@
     </function>
     <function name="gravity_get_for_script_and_width"
               c:identifier="pango_gravity_get_for_script_and_width"
+              moved-to="Gravity.get_for_script_and_width"
               version="1.26">
       <doc xml:whitespace="preserve">Based on the script, East Asian width, base gravity, and hint,
 returns actual gravity to use in laying out a single character
@@ -7143,6 +7919,7 @@
     </function>
     <function name="gravity_to_rotation"
               c:identifier="pango_gravity_to_rotation"
+              moved-to="Gravity.to_rotation"
               version="1.16">
       <doc xml:whitespace="preserve">Converts a #PangoGravity value to its natural rotation in radians.
 @gravity should not be %PANGO_GRAVITY_AUTO.
@@ -7732,6 +8509,7 @@
     </function>
     <function name="script_for_unichar"
               c:identifier="pango_script_for_unichar"
+              moved-to="Script.for_unichar"
               version="1.4">
       <doc xml:whitespace="preserve">Looks up the #PangoScript for a particular character (as defined by
 Unicode Standard Annex #24). No check is made for @ch being a
@@ -7753,6 +8531,7 @@
     </function>
     <function name="script_get_sample_language"
               c:identifier="pango_script_get_sample_language"
+              moved-to="Script.get_sample_language"
               version="1.4">
       <doc xml:whitespace="preserve">Given a script, finds a language tag that is reasonably
 representative of that script. This will usually be the
