Beefy Boxes and Bandwidth Generously Provided by pair Networks
go ahead... be a heretic
 
PerlMonks  

Re: Here documents in blocks

by tybalt89 (Monsignor)
on Dec 19, 2020 at 19:58 UTC ( [id://11125465]=note: print w/replies, xml ) Need Help??


in reply to Here documents in blocks

Something like this ?

#!/usr/bin/perl use strict; # https://perlmonks.org/?node_id=11125451 use warnings; sub indent { my $text = shift; $text =~ s/^\s//gm until $text =~ /^\S/m; return $text; } if (1) { print indent(<<""); Here is some test text with plenty of space and even an indented line at the start }

Outputs:

Here is some test text with plenty of space and even an indented line at the start

Replies are listed 'Best First'.
Re^2: Here documents in blocks
by LanX (Saint) on Dec 19, 2020 at 20:13 UTC
    > print indent(<<"");

    The empty line marker is dangerous, at least if your editor doesn't highlight trailing white-space (mine does)

    Cheers Rolf
    (addicted to the Perl Programming Language :)
    Wikisyntax for the Monastery

      It's just a tradeoff between danger and beauty :)

      Personally I put the HERE-IS block at the left hand edge, and skip the whole "indent" thing.
      (A what (indent) you see, is what you get.)

        > Personally I put the HERE-IS block at the left hand edge, and skip the whole "indent" thing. (A what (indent) you see, is what you get.)

        me too, mostly at the end of a sub.

        If I need a template, then it'll normally also merit a sub.

        sub html_admin { my($user_number)=@_; my $HTML_restricted = ""; $HTML_restricted = <<"__HTML__" if $user_number == 20; <tr> <td class="someClass">Restricted</td> </tr> __HTML__ return << "__HTML__"; <table> <tr> <td class="someclass" style="text-align:center">Some Content +</td> </tr> $HTML_restricted </table> __HTML__ }

        Cheers Rolf
        (addicted to the Perl Programming Language :)
        Wikisyntax for the Monastery

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://11125465]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others perusing the Monastery: (6)
As of 2024-03-28 11:18 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found