forked from vitahall/Text-FrontMatter-YAML
-
Notifications
You must be signed in to change notification settings - Fork 0
/
README
87 lines (57 loc) · 2.18 KB
/
README
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
Text::FrontMatter::YAML - read the "YAML front matter" format
DESCRIPTION
Text::FrontMatter::YAML opens files with so-called "YAML front matter",
such as are found on GitHub (and used in Jekyll, and various other
programs). It's a way of associating metadata with a file by marking off
the metadata into a YAML section at the top of the file.
The YAML front matter can be retrieved as a hash or as a string, and the
file data below can be retrieved as a string, or via a filehandle.
Access is read-only.
SYNOPSIS
use File::Slurp;
use Text::FrontMatter::YAML;
# READING
my $text_with_frontmatter = read_file("filename.md");
my $tfm = Text::FrontMatter::YAML->new(
document_string => $text_with_frontmatter
);
my $hashref = $tfm->frontmatter_hashref;
my $mumble = $hashref->{'mumble'};
my $data = $tfm->data_text;
# or also
my $fh = $tfm->data_fh();
while (defined(my $line = <$fh>)) {
# do something with the file data
}
# WRITING
my $tfm = Text::FrontMatter::YAML->new(
frontmatter_hashref => {
title => 'The first sentence of the "Gettysburg Address"',
author => 'Abraham Lincoln',
date => 18631119
},
data_text => "Four score and seven years ago...",
);
write_file("gettysburg.md", $tfm->document_string);
INSTALLATION
To install this module, run the following commands:
perl Makefile.PL
make
make test
make install
FUTURE DIRECTIONS
Text::FrontMatter::YAML uses YAML::Tiny. Perhaps it would be useful to
support more than one YAML module. Perhaps that would be more trouble
that it's worth. Thoughts?
SUPPORT AND DOCUMENTATION
After installing, you can find documentation for this module with the
perldoc command.
perldoc Text::FrontMatter::YAML
Send questions, feature requests, and bug reports to me at
C<ahall@vitaphone.net>. Please include C<Text::FrontMatter::YAML> in the
subject line of the e-mail. Thanks!
LICENSE AND COPYRIGHT
Copyright 2013-2019 Aaron Hall.
This library is free software; you can redistribute it and/or modify
it under the same terms as Perl 5.10.1.
See http://dev.perl.org/licenses/ for more information.