.\" -*- mode: troff; coding: utf-8 -*- .\" Automatically generated by Pod::Man v6.0.2 (Pod::Simple 3.48) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" \*(C` and \*(C' are quotes in nroff, nothing in troff, for use with C<>. .ie n \{\ . ds C` "" . ds C' "" 'br\} .el\{\ . ds C` . ds C' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is >0, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .de IX .. .nr rF 0 .if \n(.g .if rF .nr rF 1 .if (\n(rF:(\n(.g==0)) \{\ . if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{\ . nr % 0 . nr F 2 . \} . \} .\} .rr rF .\" .\" Required to disable full justification in groff 1.23.0. .if n .ds AD l .\" ======================================================================== .\" .IX Title "Dist::Zilla::Plugin::GenerateFile 3" .TH Dist::Zilla::Plugin::GenerateFile 3 2026-09-27 "perl v5.44.0" "User Contributed Perl Documentation" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH NAME Dist::Zilla::Plugin::GenerateFile \- build a custom file from only the plugin configuration .SH VERSION .IX Header "VERSION" version 6.040 .SH SYNOPSIS .IX Header "SYNOPSIS" In your \fIdist.ini\fR: .PP .Vb 9 \& [GenerateFile] \& filename = todo/{{ $dist\->name }}\-master\-plan.txt \& name_is_template = 1 \& content_is_template = 1 \& content = # Outlines the plan for world domination by {{$dist\->name}} \& content = \& content = Item 1: Think of an idea! \& content = Item 2: ? \& content = Item 3: Profit! .Ve .SH DESCRIPTION .IX Header "DESCRIPTION" This plugin adds a file to the distribution. .PP You can specify the content, as a sequence of lines, in your configuration. The specified filename and content might be literals or might be Text::Template templates. .SS "Templating of the content" .IX Subsection "Templating of the content" If you provide \f(CW\*(C`content_is_template\*(C'\fR (or \f(CW\*(C`is_template\*(C'\fR) parameter of \f(CW"1"\fR, the content will be run through Text::Template. The variables \f(CW$plugin\fR and \&\f(CW$dist\fR will be provided, set to the [GenerateFile] plugin and the Dist::Zilla object respectively. .PP If you provide a \f(CW\*(C`name_is_template\*(C'\fR parameter of "1", the filename will be run through Text::Template. The variables \f(CW$plugin\fR and \f(CW$dist\fR will be provided, set to the [GenerateFile] plugin and the Dist::Zilla object respectively. .SH "PERL VERSION" .IX Header "PERL VERSION" This module should work on any version of perl still receiving updates from the Perl 5 Porters. This means it should work on any version of perl released in the last two to three years. (That is, if the most recently released version is v5.40, then this module should work on both v5.40 and v5.38.) .PP Although it may work on older versions of perl, no guarantee is made that the minimum required version will not be increased. The version may be increased for any reason, and there is no promise that patches will be accepted to lower the minimum required perl. .SH ATTRIBUTES .IX Header "ATTRIBUTES" .SS filename .IX Subsection "filename" This attribute names the file you want to generate. It is required. .SS content .IX Subsection "content" The \f(CW\*(C`content\*(C'\fR attribute is an arrayref of lines that will be joined together with newlines to form the file content. .SS "content_is_template, is_template" .IX Subsection "content_is_template, is_template" This attribute is a bool indicating whether or not the content should be treated as a Text::Template template. By default, it is false. .SS name_is_template .IX Subsection "name_is_template" This attribute is a bool indicating whether or not the filename should be treated as a Text::Template template. By default, it is false. .SH AUTHOR .IX Header "AUTHOR" Ricardo SIGNES 😏 .SH "COPYRIGHT AND LICENSE" .IX Header "COPYRIGHT AND LICENSE" This software is copyright (c) 2026 by Ricardo SIGNES. .PP This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.