# phpman > man > Locale::Maketext::Extract::Plugin::YAML(3pm)

## NAME
    [Locale::Maketext::Extract::Plugin::YAML](https://www.chedong.com/phpMan.php/perldoc/Locale%3A%3AMaketext%3A%3AExtract%3A%3APlugin%3A%3AYAML/markdown) - YAML format parser

## VERSION
    version 1.00

## SYNOPSIS
        $plugin = [Locale::Maketext::Extract::Plugin::YAML](https://www.chedong.com/phpMan.php/perldoc/Locale%3A%3AMaketext%3A%3AExtract%3A%3APlugin%3A%3AYAML/markdown)->new(
            $lexicon            # A [Locale::Maketext::Extract](https://www.chedong.com/phpMan.php/perldoc/Locale%3A%3AMaketext%3A%3AExtract/markdown) object
            @file_types         # Optionally specify a list of recognised file types
        )

        $plugin->extract($filename,$filecontents);

## DESCRIPTION
    Extracts strings to localise from YAML files.

## SHORT PLUGIN NAME
        yaml

## VALID FORMATS
    Valid formats are:

    *
            key: _"string"

    *
            key: _'string'

    *
            key: _'string with embedded 'quotes''

    *
            key: |-
                 _'my folded
                 string
                 to translate'

        Note, the left hand side of the folded string must line up with the "_", otherwise YAML adds
        spaces at the beginning of each line.

    *
            key: |-
                 _'my block
                 string
                 to translate
                 '
        Note, you must use the trailing C<-> so that YAMl doesn't add a carriage
        return after your final quote.

## KNOWN FILE TYPES
    .yaml
    .yml
    .conf

## REQUIRES
    YAML

## NOTES
    The docs for the YAML module describes it as alpha code. It is not as tolerant of errors as
    [YAML::Syck](https://www.chedong.com/phpMan.php/perldoc/YAML%3A%3ASyck/markdown). However, because it is pure Perl, it is easy to hook into.

    I have seen it enter endless loops, so if xgettext.pl hangs, try running it again with
    "--verbose --verbose" (twice) enabled, so that you can see if the fault lies with YAML. If it
    does, either correct the YAML source file, or use the file_types to exclude that file.

## SEE ALSO
    xgettext.pl
        for extracting translatable strings from common template systems and perl source files.

    YAML
    [Locale::Maketext::Lexicon](https://www.chedong.com/phpMan.php/perldoc/Locale%3A%3AMaketext%3A%3ALexicon/markdown)
    [Locale::Maketext::Extract::Plugin::Base](https://www.chedong.com/phpMan.php/perldoc/Locale%3A%3AMaketext%3A%3AExtract%3A%3APlugin%3A%3ABase/markdown)
    [Locale::Maketext::Extract::Plugin::FormFu](https://www.chedong.com/phpMan.php/perldoc/Locale%3A%3AMaketext%3A%3AExtract%3A%3APlugin%3A%3AFormFu/markdown)
    [Locale::Maketext::Extract::Plugin::Perl](https://www.chedong.com/phpMan.php/perldoc/Locale%3A%3AMaketext%3A%3AExtract%3A%3APlugin%3A%3APerl/markdown)
    [Locale::Maketext::Extract::Plugin::TT2](https://www.chedong.com/phpMan.php/perldoc/Locale%3A%3AMaketext%3A%3AExtract%3A%3APlugin%3A%3ATT2/markdown)
    [Locale::Maketext::Extract::Plugin::Mason](https://www.chedong.com/phpMan.php/perldoc/Locale%3A%3AMaketext%3A%3AExtract%3A%3APlugin%3A%3AMason/markdown)
    [Locale::Maketext::Extract::Plugin::TextTemplate](https://www.chedong.com/phpMan.php/perldoc/Locale%3A%3AMaketext%3A%3AExtract%3A%3APlugin%3A%3ATextTemplate/markdown)
    [Locale::Maketext::Extract::Plugin::Generic](https://www.chedong.com/phpMan.php/perldoc/Locale%3A%3AMaketext%3A%3AExtract%3A%3APlugin%3A%3AGeneric/markdown)

## AUTHORS
    Clinton Gormley <<clint@traveljury.com>>

## COPYRIGHT
    Copyright 2002-2013 by Audrey Tang <<cpan@audreyt.org>>.

    This software is released under the MIT license cited below.

  The "MIT" License
    Permission is hereby granted, free of charge, to any person obtaining a copy of this software
    and associated documentation files (the "Software"), to deal in the Software without
    restriction, including without limitation the rights to use, copy, modify, merge, publish,
    distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the
    Software is furnished to do so, subject to the following conditions:

    The above copyright notice and this permission notice shall be included in all copies or
    substantial portions of the Software.

    THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING
    BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
    NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
    DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
    OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

## AUTHORS
    *   Clinton Gormley <<drtech@cpan.org>>

    *   Audrey Tang <<cpan@audreyt.org>>

## COPYRIGHT AND LICENSE
    This software is Copyright (c) 2014 by Audrey Tang.

    This is free software, licensed under:

      The MIT (X11) License

